What's Changed
- A verb that changes content writes the entry that accounts for it by @haksolot in #227
- check counts what an entity accounts for, and says so when it does not close by @haksolot in #228
- check follows a succession instead of asking for the citation to be rewritten by @haksolot in #229
- The superseded-citation guard walks the workspace and derives its dead set by @haksolot in #230
- File the TTL renewal flake as a task by @haksolot in #231
- The TTL renewal test reads two recorded values instead of a wall clock by @haksolot in #232
- The stale-binary hint names a road that resolves the state it describes by @haksolot in #233
- check hashes the working copy in one git call instead of seven by @haksolot in #234
- A corpus outside the tree is found by a declaration keyed on its identity by @haksolot in #235
- init --at creates a detached corpus and declares it, config --user edits it by @haksolot in #236
- An entity accounts for its content by hash, and the count stays where it closes by @haksolot in #237
- Re-point the citations two ratifications left superseded by @haksolot in #238
- Profile the per-entity phase of check, and file what it names by @haksolot in #239
- A correction reaches a task that is settled by @haksolot in #240
- Rest the never-truncated guarantee on the reason that survives by @haksolot in #242
- Measure what consolidating identically-scoped decisions would return by @haksolot in #243
- Widen two restatements of the log claim rule to the rule itself by @haksolot in #241
- The attention budget is the human reader's by @haksolot in #244
- check reports the prose identifiers that name nothing by @haksolot in #245
- Serve context --json under the attention budget by @haksolot in #246
- Accept names the source citations it just orphaned by @haksolot in #247
- Narrow the history walk to the paths a dead scope asks about by @haksolot in #248
- A closed task is not asked to close down a chain it already closed by @haksolot in #249
- Section 4 gains read, and the suite declares the gap until it ships by @haksolot in #250
- ank read records that a person read an entity by @haksolot in #251
- The tree walk stops at another checkout by @haksolot in #252
- Plan four subjects: the protocol surface, the welcome, the reader, the daemon by @haksolot in #253
- The release carries the protocol surface, in every archive and every package by @haksolot in #257
- The ank logo is drawn to a terminal, and to nothing else by @haksolot in #256
- A client is told how to reach the protocol surface, in a form it can paste by @haksolot in #255
- declare tui in the Commands block, in a proposed successor to SPEC-7813 by @haksolot in #254
- Place ank-mcp beside ank in both installers by @haksolot in #258
- A watcher that keeps declared corpora warm and answers nothing by @haksolot in #259
- The workspace stops citing a spec the ratification superseded by @haksolot in #260
- The installer offers the skills, and declining costs the install nothing by @haksolot in #261
- The watcher mirrors refs/ank/* and moves nothing else by @haksolot in #262
- amend refuses a scope opening on a list marker, and names the way back by @haksolot in #263
- ank tui opens the corpus, and closes it having written nothing by @haksolot in #265
- The probe counts each offer by its own question by @haksolot in #266
- The installer's second offer hands three prompts that adopt ank where there is already code by @haksolot in #264
- File the task on ank refs that drift out of sight by @haksolot in #267
- done: TASK-7a58ebe12ca6, proof commit:1cda7a8 by @haksolot in #270
- status names how far the checkout's ank refs have drifted from the remote by @haksolot in #268
- The reader acts, and every refusal it shows is the CLI's own by @haksolot in #269
- A change becomes an event, and the reader repaints instead of polling by @haksolot in #271
- The ratification queue is worked from the reader, and the signature stays the person's by @haksolot in #272
- Plan: one executable, and a protocol surface that speaks for several corpora by @haksolot in #273
- Repair main: re-point the citations the two supersessions orphaned, and close two scope gaps by @haksolot in #274
- Section 4 gains mcp and watch, and the suite declares them not yet dispatched by @haksolot in #275
- claim names the live claims this identity holds in the corpora the reader declared by @haksolot in #276
- The workspace stops citing the CLI surface document this supersession retires by @haksolot in #277
- ank mcp dispatches, and the sibling binary is gone by @haksolot in #278
- A protocol surface call names its corpus, and reaches no corpus nobody declared by @haksolot in #279
- ank watch dispatches, and the watcher stops being a binary nothing ships by @haksolot in #280
- Every route carries one executable, and the machinery for the second is removed by @haksolot in #281
- File the three the distribution task flagged rather than reached for by @haksolot in #282
- The README stops promising a second binary by @haksolot in #283
- The integration guide stops saying several repositories is several servers by @haksolot in #284
- The protocol surface reports the version the tag gates, not the library's by @haksolot in #285
- Plan: the reader becomes a ratatui application, in the shape lazygit gave the idea by @haksolot in #286
- The workspace stops citing the presentation decision this supersession retires by @haksolot in #288
- Plan: a supersession does not land while the workspace still cites what it retires by @haksolot in #287
- accept refuses a supersession the workspace still cites, and check reports it by @haksolot in #289
- The worked example in the integration guide is bytes the binary produced by @haksolot in #290
- The reader draws with ratatui and reads keystrokes with crossterm by @haksolot in #291
- Two abbreviated citations move to the decision that carries the sentence by @haksolot in #292
- What a status means moves to one table, and the CLI still paints it byte for byte by @haksolot in #293
- The reader is panels with focus, in the shape lazygit gave the idea by @haksolot in #294
- Every write is shown as a command line before one key runs it by @haksolot in #295
- The reader paints the shared table, and NO_COLOR reaches it by @haksolot in #296
- The reader answers a person holding a phone by @haksolot in #297
- Plan the reader's redesign: one decision and ten tasks by @haksolot in #298
- The bindings are one table, and the reader reads it back by @haksolot in #301
- Structure is box-drawing, and ASCII where the terminal says it is dumb by @haksolot in #299
- The frontmatter is a field block, and the constraints are rows in it by @haksolot in #300
- Ratify ADR-c07e2694f0e1, and move the workspace's citations with it by @haksolot in #302
- The key list is an overlay, and every line of it is a target by @haksolot in #303
- The verbs take the letters, and the typed line goes by @haksolot in #304
- The chrome collapses to a header and the panels by @haksolot in #305
- The reader makes an entity by @haksolot in #306
- Record the two documentation drifts nobody's perimeter reached by @haksolot in #307
- An edit names its field, and close, attest and read are reachable by @haksolot in #308
- The reader reads and sets the config by @haksolot in #309
- Propose that a pty result is evidence only after a workspace build by @haksolot in #310
- Ratify ADR-93d8ef477c00 by @haksolot in #312
- The note is measured against the table, and the diagram is the frame (TASK-a836fdb2fca2) by @haksolot in #311
- Plan the reader's redesign: two decisions and fourteen tasks by @haksolot in #313
- Every row of find --json says when it was created, and which corpus answered by @haksolot in #314
- The reader reads JSON with a parser for JSON by @haksolot in #315
- A test fixture leaves nothing behind, and the next run collects what a killed one left by @haksolot in #316
- The reader draws before it reads by @haksolot in #317
- The ratification reaches main through a pull request by @haksolot in #318
- The premise that no pull request stood in front of accept is retired by @haksolot in #319
- The unit tests under src leave nothing behind either by @haksolot in #320
- The reader is one region: a list, and the document a row opens over it by @haksolot in #321
- status counts what it reports without reading the corpus to do it by @haksolot in #322
- The order is the work that is alive, then what waits for a signature, then what moved last by @haksolot in #323
- One function composes a row, and a test refuses a second one by @haksolot in #324
- TASK-d58efe37eb7b is done, proof commit:2817a8c by @haksolot in #326
- A search narrows as it is typed, and the line to compose goes with the grammar that read it by @haksolot in #327
- one question is one process, and the plane is read once by @haksolot in #325
- The temp-file follow-up stops waiting on the task it unblocks by @haksolot in #328
- a log entry is read under its entity, and is never a row of the list by @haksolot in #329
- Every process the CLI suite spawns writes inside the run's own root by @haksolot in #330
- TASK-02350943e2b1 waits on the crate its last file belongs to by @haksolot in #331
- TASK-02350943e2b1 is released, with what the measurement found by @haksolot in #332
- Every process the TUI suite spawns writes inside the run's own root by @haksolot in #333
- The wheel moves the view, and the bar is drawn where there is overrun by @haksolot in #334
- TASK-d712d7f9a326 is done, with what the measurement found by @haksolot in #335
- TASK-02350943e2b1: the suite's children write inside the run's own root, measured by @haksolot in #336
- TASK-ac2ff41162c6: all four temporary-file families are gone, measured by @haksolot in #337
- The kind in force is written in the header, and the cell that writes it is a target by @haksolot in #338
- TASK-12bd5acbf706 is done, with the proof the merge already held by @haksolot in #339
- One press chooses a row, and two on the same row open it by @haksolot in #340
- TASK-42de0df951a4 is done by @haksolot in #341
- The workspace cites the decision that binds it, and the supersession can land by @haksolot in #342
- TASK-73b1eea6cecb is done, with the proof the merge already held by @haksolot in #343
- ratify ADR-559eebf5c6f5 by @haksolot in #344
- The ratification recipe names the head branch it just left by @haksolot in #345
- wave34/filter once per frame by @haksolot in #346
- Plan the process cost of a verb: one decision and one task by @haksolot in #347
- wave35/signatures in one batch by @haksolot in #348
- ratify ADR-cc65f1388a71 by @haksolot in #349
- What a day of parallel agents taught the guide and the skills by @haksolot in #350
- A run pays once for what it answers by @haksolot in #352
- fix/until returns what it matched by @haksolot in #353
- File the fixture that lets git repack a corpus under a test by @haksolot in #351
- attest reads the proofs it already wrote by @haksolot in #354
- The licence every manifest declares is the one that was ratified by @haksolot in #355
- The licence names its owner and its year by @haksolot in #356
- wave36/fixtures are not maintained by @haksolot in #357
- The installers draw the mark, not a fence of hashes by @haksolot in #358
- Plan: a task is born with the verifiers the repository declares by @haksolot in #359
- ratify ADR-443590981e41 by @haksolot in #360
- CLAUDE.md: the Proof section stops teaching the unverified close by @haksolot in #361
- A task is born with the verifiers the repository declares by @haksolot in #362
- A doc comment and a bare #[test] in human.rs name a test that is not there by @haksolot in #363
- The config reader refuses on the schema, not on the first field it does not know by @haksolot in #364
- The nine remaining fixture sites leave git maintenance off by @haksolot in #365
- 0.7.0 by @haksolot in #366
Full Changelog: v0.6.0...v0.7.0