50 descendants of ed9ad33af19e6eb4
|
2026-07-15
| ||
| 12:45 | Add a tick-stepped two-endpoint network simulator with seeded delay, drop, dup, and payload-derived corruption, so a retried delivery corrupts identically and the sync sweep can replay any fault schedule from its seed. check-in: 7d1ec5b267 user: dmestas tags: cli | |
| 12:42 | Add an out-of-band zig build cov step running merged kcov line coverage over the unit-test binaries filtered to src, so untested code surfaces mechanically without entering the commit gate closed check-in: 0059783eff user: dmestas tags: kcov | |
| 12:31 | Merge trunk back onto cli after integrating A0, keeping the branch aligned for the next transport step. check-in: ff95ec1f7f user: dmestas tags: cli | |
| 12:31 | Merge transport A0 onto trunk: the sans-IO Client.buildRequest and stateless Server.respond, so a client and server converge over buildRequest/respond/consumeReply per sync 3.7/3.8 — the send/answer halves the network transport and simulator will drive without owning IO. check-in: ccfb360f59 user: dmestas tags: trunk | |
| 12:28 | Answer a sync request from ArtifactStore state with the stateless Server.respond, verifying login, ingesting pushed files, satisfying gimmes with content, and announcing holdings and phantoms, so a client and server converge over buildRequest/respond/consumeReply per sync 3.7/3.8 without either owning IO check-in: e4eb6ea8e7 user: dmestas tags: cli | |
| 12:05 | Compose sync requests from client and store state so the transport and simulator can drive the send half without owning IO: buildRequest emits the version pragma, an optional body login, the operation cards, an igot per holding, a gimme per phantom, and a file per queued send per sync 3.2. check-in: e6975d1870 user: dmestas tags: cli | |
| 11:08 | Merge the store count primitive onto cli so the sync request/response composer can enumerate the store. check-in: 76bf611f9d user: dmestas tags: cli | |
| 11:07 | Add a count query to the ArtifactStore boundary returning the entry total, so a sync peer can walk the dense 1..=count rids and classify each as held or phantom to announce its holdings and request what it lacks per sync sections 3.2 and 3.3. check-in: 4c38e8fbd6 user: dmestas tags: trunk | |
| 07:00 | Merge trunk back onto cli after integrating the query slice, so follow-on transport work builds on the aligned tip. check-in: e791084496 user: dmestas tags: cli | |
| 06:59 | Merge the repo-state query slice onto trunk: the leaves, branch, tag, and info commands over a shared read-only repo-view loader, exposing the finished repostate engine through the CLI so a user can inspect leaves, branches, tags, and resolve names without a write path. check-in: 366ee2d629 user: dmestas tags: trunk | |
| 06:54 | Add the info command, resolving NAME through the repo-state section 8.3 procedure and describing the check-in it names — its full artifact ID, its branch per section 6.1 with the configured main-branch of section 6.4 as the fallback, its leaf status per sections 7.1 and 7.4, its primary parent per section 3.2, and each merge parent per section 3.3 — with selection recency-based per section 8.2, so per section 8.5 a name can name a closed or non-leaf check-in that leaves omits. check-in: 6252eda2e6 user: dmestas tags: cli | |
| 05:56 | Add the tag command listing the repository's active symbolic tag names in use with no CHECKIN, or the active tags and their values visible on a resolved CHECKIN, deriving both over the crosslinked repo-view rather than storing them, per repo-state sections 5.1, 5.2, and 2, resolving CHECKIN through the section 8.3 procedure and surfacing sym- names with the reserved prefix stripped. check-in: 45f5ac644f user: dmestas tags: cli | |
| 04:48 | Add the branch command to list the repository's branches name-ascending, marking the checked-out check-in's branch with a leading "*" and closed representatives "(closed)", per repo-state sections 6.1, 6.3, and 6.4, resolving the default branch through the configured main-branch rather than a literal, and lift the shared read-only repo-view loader out of leaves so both verbs open the repository, resolve the checkout, and report failures identically. check-in: a6e2c0fd01 user: dmestas tags: cli | |
| 03:44 | Add the leaves command to enumerate the check-in DAG's open leaves, most-recent first with the current checkout marked, per repo-state sections 7.1, 7.4, and 7.5, over a shared repo-view loader that resolves branch state from the configured main-branch with the section 6.1 trunk fallback. check-in: 0b9d217bfe user: dmestas tags: cli | |
|
2026-07-14
| ||
| 12:16 | Merge trunk into cli with Artifact A.1.2 correction check-in: 01b124075c user: dmestas tags: cli | |
| 12:11 | Integrate Artifact A.1.2 vector correction check-in: 17e0841c30 user: dmestas tags: trunk | |
| 11:53 | Update Artifact A.1.2 SHA3-256 technote vector closed check-in: ead3630a7d user: dmestas tags: artifact-a12-vector-fix | |
| 10:01 | Merge trunk into cli: the uvfile payload bit-gating fix (sync §7.3), so verb work builds on the current integrated state. check-in: 98a0f2c85c user: dmestas tags: cli | |
| 09:54 | Frame the uvfile payload from the FLAGS 0x0001 and 0x0004 bits per sync §7.3, not from the HASH-based deletion test, so a non-compliant card that carries the deletion bit with a real hash and a positive SIZE reads no payload and the receiver stays byte-aligned with the reference; delete-vs-update still keys on HASH. check-in: 7912172df2 user: dmestas tags: trunk | |
| 02:18 | Merge trunk into cli to bring the recovered tree onto the branch: the correctness and RFC-alignment fixes, the sibling test-file layout, and the Ousterhout de-duplication, so follow-on verb and coverage work builds on the integrated state. check-in: 2ce67c9598 user: dmestas tags: cli | |
| 02:13 | Drop two tautological assertions in the push-intent and inbound-gimme predicates: each merely restates the boolean defined on the line directly above it and so can never fail, leaving them as noise rather than a check of any invariant a bug could violate. check-in: eea9f66041 user: dmestas tags: trunk | |
| 01:39 | Cite the flat repostate §8.3 name-resolution procedure on its resolution tests instead of §8.3.N subsection numbers, since §8.3 is a numbered list of forms rather than a set of subsection headings and the per-form intent is already in each test name. check-in: 3d154570ab user: dmestas tags: trunk | |
| 01:26 | Cite artifact §6.2 on the empty-content self-checksum test so the expected MD5 of empty input follows from the self-checksum definition instead of standing without a section reference. check-in: 7ca4474047 user: dmestas tags: trunk | |
| 01:12 | Compile the end-to-end test binary under `zig build test` so a type error in the subprocess-driven e2e file breaks the build instead of rotting undetected, while keeping its ~150-spawn run out of the unit gate. check-in: 7cb4c1b861 user: dmestas tags: trunk | |
| 01:02 | Reject any stored log version this reader never wrote, set the append watermark to the true file length after an extending truncate, honor the read-past-EOF-returns-zero contract in the simulated file, and fold the duplicated frame-header validation into one shared check so the content reader and the open-time scan cannot diverge. check-in: 7fb8e33f9c user: dmestas tags: trunk | |
| 00:04 | Drive the init, add, rm, and commit argument grammars through one table-driven flag scanner so the four near-identical parsers cannot drift apart. check-in: 2487264643 user: dmestas tags: trunk | |
|
2026-07-13
| ||
| 23:17 | Derive the verb vocabulary, dispatch, help routing, and did-you-mean suggestions from a single cli.Verb enum so the dispatched, helpable, and suggestable command sets cannot drift apart. check-in: 4b7f777d92 user: dmestas tags: trunk | |
| 23:01 | Fold commit's checkout- and managed-read failures into the verb-parameterized checkoutFail and managedFail mappers so one mapper renders the B-commit-15 messages shared with the read-only working-tree verbs. check-in: fd76e90b60 user: dmestas tags: trunk | |
| 22:53 | Move the public-surface artifact and repostate tests into their sibling test files, citing the repo-state §4.2 crosslink and §8.3 date-form clauses the repostate cases exercise, so each module keeps only its file-private tests. check-in: cc4cbd9cd9 user: dmestas tags: trunk | |
| 22:35 | Move the update rollback-retention test and its fixtures into the sibling test file, leaving update.zig with only its file-private declarations. check-in: bbdc988561 user: dmestas tags: trunk | |
| 22:14 | Move the §C test asserting persisted RID order follows frame order after a phantom upgrade into the logstore sibling test file, leaving logstore.zig with only its file-private and fuzz-corpus declarations. check-in: f59234f6f1 user: dmestas tags: trunk | |
| 21:28 | Relocate the consumeReply public-surface tests — the Appendix A worked exchanges and the §7.5 private-marker state machine — to the sibling test file so sync.zig holds only its file-private and fuzz-corpus declarations. check-in: 42140c77cd user: dmestas tags: trunk | |
| 20:58 | State the storage engine's framing and crash-recovery invariants directly in the logstore and storage-capability module doc comments so each native storage test carries its oracle in-tree rather than citing an out-of-tree design note. check-in: e4cd62c7a3 user: dmestas tags: trunk | |
| 20:45 | Give the update and diff failure mappers closed error sets so a rolled-back or cleanup-failed update reports its own diagnostic instead of collapsing to a generic input/output error and hiding that the previous working-tree state was retained for recovery. check-in: 133127529a user: dmestas tags: trunk | |
| 20:22 | Capture the working-tree executable bit into each file's F card per §4.7.6 so a chmod +x commits as an x-permission entry and quiesces, instead of reporting M on every diff yet never committing. check-in: eea0c068d1 user: dmestas tags: trunk | |
| 20:05 | Poison the log store when a rollback truncate itself fails so no later append lands at an offset that has diverged from the physical file end, rather than swallowing the error and letting in-memory bookkeeping drift from disk. check-in: 2cebd9179d user: dmestas tags: trunk | |
| 19:45 | Accept a non-canonically fossilized unversioned NAME instead of aborting the exchange, since sync §7.3 licenses no such receiver rejection and artifact §4.3 defines the defossilize decoder as error-free, and parse a cookie login value strictly by the §B.4 url-login-value grammar so fields split only on the literal + separator, escapes are lenient solely under HEXDIG-CI, and a %20 standing in for a separator is rejected. check-in: 3fd2c0ca4c user: dmestas tags: trunk | |
| 19:18 | Abort the exchange on a message card whose visible arity is not the exactly two whitespace-separated tokens sync §11.2 mandates, since a bare or three-to-six-token form is a defined-operator arity failure under §5.2 rather than a silently continued card. check-in: e0535646dc user: dmestas tags: trunk | |
| 19:03 | Gate the private igot no-phantom disposition on the receiver lacking private-content authorization so a granted client interns the hash and creates a phantom to pull the content, per sync §7.5 L2476-2483. check-in: 28a19941cd user: dmestas tags: trunk | |
| 18:41 | Merge trunk into the CLI branch to track the integrated tip for follow-on work check-in: bf454fa2ee user: dmestas tags: cli | |
| 18:39 | Merge the CLI branch onto trunk: the update check-in verb and the private storage/logstore/checkout/update module boundary that keeps the public zit surface narrow, plus the managed working-tree diff check-in: f8a8e02832 user: dmestas tags: trunk | |
| 18:28 | Route the DST fault-injection and storage-sweep modules through the shared zit_storage and zit_logstore modules, completing the private-module wiring so every storage consumer shares one module instance check-in: 779321bc41 user: dmestas tags: cli | |
| 18:26 | Add the update check-in verb as a transactional working-tree replacement: staged materialization with pre-commit rollback, clean-worktree and path/reserved-name/symlink rejection, wired as private storage/logstore/checkout/update modules so the public zit surface stays narrow, with component-contract tests and public end-to-end coverage check-in: d6fed71184 user: dmestas tags: cli | |
| 10:51 | Merge current trunk into CLI branch check-in: efbe075667 user: dmestas tags: cli | |
| 10:14 | Integrate CLI branch into trunk check-in: 43ebdc3cf5 user: dmestas tags: trunk | |
| 04:11 | Merge trunk into CLI branch check-in: 8dab8daae4 user: dmestas tags: cli | |
| 04:09 | Merge managed working-tree diff into trunk check-in: 43599d6694 user: dmestas tags: trunk | |
| 04:02 | Implement managed working-tree diff check-in: 422f25e492 user: dmestas tags: cli | |
| 02:48 | Merge E2E SHA-1 traversal repair into CLI branch check-in: fd39a27ee3 user: dmestas tags: cli | |
| 02:44 | Merge E2E SHA-1 traversal repair into trunk check-in: 00c9bfbeb9 user: dmestas tags: trunk | |
| 02:41 | Cover SHA-1 log parent traversal and clarify synthetic fixtures closed check-in: ed9ad33af1 user: dmestas tags: e2e-tigerstyle | |