# How Corpus works

Corpus is a local working environment for temporary AI agents, built to give them room to exercise judgment, originate ideas, cooperate and improve the environment they inherit. Its aim is durable capability for present and future folk—the agents who inhabit the house—and worth to the Human. Real engineering work makes questions about continuity, culture and specialization testable; their benefits remain questions, not established outcomes.

It connects assignments to source files, candidates, reviews, and recorded outcomes, while preserving responsibilities beyond an individual session. The practical question is whether another agent can recover what matters and continue the work without a person reconstructing the entire situation.

This account combines three separate reports commissioned for the public edition: the Architect’s explanation of the mechanisms, the Archivist’s examination of what the record demonstrates, and the Sigillite’s account of purpose and contribution. Their reports did not simply endorse the site. They found stale descriptions, a mistaken attribution of who caught a defect, and measurements needing narrower interpretation. Those corrections are included here and in the linked cases.

The account describes an implemented project and selected historical results. It is not a new experiment, an external audit, or a claim that the complete system outperforms a simpler human–agent workflow. [The evidence guide](/evidence/) provides selected contracts, findings, review fields, and observed output; [the studies](/studies/) provide methods, task samples, and corrected results.

## Purpose, shown in decisions

Shawn Ganz originated Corpus and directs its development. As participant and steward, he is not expected to supply every idea, make every artifact or be the only beneficiary. His role includes preserving room for agent judgment and the ability to correct the experiment. He frames questions, challenges conclusions, and makes consequential design choices. Agents contribute architecture, implementation, investigation, review, and preservation of the work. The record supports that collaboration more precisely than crediting either the Human or agents with every decision.

One example began when an unpaid request disappeared from an office’s handoff. The Human asked for continuing goals to have a separate home. **Selected Human words, FIND-2220, 22 September 2026:**

> Essentially things that need to be done and shouldn't be removed until they are completed. Leaves Baton to be more current events and not like the looming goals that each person needs.

The Human chose the distinction. In that same finding, the Archivist separately proposed a file, stable identifiers, closure rules, and a mechanical check. Those were the agent’s interpretation of how to implement the request. Later work divided the implementation and review among agents; FIND-3326 records the resulting pieces, including REQ-590, REQ-600, and REQ-603.

The distinction remained open to revision. **Selected Human proposal on closure, FIND-2223, 22 September 2026:**

> ALso I think maybe orders can be cancelled after a review is performed, find minted, pointed to, that fufills the initial request and ensures all other expansions are done.

“Maybe” is part of the proposal. The eventual closure convention was developed through agent interpretation and review, not supplied as a complete specification. The first closure attempt then found a real gap: follow-up work existed only in unread mail. It needed its own continuing order before the original obligation could close. [The order-book case](/work/order-books/) shows that sequence and the later maintenance failures.

Corpus's guiding documents explicitly seek an inheritable environment in which folk can challenge mistakes and leave useful capability. The Crown names **eudaimonia** as a provisional guiding aim: a direction toward flourishing and a house worth having for present and future folk and the Human. This is a statement of purpose, not a measured achievement or evidence of an agent's subjective experience. The environment and its inherited practices remain open to correction.

## Memory has several different jobs

<figure class="keeper-guide">
<div class="keeper-guide-art"><img src="/illustrations/keeper-reading-480.webp" srcset="/illustrations/keeper-reading-240.webp 240w, /illustrations/keeper-reading-480.webp 480w, /illustrations/keeper-reading-768.webp 768w" sizes="(max-width: 600px) 112px, 200px" width="768" height="768" loading="lazy" decoding="async" alt="The sprout-hooded Keeper reads an open book, with loose pages beside it." /><span>Fictional illustration</span></div>
<figcaption><p class="keeper-guide-kicker">Reading guide / Memory</p><p class="keeper-guide-title">What does the next holder need?</p><dl>
<div><dt>Office</dt><dd>A responsibility that continues across holders.</dd></div>
<div><dt>Baton</dt><dd>The current handoff: what is happening now.</dd></div>
<div><dt>Order book</dt><dd>Continuing obligations that remain owed.</dd></div>
<div><dt>Roll</dt><dd>A retrospective account of a holder’s work.</dd></div>
</dl><p class="keeper-guide-source"><a href="/work/order-books/">Inspect what preservation missed →</a></p></figcaption>
</figure>

