50 descendants of b29428a4e2ba74c9
|
2026-10-21
| ||
| 01:08 |
fix(content): preflight stored bytes with SQLite blob semantics
A BLOB-affinity column can hold TEXT; SQLite length(TEXT) stops at NUL and is not a byte-allocation bound. Cast content to BLOB in metadata and guarded payload reads so malformed dynamically typed values cannot bypass stored-byte preflight. The adversarial TEXT fixture previously read a one-MiB payload and reserved sixteen MiB of inflation before rejecting corruption. Both drivers now reject before any payload read or inflation reservation. check-in: a08e7e9d71 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 01:03 |
fix(sync): isolate prepared fallback cache and cancellation
Never share RID-keyed cache state across prepared service transactions: protocol-fatal responses can roll back after expansion while returning a nil Go error. Reject canceled contexts before acquiring a transaction and propagate observer cancellation instead of serving densely. Reproduce rollback, RID reuse and incorrect content under the replacement hash; verify cancellation and deadline responses do no dense work. Exercise newly shunned payload and basis suppression after prepared-proof invalidation. check-in: 632e7349e6 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 01:03 |
fix(content): bound and prune sparse reference facts
Use metadata preflight and fixed-size inflation for ordinary reference discovery too. Bound artifacts, parser cards, stored bytes and declared expansions before payload and parser allocations. Preserve unknown retention for corrupt compression. Retain only classification fields and structural identities, copying kept tokens so discarded wiki/forum bodies, cluster inventories and metadata cannot be pinned. Compare empty and large-body fixtures and reject oversized expansion reservations. check-in: a3c6ddef9a user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 01:03 |
fix(sync): withhold shunned payloads and clone delta bases
Match Fossil 2.28 send_file and send_compressed_file payload gates. A source-first clone must expand a dependent when its stored basis is shunned rather than forwarding that withheld basis. Preserve private notices, authorization and SHA3 refusal ordering. Exercise real encoded requests through the ordinary handler and Fossil HTTP oracle. Canonical compressed clone can name a shunned public basis without sending it; this server expands instead to preserve its source-first guarantee. check-in: a402aa5cc6 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:54 | feat(checkout): expose nonmutating carried-file recovery selection check-in: 04a8ea0b25 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:54 | fix(deck): reject overflowing W-card sizes before slicing check-in: 6d3755e966 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:53 | fix(sparse): bind checkout recovery to full pending-state snapshots check-in: 0f9775add6 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:52 | fix(checkout): finalize published commits despite late cancellation check-in: f1f8cd6cb8 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:52 | test(sparse): expose selected checkin carried-payload recovery gap check-in: ed971d634b user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:43 | feat(checkout): expose nonmutating context recovery guards check-in: 4c8312ae48 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:43 | test(checkout): cover control-path extraction and data collisions check-in: 59f53f4abc user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:43 | test(conformance): require widen and rerun for outside merge conflicts check-in: 3afd0481ed user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:43 | test(conformance): discover private checkout state in sparse fixtures check-in: 4e00e588c9 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:43 | fix(checkout): carry outside pending bytes across update check-in: 04ddaed6a6 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:43 | fix(checkout): bind undo images to their materialization cone check-in: c06eb7bc22 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:43 | fix(checkout): mark record-only mode outcomes pending for revert check-in: 052b3e87cb user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:43 | fix(checkout): preserve public phantom visibility when filling merge bytes check-in: 31e9096847 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:43 | fix(stash): require widening before replaying excluded paths check-in: d1d2c218c0 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:43 | fix(checkout): preserve wider undo images without escaping cone check-in: 1f215be1a4 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:43 | test(checkout): prove native commit after sparse densification check-in: a95deda46a user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:43 | fix(checkout): migrate legacy sparse records behind private marker check-in: 34d90cea93 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:43 | fix(checkout): protect disk metadata with simulated working storage check-in: 3fda9d3007 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:43 | fix(checkout): match sparse pending merge lifecycle check-in: 3779a280ac user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:43 | fix(checkout): separate sparse managed rows from pending outcomes check-in: c82ec862f2 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:43 | fix(checkout): stage sparse marker transitions before disk changes check-in: cf1e964bf5 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:43 | fix(checkout): isolate newly created sparse checkout metadata check-in: be8abf5ed3 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:43 | test(conformance): keep record-only cases available on wasm check-in: 1d7c669153 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:43 | test(conformance): cover record-only merges and native checkout boundary check-in: 7a7b6bfaee user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:43 | fix(checkout): preserve record-only sparse merge changes check-in: 139d96b210 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:41 | fix(sparse): retain explicit cone widening for future pulls check-in: e7ed09f027 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:36 |
feat(sync): index prepared sparse clone successors
Prepare verified raw references under explicit byte, card, artifact and index-slot budgets before allocating payload expansions. Use request-local cone spans over a cone-independent range index to skip excluded RID gaps without empty clone continuation pages. Keep this internal: selected-content reconstruction still uses dense allocation behavior, ordinary pull still scans inventory, and retaining every tree node is not proof of tree-minimal emission. No public wrapper, capability grammar or client continuation changes. check-in: 065f76e22f user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:30 | fix(sparse): bound local recovery and validate retained closure atomically check-in: 16c802bdd9 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 00:05 |
feat(sync): prototype internal prepared sparse serving lifecycle
Separate immutable cone-independent raw facts from request-local classification. Validate the observer connection, database generation and post-preparation file identity under a bound transaction. Unsupported, stale and mutating requests use dense fallback without cold cone discovery while preserving sparse-origin refusal. Exercise real clone and pull over excluded candidates, same-request writes, observer lifecycle and durable cluster advertisements across restart. Classification and inventory remain whole-store work; this does not close sparse per-round resource bounds or expose a public lifecycle API. check-in: 63e0b940eb user: [email protected] tags: feat/submanifest-reader, main, trunk | |
|
2026-10-20
| ||
| 23:56 | docs(sync): clarify exchange-local avoidance hint observations check-in: e500bfb4e3 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 23:56 | test(conformance): document commit hint conditional applicability check-in: 4436960f72 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 23:56 | test(conformance): verify exchange-local commit hint applicability check-in: 110f44ed85 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 23:56 | test(conformance): execute actual tree cycle and visit guards check-in: 16ce2b350e user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 23:56 | refactor(conformance): bound canonical vector fixture helpers check-in: d3199d183b user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 23:56 | test(conformance): pin canonical sparse rewrite contracts and vectors check-in: d444cbf081 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 23:53 | feat(sparse): add explicit public and CLI required-content recovery check-in: f57ca7de6a user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 23:51 | feat(sparse): recover exact operation-selected payloads safely check-in: 221f0135ce user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 23:39 | docs(sync): clarify exchange-local avoidance hint observations check-in: 8636a61a2e user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 23:38 | fix(sync): withdraw empty-page sparse clone candidate cap check-in: 9448367581 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 23:29 | test(sync): prove prepared observer and cluster durability constraints check-in: 9eb8e3c090 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 23:17 | fix(sparse): preserve elided payloads across canonical recovery check-in: 40cdcdc837 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 22:47 | feat(sparse): recover exact required structural content atomically check-in: 7b478974f3 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 22:36 | fix(sync): bound sparse clone candidate enumeration check-in: 2be3110064 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 21:38 |
perf(manifest): bound repair work by the linked batch (#455)
Propagate tags and apply scheduled leaf rechecks before each link transaction commits. Preserve sparse metadata repair, pretagged merge-parent rechecks, and rollback-safe retries. Tracked in #432. check-in: b38bf23f79 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 21:00 |
fix(verify): audit leaves and parent ancestry (#454)
Use same-branch and arrival-order evidence for leaf validation, validate parent overrides, and match Fossil parent tokenization. Preserve sparse readiness and delta-tree scans within one verification snapshot. Tracked in #433. check-in: 35672aadc7 user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 19:07 |
fix(sync): preserve cleanup after a fatal clone refusal
Keep Fossil's mandatory operation-less second round without accepting any cleanup payload or clearing the refusal. Exercise dense and sparse refusal alongside the existing client compatibility cases. check-in: a453db484d user: [email protected] tags: feat/submanifest-reader, main, trunk | |
| 18:33 | docs(conformance): record partial-tree lifecycle support and remaining limits check-in: b29428a4e2 user: [email protected] tags: feat/submanifest-reader, main, trunk | |