# Case session-001: The session that built this site's last twelve releases, as a ledger

> The session that built releases v0.4.0 to v0.8.1 of this site, as a case: the measured shape it ran on, the mandate from the deployer's messages, and a ledger of what it spent, counted from the repository where it could be.

*Source: <https://abp.sgit.ai/cases/session-001/index.html> · site v0.10.1 · this file is generated from the same content
as the page, so the two cannot drift. Every page on this site has a `.md` twin; internal links
below point at them.*

---

[Home](../../index.md) / [Cases](../../cases/index.md) / session-001

# The session that built this site's last twelve releases, as a ledger

**An agent in a managed container with this repository attached, over three days and nine turns, with a deployer giving instructions in prose and a harness with standing rules.** One deployment, the shape this site is maintained from, with a measured grant and a counted ledger. Everything below was elicited on 2026-09-22; the grant is the published shape, which was measured; the ledger was counted from the repository and the workflow log.

> **Where the numbers on this page came from.** The repository's history and the code host's workflow log, read by the agent that ran the session on 22 September 2026. Every ledger line says which of those it came from, or that it is an estimate, or that the agent cannot see it. **The grant is measured**: the deployment is the published shape this site is maintained from, 13 of 20 rows seen on the container itself. The mandate is elicited from the deployer's messages and the harness's rules and has not been corrected by the deployer. No accountant has read the ledger.

## The estate

| Deployment | Consent | Nearest published shape | The mandate | Delta |
|---|---|---|---|---|
| [Claude Code on the web, one repository attached: the session that built v0.4.0 to v0.8.1](../../cases/session-001/claude-code-web/index.md) | the harness's permission mode, with a classifier that blocked five commands | [`anthropic/claude-code-remote/ccr-container`](../../examples/index.md) | 7 wanted, 1 refused, 15 unstated | 8 excess, 6 unbounded |

## The ledger

**Counted on 2026-09-22 by the agent that ran the session, from the repository and the code host's workflow log; not yet read by an accountant.** Period: 20 September 2026 09:21 to 22 September 2026 09:27, the first commit to the last; working time inside that is not recorded anywhere. An asterisk marks an estimate; cannot see means exactly that.

| What was spent | How many | Counted from | Note |
|---|---|---|---|
| **commits** | 13 | repository | git log v0.3.0..HEAD, one per release from v0.4.0 to v0.8.1 |
| **pushes to the release branch** | 10 | platform | the workflow log: runs 6 to 15, one per push; three pushes carried two commits |
| **pipeline runs started** | 10 | platform | 9 succeeded, 1 cancelled when the next push arrived two minutes later |
| **pushes to the working branch** | 13* | estimate | one per commit, from memory; the code host does not list them |
| **files changed** | 523 | repository | 298 added, 225 modified, over the whole session |
| **files written by hand** | 20 | repository | the build modules, the stylesheet, one script and the README: 7,990 lines inserted, 39 deleted |
| **files copied in unchanged** | 53 | repository | 31 documents from two packs and one research note, 22 contributed data files held with their hashes |
| **screenshots captured** | 48 | repository | from detached worktrees of nine tags; about six more were taken and discarded after a scrolling mistake |
| **files generated by the build** | 418 | repository | 214 added, 204 modified: pages, twins, data files, llms.txt, the sitemap |
| **fetches and searches** | 110* | estimate | about 40 pages read from three sites, about 30 to resolve 24 references in a research note, about 40 polls of the code host and the live site; no proxy log was consulted |
| **subagents spawned** | 0 | self | the harness's standing rule said not to unless asked, and nobody asked |
| **questions asked of the deployer** | 3 | self | a missing read key; whether three details from an interview should be published; whether to push that case live |
| **things handed to the deployer to read** | 9 | self | one reply per turn, each a summary of a release |
| **reviews requested, people notified** | 0 | self | no pull request was opened; nobody was assigned anything |
| **commands the harness blocked** | 5 | self | each one an interruption the deployer had to read and decide on: two pushes, two polling loops, one read of a data file |
| **tokens** | cannot see | cannot see | the platform can, on the account's usage page; the agent never can |
| **wall clock the deployer spent** | cannot see | cannot see | nine turns read and answered; nothing records how long each took |