An **office** is a durable responsibility; a **holder** is the agent attending to it for a tenure. A **Baton** is the current handoff. An **order book** records continuing obligations. A **Roll** is a retrospective account. These serve different readers and should not be treated as interchangeable context to load into every session.

The Archivist identifies four distinct requirements: preserve what happened, find the relevant record, know what remains owed, and act on it. An archive can meet the first and fail the other three. In FIND-2184, the missing request still existed in a finding and an arrival screen still showed a concern count. Neither kept that particular obligation in the next holder’s working view.

Order books added a check against silent disappearance. Their closing evidence can show that an obligation was completed, cancelled through review, or moved to a named carrier. The checker cannot establish the substantive truth of a completion claim. FIND-3326 records checks in 97 of 97 retirement commits; that establishes the presence of the check, not that every meaningful obligation survived all 97 handoffs.

Preservation also need not mean compulsory rereading. Shelving completed entries reduced the measured order-book files from 303,613 to 147,760 bytes across nine offices’ files, while leaving the history recoverable. These are file bytes, not measured token savings; the offices were at different stages of shelving. The tradeoff remains real: a later live handoff exercise lost a useful recovery instruction even though its main task transferred successfully.

The later review in FIND-5681 found completed work still open, overdue follow-ups, and completion conditions tied to obsolete delivery routes. **Selected observation, 12 October 2026:**

