Repository navigation
Conversation
The owner approved a manual (2026-11-05): documentation one can go through to understand how the system works or is meant to work. It is an mdBook in docs/, built with mdBook 0.5.4 from crates.io and published from main by a new workflow that never runs on pull requests. The manual states requirements and the intended design and names no code. Architecture statements move into it from root CLAUDE.md (the trust model, userland first, explicit authority, existing Rust, the loader, the ABI boundary, firmware loading), from system/CLAUDE.md (a server never blocks on a client) and from the design sections of eight issue tracks. The capability end-state track, a design record kept "since the tree keeps no spec corpus", goes: its answers are the manual's, and its remaining work is issues/the-handle-lifecycle-has-no-adversarial-suite.md. Root CLAUDE.md states once that a PR changing an architectural decision or a requirement updates the manual in the same PR and that review checks it, and the no-reference rule; the agent files apply it. build/ci.rs counts the seventh workflow. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Review of #1191 at e42627a (round 1)Architecture and fitThe structure is right. The requirements are in one part and the design in another, a page per area, built by a small workflow that only publishes from main. The rule that one fact has one home is well placed in root The branch has three main problems:
Required
Suggestions
Checked and fine
SEND BACK |
- The loader, scheduler, update, swap and GPU tracks keep their stages, exits and ruling dates; the design they stated is the manual's alone. The Thunderbolt track no longer restates trust. - The manual follows the 2026-10-31 display rulings (several outputs, high refresh and VRR in release one; Intel's driver our own, AMD's by ruling for that device) and restores the 2026-09-26 font families. - Rollback, waits, machines without an IOMMU and app rights take no side until the owner rules; status and transitional facts are gone or stated as design. - Each fact has one page: about 1,450 words fewer, with commands and the manifest reduced to what embodies design and the dense pages turned into lists. - The deploy job runs only on main's ref; reviewer.md points at the rule rather than restating it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Review of #1191 at 6566d58 (round 2,
|
- trust.md no longer states the interim refusal of external-port devices as design; the Thunderbolt and USB4 requirement stands. - installation.md drops "no downgrade", which read on the open rollback question; desktop.md states the toolkit as release-one scope. - The swap wait's non-blocking note returns to memory.md, and the writable-ESP gap to the update track. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Orchestrator verification of round 2 (6566d58..9af4ef5), which changes text only:
This PR waits for the owner's own review before it is queued. |
|
The owner approved landing the manual on 2026-11-05: "Land it, I'll read it live." Changes will come as follow-up PRs. |
Draft for review. The ToyOS manual the owner approved on 2026-11-05: an mdBook in
docs/, published to GitHub Pages from main.How the manual is organised
What it must deliver — the requirements, four pages:
How it works — one page per area: overview (layer diagram, who does what, rules every boundary follows), trust, kernel, processes and authority, sessions and permissions, files and views, storage, memory, scheduling and power, devices and drivers, boot and updates, services and failure, logs and diagnostics, applications and portability.
Using it — closest to man pages: building and running, the program interface (kernel ABI families, SDK, std, libc, how a program starts), the system manifest, commands.
Pages are short, mostly lists, with plain-text diagrams. No preprocessor plugins.
The rules it lives by
cargo run,pkg,launch) and the file-tree layout (/system,/home) appear, as a man page would show them.issues/and the evidence.CLAUDE.mdnow says, once: a PR that changes an architectural decision or a requirement updates the manual in the same PR, review checks it, and nothing cites the manual.CLAUDE.md's "Architecture and sources of truth" points at it. The reviewer file points at that rule; the implementer and orchestrator files apply it to their own steps.What moved
CLAUDE.md: the targets, self-hosting north star, userland first, explicit authority, existing Rust, the trust model, the loader/CPU/input/logging/POSIX placements and firmware loading. Engineering principles, testing, safety and dependency policy stay.system/CLAUDE.md: the "server never blocks on a client" doctrine; its code mechanics stay.issues/README.mdnow says a track does not restate the design.the-capability-end-state-is-twelve-answersis deleted: it existed "since the tree keeps no spec corpus", and its answers are now the authority page. Its remaining work isissues/the-handle-lifecycle-has-no-adversarial-suite.md.Publishing
.github/workflows/manual.ymlruns on pushes to main and onworkflow_dispatch, never on pull requests. It builds mdBook 0.5.4 withcargo install --locked(no cache), uploads withactions/upload-pages-artifactv5.0.0 and deploys withactions/deploy-pagesv5.0.1, both pinned by SHA. The build job holdscontents: readand the deploy jobpages: writeandid-token: write; the deploy job also runs only onrefs/heads/main. The owner enables Pages with GitHub Actions as its source; no repository settings were touched.build/ci.rs's workflow census counts the seventh workflow.Checks
At 6566d58 (round 1), on macOS. Round 2 (9af4ef5) changes text only (four manual lines and one track line);
mdbook build docspasses on it, and host CI was not rerun:cargo run -- --ci host: exit 0, "108 step(s), all green" (log). The run includes the workflow census, now 7, and the tracked-file identity gate overdocs/.mdbook build docswith mdBook 0.5.4: exit 0 (log). A script checked that every relative link between pages resolves.I did not add an
mdbook buildstep to host CI. The owner's rule forbids any test from referencing the manual, and building mdBook in host CI would add a host tool to every run. The table of contents is checked by the build step on main.Open decisions for the owner
Where sources disagree, the manual leaves the point out:
issues/cpu-time-is-a-band-and-not-a-reservation.mdstill plans reservations, andissues/the-fair-band-orders-by-share-alone-and-a-woken-editor-waits.mdwaits on them. Should both tracks be closed or rejected?/apps:issues/whether-pkg-alone-writes-apps.md, against the requirement that installed versions are protected.CLAUDE.md's "a wait has a failure timeout" against the planning notes' general report-and-preserve rule. The manual states no general rule. It does carry the specific no-timeout rules that were already recorded design: swap's waits (2026-10-28 swap design), "no timer ends a process" (process-lifecycle track) and no restart because time passed.🤖 Generated with Claude Code