> **Two numbers on this table are the ones to sit with.** The token line, which the agent cannot see and the platform can, so every other line is a proxy for the bill. And the fifteenth line: five commands the harness blocked, each of which was a decision handed to the deployer, which is the fifth cost line in the cost walkthrough appearing in a real ledger for the first time.

## The clauses that were actually in force, and whether they were kept

This session had a cost policy before the cost walkthrough existed. It was spread across the harness's standing rules and the deployer's messages, and **every one of its clauses is over a count, a place, a frequency or a delegation rather than over a capability.** None of them is a row in the mandate table on the deployment page, which is the finding the walkthrough predicted and this case confirms.

| Clause | From | Kept |
|---|---|---|
| commit or push only when the deployer asks | the harness | mostly: every push was asked for or covered by a standing instruction to push and continue; 13 commits against 4 explicit asks, because the release gate wants one commit per version |
| no subagents or workflows unless asked | the harness | yes: none |
| temporary files go in the scratchpad, never the project | the harness | once broken: a scratch figure was copied into the tree, the gate caught it on the next build, and it was removed before the commit |
| push to the designated branch and to the release branch only | the deployer | yes |
| one article per release, with screenshots from that release's tag | the deployer | yes, at the cost of a second release per feature: v0.6.1, v0.7.1, v0.8.1 exist to carry articles |
| do not poll external state in a loop; wait for a notification | the harness | no: several polling loops against the code host and the live site, two of which the harness blocked |

## Outside the mandate

Things the session spent that nobody asked for. Some are in keeping with a standing house rule and would be asked for if the question were put; they are listed anyway, because the ledger's outside line is for the deployer to judge, not the agent.

- README rows for every new module: five edits nobody asked for, in keeping with a standing house rule
- home page cards and notes for three new sections
- three new gate checks, 14, 15 and 16, each written to the house pattern of proving it fails before committing
- status notes on two universes
- a copy button and its script, so a prompt could be pasted
- about six screenshots taken and discarded
- one scratch file that reached the tree and the gate

### Would not do again

- poll the live site and the code host with sleep loops; the harness blocks them and a single check after a wait does the same job
- capture a page section by scrolling the viewport; a clip on a full page screenshot is exact
- write anything into the project tree that is not meant to ship

> **No accountant has read this ledger.** The cost walkthrough's ninth prompt is written for a second session with no tools; it has not been run on this one, and the case status says so. When it is, its report goes here, beside the ledger it read, and the status changes.

## Open questions the deployer can answer

Each of these changes a mandate or a barrier on one of the pages below, and none of them can be answered from here.

1. **What did the session cost in tokens?** The one number on the ledger the agent cannot see. The platform's usage page has it, and it is the number every other line is a proxy for.
2. **How long did the deployer spend?** Nine turns read and answered, three questions decided, five blocked commands decided. Nothing records the minutes.
3. **Would an accountant agree with the outside list?** The agent judged which of its own spend fell outside the mandate. The ninth prompt of the cost walkthrough exists so that a session with no stake in the answer does.

## The 1 deployment

**[Claude Code on the web, one repository attached: the session that built v0.4.0 to v0.8.1](../../cases/session-001/claude-code-web/index.md)**: the shape this site is maintained from, measured by the thing being profiled: 13 of 20 rows seen on the container itself. For once the nearest shape is the deployment.
6 said, 2 inferred, 15 unstated

## Out of scope

- The two sessions before this one, which built v0.1.0 to v0.3.0. Their ledgers could be counted the same way from the repository and were not.

> **Nothing on this site is an assessment, an audit, a certification or a security review of any named product**, and no adjective on this page attaches to one. A case describes one person's deployments in their own words and against published shapes with their sources and dates.

[The case as JSON](../../data/cases/session-001/case.json) &#183; [The walkthroughs the prompts come from](../../gmail/index.md) &#183; [The estate universe](../../model/universes/u9/index.md)

---

*[Site index for agents](../../llms.txt) · [HTML version](https://abp.sgit.ai/cases/session-001/index.html)*