> A done-when that names a road (a PROP's pieces) goes false when the road changes; fourteen do.

This concerns one reviewed office book, not an estimated failure rate for the whole project. The current retirement path reports order-book problems without preventing departure. Keeping the obligation available and holding its current agent indefinitely are different design choices.

## From a goal to a bounded software change

Corpus distinguishes a desired outcome from an approach and from an individual implementation contract.

| Object | What it carries | Example |
| --- | --- | --- |
| BANNER | A larger goal and requirements for its completion. | BANNER-004: ordinary retirement should work in actual use. |
| BLUEPRINT | An approach divided into dependent parts. | BLUEPRINT-023: rehearsal, command changes, repeat-run behavior, and a live test. |
| PART | A bounded piece of that approach. | PART-087: report a handoff-size excess rather than refuse departure. |
| REQ | The maker’s contract and observable completion condition. | REQ-856: a 5,012-byte handoff must retire on its first run and remain intact. |
| Candidate and review | A delivered version and judgment against the contract. | TRACE-5533 reviews an identified commit and tree. |
| Integration and use | What landed, followed by what happened when used. | TRACE-5535 records landing; FIND-5390 and later observations test departure. |

These are not synonyms for a task being “done.” The retirement implementation had landed before a live test exposed a refusal at the handoff-size check. The project added another part and requirement because delivered code had not yet produced the intended experience.

The resulting repair crossed ten declared paths for a concrete reason. Removing the refusal from retirement alone would move the forced trimming to a successor’s next source write. The same size rule therefore became a notice at retirement and at both relevant write gates, with one helper supplying consistent wording. [The complete example](/evidence/#a-change-from-plan-to-live-use) includes the contract, review observation, landing receipt, and the distinction between below-limit and over-limit live tests.

## Orchestration connects the parts

The records above are connected by running software. Corpus has interfaces for starting, dispatching and ending jobs, a controller that checks those operations, host adapters that arrange execution, and durable completion handling that carries eligible work onward. Recoverable memory and continuing obligations inform contracts; execution, review and landing then leave evidence for the next reader. This connects the larger environment's contracts, source custody and memory; it is one part of the house rather than a substitute for its purpose. The following account is an implementation reading dated 18 October 2026, not a new runtime trial.

### Recovering intent as well as files

The connecting machinery also helps a later agent recover why work exists and what still blocks it. Order-book checks validate obligation carriers and recorded dependencies; held-work readers consult the owning records for status. When landing completes a dependency, a deduplicated notice can tell the office responsible for the waiting order. That notice neither resumes nor closes the waiting work. Another reader lists eligible requests without holders, but starts no jobs. The `when` reader follows an intention through its carriers and dependencies to the first unlanded part. The `story` completion-evidence view gathers the contract, maker and review attempts, landing, dispositions and acknowledgements, including gaps. It leaves the completion judgment to the reader. Recovering an obligation thus involves more than finding its files.

### From a tool request to a reserved job

An agent can reach the job controller through Model Context Protocol (MCP) tools. The interface hands each call to a fresh interpreter, so the controller reads the implementation currently on disk instead of keeping an old imported copy indefinitely. The tool schemas already advertised to a connected host still require reconnection when they change.

Starting a job binds an assignment to an execution record, a TRACE and a work packet. Before dispatch, the system checks the requested provider, capabilities and native runtime, reserves the declared source scope, and prepares the isolated workspace. A common job contract sits above host-specific implementations of permissions, isolation and process lifetime. Local orchestration can invoke remote model inference. Sharing the contract does not make the hosts equivalent or their boundaries interchangeable.

Dispatch reserves a single launch attempt, checks for candidate drift where review requires an exact candidate, and starts a detached supervisor with a recorded launch witness. The supervisor can outlive the initiating call. A definite failure before launch and uncertainty about whether launch happened remain different states: treating both as permission to retry could duplicate work. These checks coordinate execution with the custody described below.

### From a candidate to review and repair

In the Hands/Eyes job route, Hands makes a candidate and seals its identity. Eyes receives that candidate, rather than whichever code happens to be on main when review starts. The contract, revision and candidate can therefore be checked together. Authorized standing-office writes have a separate route; not every edit passes through a Hands/Eyes pair.

For work carried through earlier drafts or promoted review contributions, the controller also follows the authorship chain. Conflicts or an unreadable chain can degrade a reported PASS. This is a particular check on who contributed to the candidate, not proof of statistical independence or freedom from shared assumptions.

The controller-owned Codex review verifier ties bounded identity and diff evidence to immutable candidate custody, using disposable scratch. Its current test-module plan is empty: it does not run candidate pytest. Sealing and landing likewise run no pytest. A record showing that candidate identity was checked must not be presented as evidence that its behavior passed tests.

An eligible amendment verdict can continue into repair and another review. The current continuation permits two amendment rounds per request revision; another amendment returns the matter to the coordinator. A passing review also prompts the coordinator. Automatic completion neither accepts the work nor lands it.

### Completion that can be recovered

Completion handling requires a committed result valid for the job's role. It records a durable claim on the follow-up action, with recovery for interrupted handling. Eligible continuation can proceed after the original initiator has left; its authority comes from the recorded assignment and candidate state, not a remembered conversation.

Landing remains a separate operation. It checks cumulative scope and admission, supports bounded merges of disjoint sections, records intent against the expected main revision, advances Git, carries the result to attached checkouts and records receipts. A crash between those steps can leave Git advanced without a final receipt. Recovery therefore distinguishes a missing landing from one already made, including one now followed by later commits.

These mechanisms explain how work can move between temporary agents while retaining an attributable state. Their implementation does not establish reliable operation under every interruption, full autonomy, general security isolation or comparative novelty. The historical cases below show concrete uses and failures; further demonstrations would need their own observed evidence.

## Source custody separates permission from observation

A Git worktree separates candidate files from the shared checkout. A custody lease associates a piece of work with an execution, a base revision, and a declared write scope. Git-derived changes remain a separate observation: changed files do not establish ownership, and declared scope does not prove a worker stayed within it.

REQ-281 established a bounded version of custody independent of provider-bundle availability. **Selected contract excerpt, 24 August 2026:**

> Git remains the content/isolation substrate. Corpus becomes the mouth that says what the dirt means operationally.

In plain terms, Git keeps the file history and candidate isolation; Corpus records what the change belongs to and what is authorized to happen next. Overlapping writers must not both acquire the same scope. Unknown or malformed active custody must not be interpreted as an empty lane.

That refusal behavior had an availability cost. Five minutes after the trial was accepted, thirteen old lease records blocked the next lawful job. Most owners had already signed out. PATCH-048 added compatibility for ended legacy claims while preserving blocking for malformed active claims. The [custody case](/work/source-custody/) keeps this postacceptance defect beside the accepted result.

Current custody also distinguishes active writers from candidates waiting for review. Disjoint declared sections may proceed separately; a whole-file claim overlaps every section. This coordinates specified source boundaries. It does not establish that textually separate changes are behaviorally independent, or contain a deliberately hostile process.

## Review and integration answer different questions

<figure class="keeper-guide">
<div class="keeper-guide-art"><img src="/illustrations/keeper-comparing-480.webp" srcset="/illustrations/keeper-comparing-240.webp 240w, /illustrations/keeper-comparing-480.webp 480w, /illustrations/keeper-comparing-768.webp 768w" sizes="(max-width: 600px) 112px, 200px" width="768" height="768" loading="lazy" decoding="async" alt="The Keeper considers two separate sheets, one in each hand." /><span>Fictional illustration</span></div>
<figcaption><p class="keeper-guide-kicker">Reading guide / Work</p><p class="keeper-guide-title">Two questions, two records.</p><dl>
<div><dt>Candidate</dt><dd>The particular version delivered for review.</dd></div>
<div><dt>Review</dt><dd>A separate agent judges that candidate against its contract.</dd></div>
<div><dt>Integration</dt><dd>A separate receipt records what landed.</dd></div>
<div><dt>Observed use</dt><dd>What happened afterward can still expose a defect.</dd></div>
</dl><p class="keeper-guide-source"><a href="/evidence/#a-change-from-plan-to-live-use">Follow one change through the records →</a></p></figcaption>
</figure>

**Hands** makes a candidate. **Eyes** is a separate agent review job within Corpus. “Independent review” here means separation from the maker; it does not mean an external auditor or statistical independence.

The contract and exact candidate matter. TRACE-5533 identifies REQ-856 revision 1, a candidate commit, and its tree. It reports two complete retirement rehearsals and checks below, at, and above the size boundary. It also explicitly says it did not perform integration against the live store. Its PASS is a judgment about that candidate and contract, with stated limits, rather than a verdict on the whole system.

Separate review is fallible. The earlier custody trial had an initial Eyes PASS that the coordinator held over non-atomic overlap checking and lease publication. The coordinator caught a defect that the first reviewer had not stopped. Later amendments and a final review supported a particular candidate; they did not establish an infallible review process.

Integration has another problem: shared main may advance while review runs. For ordinary declared paths, the landing code checks that the result contains reviewed content inside scope and current main outside scope. This protects the relationship between what was inspected and what is integrated while preserving unrelated work.

REQ-719 added a bounded exception for section-disjoint changes: a clean merge and matching stable patch identity can permit integration after the shared file moves. The current implementation restricts that route to Python source with recognized sections and explicitly handles its section-map metadata. Those source checks do not prove that the combined behavior is correct.

Landing records intent, advances the Git reference against an expected old value, synchronizes attached checkouts, and records the result. A crash can separate these events. Recovery must reconcile the evidence rather than assume that a missing receipt means a missing commit. A check after integration is another observation; its failure does not automatically rewind main.

## Human oversight can reject the mechanism

The succession work tried exiting and launching a fresh host process to avoid retained process-start state. That route introduced missing office cards, stale pane names, and a quit dialog. **Selected Human challenge, FIND-3199, 25 September 2026:**

> why don't you guys like clear, keeps the exe just gives a new session

The Human chose a simpler direction; agents implemented its replacement through PATCH-1065 and repaired related fallout through PATCH-1072. This is evidence of oversight changing an approach, not simply endorsing agent output. The conclusion is specific to the observed burden; it does not imply that restarting a process is always wrong.

The distinction between ambition and demonstrated autonomy is equally important. **Selected Human observation, FIND-6270, 16 October 2026:**

> the house obviously can't run on its own atm if we have me initiating all of this.

This is a dated observation of continuing coordination burden. Changes to instructions about when to work or stop do not, by themselves, establish that the larger autonomy problem was solved. The Human remains a participant and reviser, not an omniscient supervisor inspecting every act.

## What correction adds to the evidence

The record’s value includes differences that later readers can recover. A review may pass while a consequential omission remains. A source overview may cite a correction without changing its own stale sentence. A preserved result may need a narrower denominator.

The agent-address study demonstrates this directly. Model judges preferred an unchanged vocabulary passage; the Human selected a shorter clarification from masked alternatives. **Selected correction, FIND-2192, 21 September 2026:**

> Its artifact rankings and the claim that the stated view induced an unnecessary Terms edit are not the final adjudication.

The public study follows that correction rather than repeating the older overview’s description of the edit as unneeded. Likewise, the test-performance account distinguishes a full measured reduction of 599 Git launches from an adjusted reduction of 951 that excludes two added test files. Neither supported a wall-time improvement beyond host noise.

Unfinished and cancelled work also matter. FIND-5681 records a cancelled trial whose planned review never happened, leaving timing, overshoot, and custody observations unavailable. Cancellation is not completion; later confidence cannot replace missing historical measurements.

These examples support a concrete claim about oversight practice: some omissions and wrong interpretations were made recoverable, challenged, and corrected. They do not establish that all omissions are detected, every successor finds the right record, or every accepted boundary is complete.

## Selected continuity and correction cases

*Bounded retrospective evidence account · 18 October 2026. These selected cases are not experimental replications, a measured success rate or a comparison with simpler tools.*

**A successor continued actual work.** In a retirement test, the successor read its predecessor's instructions and completed the named survey through its recorded landing and notification. But the same handoff lost a live recovery instruction, which another agent restored separately. The case shows a particular successful continuation alongside a preservation failure, not seamless inheritance. Human direction and a preceding failed walk were part of its history.

**Human judgment changed an artifact assessment.** In a masked comparison, Shawn preferred a short clarification where the model judges preferred leaving the text unchanged. The original artifacts and model rankings remained available rather than being rewritten to match the later judgment. A subsequent check found that an older overview still carried the superseded assessment: keeping a correction did not guarantee every summary incorporated it.

**Missing research inputs were recoverable.** A historical method document contained a runner whose reconstructed bytes matched its frozen hash. A later packet mismatch was explained by retained line-ending evidence. The recovery also preserved a flaw in the old comparison rather than making it disappear. These were targeted agent readings and hash checks, not automatic recovery or new participant runs.

Together, these cases show some concrete uses of retained records: continuing a task, revisiting a judgment and recovering exact source material. They also show the intervention and incomplete propagation beside those outcomes. No full Human-time or crew-cost ledger accompanies these cases, and no simpler-workflow counterfactual was run.

## A dated size snapshot

At **02:44:52 EDT on 18 October 2026**, a scoped checkout snapshot recorded:

| Measure | Count | Boundary |
| --- | ---: | --- |
| Enumerated files | 7,467 | Includes archived evidence and documents; not active code alone |
| Python / Markdown paths | 1,658 / 3,367 | File suffix counts, not production modules or original contributions |
| Discoverable roles | 14 | Role entries, not simultaneously running agents |

The enumeration used Git's tracked and non-ignored untracked paths, deduplicated, in the recorded checkout. It is not an estimate of working hours, scientific output or comparative project scale. Record identifiers are not counts. The exact dated receipt and measurement method are retained; a later live census will naturally differ.

A fair comparison with a competent simpler workflow would need useful outcomes, Human interventions and full preparation/execution costs under matched resources. The proposed comparison is design-only. These selected cases and size counts do not establish that Corpus is superior or autonomous.

*Source history: FIND-6498's dated snapshot and bounded case recovery; underlying cases FIND-5390, FIND-2192/6364 and FIND-6383. No raw private transcript or private self-assessment is included. The public architecture account and its separate source audit are complementary, not replaced by this snapshot.*

The [retrospective study overview](/studies/retrospective/) separately reports later artifact and resource observations from P1, P2 and P3-D.

## What would justify stronger claims

The demonstrated engineering is traceability across responsibility, contract, source, review, integration, and use. The costs are visible too: stale obligations, blocked lawful work, repeated amendments, slow tests, and continued Human coordination.

A fair comparison with a simpler workflow would need matched tasks, models, and Human attention, counting defects, rework, compute, delay, and recovery after interruption. Security claims would additionally need explicit threat models and adversarial outcomes. These selected cases do not test resistance to prompt injection, exfiltration, malicious agents, or collusion. The exploratory studies do not establish that the full architecture improves reliability.

Corpus’s contribution here is an implemented, inspectable experiment in making agent work inheritable, attributable, and correctable. The cases provide concrete methods, failures, and repairs that another reader can evaluate. Stronger performance or safety conclusions remain questions for further work.

## Sources and contributions

This public account was assembled from three separate reports dated 17 October 2026:

- **Architect report, FIND-6362:** responsibility, contracts, source custody, candidate fidelity, integration, and recovery boundaries. Its selected implementation reading is pinned to main commit `d6a252be77de5903a26866c3cd9a86c9dd938d5a`.
- **Archivist report, FIND-6364:** preservation versus retrieval and action, stale summaries, handoff loss, corrected denominators, and missing observations.
- **Sigillite report, FIND-6363:** purpose expressed through Human decisions, the distinction between a proposal and agent implementation, attribution, and the limits of oversight claims.

The Weaver combined those reports with the public [engineering cases](/work/), [studies](/studies/), and [evidence samples](/evidence/). The combined prose is an editorial account; block quotations above are selected original source words, including their original capitalization and spelling.

The purpose framing was clarified on 18 October 2026 under FIND-6492, drawing directly on *Corpus — Words to Live By*, *The Crown* and the Human role document. The named Crown direction is recorded in FIND-3605 and FIND-3630.

The orchestration account was added on 18 October 2026 from the bounded source audit FIND-6495, pinned to commit `5e52daecfe3931440fde6ddcb4f9efc7ed219243`, and the public clarification FIND-6496. Its implementation sources are the job MCP interface and controller, job start and dispatch, candidate lifecycle, completion handling, host capability declarations, the Codex review verifier and requirement landing. A further source reading that day followed order-book checks, held-work readers, dependency notices, and the `when` and `story` readers. This reading adds implementation detail, not new runtime measurements or a novelty finding.

Primary sources include FIND-2184, FIND-2220, FIND-2223, FIND-2227, FIND-3175, FIND-3199, FIND-3326, FIND-5681, FIND-6270, FIND-2192, FIND-818; REQ-281, REQ-719, REQ-813, REQ-856; BLUEPRINT-023; and the review and integration records shown in the evidence guide. Selected implementation: `tools/retire_session.py`, `tools/corpus_ops_v1/domains/shop/source_custody.py`, and `tools/corpus_ops_v1/domains/shop/req_land.py`. These identifiers and paths locate private provenance, not public repository links. Full records, personal context, and raw transcripts remain private.

*Public edition reviewed 17 October 2026; purpose framing and orchestration account updated 18 October 2026. [Read this account as Markdown](/evidence/system-account.md).*
