Team Setup manifests

Administrator·2 minutes to read

Explains F-COMP-10's execution contract and D257's schema, as they run on every team computer. The editor lives on Organisation → Team setup.

What a manifest is

{ "manifestId": "<slug>", "entries": [{ "id": "<slug>", "setup": "<script>", "check": "<script> | null" }] }

An entry's id is unique and slug-shaped, at most 64 characters; a manifest holds at most 50 entries; setup is at most 32 KiB and check is at most 4 KiB or null. A manifest is edited as a form or as JSON on Organisation → Team setup (/organisation/setup; no source screen — sheet idiom Sm-46).

How entries run

Entries run one at a time, in the order the manifest lists them. A computer runs the manifest at start and again every 24 hours while it stays up. An entry whose check exits 0 skips its setup; after a setup runs, check runs again to confirm it. Each entry has a 30-minute timeout. A failure never blocks the computer and is retried on the next refresh. A change to the approved manifest reaches every running computer within a day on its own, and a restart or a recreate applies it immediately; every entry re-applies after a recreation.

Do not put secret values in setup scripts

A manifest is plain text applied across the whole fleet, so the editor carries its own note: Don't put secret values in setup scripts. The scan behind it refuses a secret or a url_with_credentials finding and names the path where it found one. Authenticate interactively, inside the computer's own browser, instead.

Second-admin approval

A manifest change is proposed by one administrator and approved by a different one. An organisation with a single administrator is told to invite a second one on Organisation → Members before a manifest can move. The approved version is the one computers pull. Every proposal and decision is audited (org.setup_manifest_proposed, org.setup_manifest_decided).

Where results appear

Results show per computer, on Organisation → Computers and on the member's own Settings → Computer (Sm-49); each run writes one audit row (computer.setup_ran). A computer created before this release shows Team setup: not yet available on this computer until its next Update on Settings → Updates (Sm-52). There is no fleet-wide results view.

The guest and sudo

The computer runs a Debian-based Linux guest. A setup script runs as the computer's own user, with sudo limited to package-manager commands only.

Last verified against build c0f77aa.