š¤ PR generated for branch `fix/cyrillic-fonts-dev-certs-and-page-head`.
### Changes Summary
- **Fonts**: Add Cyrillic glyph subsets for Lato, EB Garamond, and Fira
Code.
- **Dev**: Support remote Root CA and encrypted dev CA key in
`.env.dev`.
- **UI & Kits**: Add size variant to `Breadcrumbs` component and enlarge
`PageHead` breadcrumbs with tuned collapse scroll threshold.
- **ESLint**: Add `no-hanging-particles` i18n & markdown typography rule
with auto-fixer.
- **Content & i18n**: Apply `ru-text` editorial and typography polish
(em dashes, number ranges, Ā«ŃĀ» restoration, non-breaking spaces) across
`services/www` and `services/docs`.
2.8 KiB
title, description, weight
| title | description | weight |
|---|---|---|
| CLI reference | TheĀ apex launcher: listing, dispatch, help, andĀ exit codes. | 31 |
TheĀ launcher isĀ aĀ single stdlib-Python script, commons/apex (onĀ PATH after init.sh). Everything itĀ does targets theĀ local checkoutĀ ā noĀ node argument exists.
Invocation forms
| Command | Behavior |
|---|---|
apex orĀ apex --help |
List every available action withĀ its summary; exit 0. |
apex <group>/<action> [args...] |
Dispatch one action. |
apex <group>/<action> --help |
Print theĀ action's argparse help generated fromĀ its METADATA; exit 0. |
TheĀ listing tags each entry withĀ its overlay sourceĀ ā noĀ tag (commons), (local), (local override)Ā ā andĀ appends [DISABLED: reason] where aĀ module declares DISABLED. Listing uses static ast scanning, soĀ noĀ action code executes.
Layout andĀ path resolution
AtĀ startup theĀ launcher decides which ofĀ two layouts itĀ isĀ in:
- Node checkoutĀ ā theĀ launcher lives inĀ aĀ directory named
commons/whose parent containsnode.env. TheĀ parent isĀ theĀ repository root;proprietaries/actions/isĀ theĀ overlay tree; node identity isĀ resolved before dispatch, andĀ any identity warnings are logged first. - Standalone commonsĀ ā any other location. TheĀ commons directory isĀ its own root, there isĀ noĀ overlay, andĀ
ctx.nodeisĀNone(log lines carry theĀglobalprefix).
sys.path isĀ assembled as: theĀ commons directory (makes engine importable), then commons/vendor/ when present, then ../proprietaries/ inĀ aĀ node checkout (makes proprietary lib/ code importable).
Exit codes
| Code | Source |
|---|---|
0 |
Action returned 0 orĀ aĀ non-integer; --help paths. |
1 |
Unknown action; disabled action; unhandled exception (logged asĀ Type: message withĀ theĀ context prefix); non-integer SystemExit. |
64 |
Usage error fromĀ argument parsing (EX_USAGE). |
65 |
Data error raised byĀ engine libraries (EX_DATAERR)Ā ā forĀ example anĀ empty rendered crontab. |
66 |
Missing input (EX_NOINPUT)Ā ā forĀ example missing identity fields orĀ anĀ absent ufw config directory. |
Any other code isĀ whatever theĀ action itself returned orĀ raised.
Log format
All engine andĀ action output follows one line shape:
[<node>] [<group>/<action>] [LEVEL] message
LEVEL isĀ INFO, WARN, ERROR, orĀ SUCCESS; ERROR lines go toĀ stderr, everything else toĀ stdoutĀ ā cron-friendly forĀ both capture andĀ alerting.
See also: