Skip to content

Architecture: Make FileStore's JSON serialization contract explicit - #159

Merged
jonbaldie merged 2 commits into
mainfrom
fleet/worktree-jonbaldie-queue-158
Oct 9, 2026
Merged

jonbaldie merged 2 commits into
mainfrom
fleet/worktree-jonbaldie-queue-158

Conversation

@jonbaldie

Copy link
Copy Markdown
Owner

Summary

  • Constrain FileStore<T> to the existing JsonValue type and document its JSON persistence contract.
  • Keep QueueStore<T> and MemoryStore<T> generic; update JSON persistence fixtures to use JSON-compatible types.
  • Add compile-time rejection coverage for FileStore<Date>, nested JSON close/reload coverage, and exact JSON-lines format assertions.

Verification

  • deno check main.ts tests/*.ts fuzz/deep_fuzz.ts
  • deno test --allow-read --allow-write --allow-net --allow-env --allow-run tests/persist_test.ts tests/manager_test.ts (87 passed)
  • deno run --allow-read --allow-write --allow-net --allow-env --allow-run fuzz/deep_fuzz.ts (192 checks)
  • npm run quality:production
  • Full suite passed once (373 tests). A later local rerun failed only the three compiled-binary startup tests with empty child output; the targeted and production checks pass. Awaiting the PR CI run.

Closes #158

@jonbaldie
jonbaldie merged commit 1c2c3e9 into main Oct 9, 2026
4 checks passed
@jonbaldie
jonbaldie deleted the fleet/worktree-jonbaldie-queue-158 branch October 9, 2026 10:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Architecture: Make FileStore's JSON serialization contract explicit

1 participant