Make the docs state things rather than argue them
Docs / docs (push) Successful in 37s
Playwright Tests / test-playwright (1, 2) (push) Failing after 1m35s
Playwright Tests / test-playwright (2, 2) (push) Failing after 17s
pre-commit / pre-commit (push) Failing after 2m8s
Test Backend / test-backend (push) Failing after 2m48s
Compose Smoke Test / test-compose (push) Failing after 13s
Playwright Tests / merge-reports (push) Failing after 2m25s
Docs / docs (push) Successful in 37s
Playwright Tests / test-playwright (1, 2) (push) Failing after 1m35s
Playwright Tests / test-playwright (2, 2) (push) Failing after 17s
pre-commit / pre-commit (push) Failing after 2m8s
Test Backend / test-backend (push) Failing after 2m48s
Compose Smoke Test / test-compose (push) Failing after 13s
Playwright Tests / merge-reports (push) Failing after 2m25s
The site read as a design journal: rationale paragraphs, hedges
("deliberately", "on purpose", "genuinely"), meta-commentary about the docs
themselves, and one em-dash every ten lines carrying an aside.
Roughly twenty rationale blocks are gone or reduced to what a reader needs
in order to use the thing. Em-dashes go from 507 to 135, and what is left is
structural rather than prose: list and definition separators, table cells,
and four inside code blocks that quote what the CLI actually prints.
Also: api.example.com becomes api.fluksio.com (the emails stay, since
bootstrap.py really defaults to admin@example.com and RFC 2606 reserves it);
the mqtt table gains the two settings it had drifted behind on and inject's
wording matches the engine; llms.txt lists the two connector pages that were
in the nav but not in it; and the two device/device_policy notes now agree.
Builds clean under `zensical build --strict`.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015YrQnKV3bnQd4K342y8tKj
This commit is contained in:
@@ -17,7 +17,7 @@ Anything already exported wins over the file.
|
||||
| `DATA_DIR` | `flow-data` (`./.fluksio` via the CLI; `~/.fluksio` with `--global`) | everything below derives from this |
|
||||
| `DATABASE_URL` | SQLite in `DATA_DIR` | any SQLAlchemy URL |
|
||||
| `FLOWS_DIR` | `$DATA_DIR/flows` | the git repository holding flows |
|
||||
| `SECRETS_FILE` | `$DATA_DIR/secrets.enc` | encrypted credentials, deliberately outside the repo |
|
||||
| `SECRETS_FILE` | `$DATA_DIR/secrets.enc` | encrypted credentials, kept outside the repo |
|
||||
| `ALERTS_FILE` | `$DATA_DIR/alerts.json` | channels and rules |
|
||||
| `PROVISIONERS_FILE` | `$DATA_DIR/provisioners.json` | clusters a machine can be started from; absent means none |
|
||||
| `PANELS_FILE` | `$DATA_DIR/panels.json` | wall-panel pairings |
|
||||
@@ -25,7 +25,7 @@ Anything already exported wins over the file.
|
||||
| `CLOUD_CONFIG_FILE` | `$DATA_DIR/cloud.json` | the portal enrolment, if any |
|
||||
| `NODE_VENV` | `auto` | which interpreter node code runs on — see below |
|
||||
|
||||
Set `DATA_DIR` and the rest follow. Set one explicitly and it wins — which is
|
||||
Set `DATA_DIR` and the rest follow. Set one explicitly and it wins, which is
|
||||
what the container images do to pin everything onto `/data`.
|
||||
|
||||
`NODE_VENV` is the exception, being about an environment rather than a path:
|
||||
@@ -43,7 +43,7 @@ An instance that already has a managed venv keeps it on upgrade under
|
||||
|
||||
`secrets.enc`, `alerts.json`, `panels.json` and `oauth-key.pem` are written
|
||||
at runtime. In a container, anything not on a volume lands in the writable
|
||||
layer and is lost on the next rebuild — un-pairing every screen and
|
||||
layer and is lost on the next rebuild, un-pairing every screen and
|
||||
revoking every agent.
|
||||
|
||||
## State
|
||||
@@ -54,8 +54,7 @@ An instance that already has a managed venv keeps it on upgrade under
|
||||
| `REDIS_PORT` | `6379` | |
|
||||
|
||||
Flow state is the last value of every message, node memory, and the run queue.
|
||||
Redis here is persistence, not a cache — run it with append-only persistence
|
||||
on.
|
||||
Redis here is persistence, not a cache. Run it with append-only persistence on.
|
||||
|
||||
## Identity and access
|
||||
|
||||
@@ -85,7 +84,7 @@ there to satisfy.
|
||||
|
||||
Empty is the useful value: the interface then addresses the API relative to
|
||||
whichever origin served the page, so one image answers on a hostname, on a
|
||||
`http://<host-ip>:<port>`, and through an ssh tunnel alike — and no origin has
|
||||
`http://<host-ip>:<port>`, and through an ssh tunnel alike, and no origin has
|
||||
to be added to `BACKEND_CORS_ORIGINS`, because there is only one.
|
||||
`docker/compose.lan.yml` builds it that way and puts an `/api` proxy in front
|
||||
of the backend to complete it; see
|
||||
@@ -115,7 +114,7 @@ o'clock nor the same hour in summer as in winter. Set it to where the
|
||||
instance is.
|
||||
|
||||
`production` closes `/docs`, `/redoc` and the OpenAPI document, because the
|
||||
schema enumerates every endpoint the instance serves — including the paths
|
||||
schema enumerates every endpoint the instance serves, including the paths
|
||||
webhook nodes mounted at runtime. It also turns a `changethis` secret from a
|
||||
warning into a refusal to start.
|
||||
|
||||
@@ -133,8 +132,9 @@ warning into a refusal to start.
|
||||
| `ARTIFACT_GC_INTERVAL_S` | `3600` | how often artifact bytes nothing refers to are swept away; 0 never sweeps |
|
||||
| `ARTIFACT_GC_GRACE_S` | `3600` | how long a freshly written artifact is spared, whatever refers to it |
|
||||
|
||||
The three concurrency limits are also flags on `fluksio serve` — `--max-workers`,
|
||||
`--max-cascades`, `--max-runs` — as is the card count, `--gpus`. The flags
|
||||
The three concurrency limits are also flags on `fluksio serve`
|
||||
(`--max-workers`, `--max-cascades`, `--max-runs`), as is the card count,
|
||||
`--gpus`. The flags
|
||||
outrank the file, and the engine says which numbers it started with in its
|
||||
first lines. Each pool size must be at least 1 and the card count at least 0:
|
||||
a number below that is refused as a flag error naming it, rather than read as
|
||||
@@ -153,7 +153,7 @@ several at once cannot each size themselves to the whole machine. Setting
|
||||
that default.
|
||||
|
||||
These two are this machine's figures. An attached worker reports its own when
|
||||
it dials in, and a node goes to whichever machine can grant what it asked for —
|
||||
it dials in, and a node goes to whichever machine can grant what it asked for,
|
||||
so a GPU on a worker needs no `FLOW_GPUS` here. What every machine has free, and
|
||||
which nodes are queued, is `GET /api/v1/workers/resources` and the Workers
|
||||
screen. Named sizes live in the database and are `GET /api/v1/flavors`;
|
||||
|
||||
Reference in New Issue
Block a user