|
| 1 | +Gaps (zig/ vs research/zig-cr) |
| 2 | +- Docs mismatch: zig/README.md:5 still claims partial C oracle + missing alter, but research/zig-cr/92-gap-backlog.md:7 says MVP complete and 154/154 passing. This is a real “gap” because it will mislead anyone trying to use/validate the Zig implementation. |
| 3 | +- Performance hotspot items not yet done (from research/zig-cr/11-performance-hotspots.md:6 and tracked in research/zig-cr/92-gap-backlog.md:161): |
| 4 | + - PRAGMA schema_version-keyed invalidation caching |
| 5 | + - PRAGMA data_version amortization (per-transaction / per-query-loop flag) |
| 6 | + - sqlite3_prepare_v3(...SQLITE_PREPARE_PERSISTENT...) use for long-lived statements |
| 7 | +- Web multi-tab “Phase 2” items still open (called out in research/zig-cr/92-gap-backlog.md:186 and motivated by research/zig-cr/96-proposal-multitab-wasm-sqlite-crsqlite.md:10): |
| 8 | + - Service Worker fallback (when SharedWorker missing) |
| 9 | + - Reactive query subscriptions / notifications surface (more than “manual re-query”) |
| 10 | +- Cross-platform packaging gaps (tracked in research/zig-cr/92-gap-backlog.md:214): |
| 11 | + - macOS universal binary (aarch64+x86_64) |
| 12 | + - Windows .dll build |
| 13 | + - iOS/Android static embedding guide |
| 14 | +- Big future proposals not implemented (expected): the “threadsafe-by-default / mesh” family (research/zig-cr/99-threadsafe-sqlite-proposals.md:31, research/zig-cr/100-proposal-node-multiprocess-crsqlite-mesh.md:19, research/zig-cr/101-proposal-universal-crsqlite-mt-js.md:34, research/zig-cr/102-proposal-crsqlite-global-mesh.md:5) has no corresponding implementation in zig/ yet. |
| 15 | +Wishes review (.wishes/) |
| 16 | +- /.wishes/spec-first-RGRTDD.md:1 asks for new “realistic” spec/tests-as-examples now that we’re green everywhere. |
| 17 | +- /.wishes/stop-before-typescript.md:1 is an explicit constraint: do not race ahead on new TS work; if we feel pressure to do TS-heavy features, we should write it down and mark it blocked. |
| 18 | +Tasks review (.tasks/) |
| 19 | +- Only one backlog task exists: /.tasks/backlog/TASK-026-A-macos-universal-binary.md:1. |
| 20 | +- It’s directionally right, but the implementation notes are currently underspecified relative to zig/build.zig’s default single zig-out/ install prefix (zig/build.zig:46). To build two mac targets without stomping outputs, the task should explicitly require separate --prefix (and likely separate cache dirs) per target before lipo. |
| 21 | +Proposed next concurrent subagent assignments (do not assign yet) |
| 22 | +1) macOS universal dylib (highest near-term “ship-ability”) |
| 23 | + - Based on existing backlog /.tasks/backlog/TASK-026-A-macos-universal-binary.md:1 |
| 24 | + - Files: zig/Makefile:1 (add make universal or similar), maybe CI workflow later |
| 25 | + - Output verification: lipo -info ... + load-test with sqlite3 via nix |
| 26 | +2) Performance tranche: schema/data version amortization + persistent statements |
| 27 | + - Source: research/zig-cr/11-performance-hotspots.md:6, backlog research/zig-cr/92-gap-backlog.md:161 |
| 28 | + - Files likely centered on zig/src/changes_vtab.zig and wherever we prepare hot statements (plus any stmt cache module) |
| 29 | + - Goal: reduce prepare churn + pragma spam without changing semantics |
| 30 | +3) Windows .dll build reconnaissance + minimal build target (even if not fully CI’d yet) |
| 31 | + - Source: research/zig-cr/92-gap-backlog.md:215 |
| 32 | + - Files: zig/build.zig:1 (target/export correctness), plus a small harness note on how to test load on Windows |
| 33 | + - Outcome: either a real build artifact path or a crisp “blocked by X” statement with next steps |
| 34 | +4) Docs alignment task (small but high leverage) |
| 35 | + - Fix zig/README.md:5 to reflect reality and point at the real acceptance suite location (research/zig-cr/10-test-oracle.md / core/src/*.test.c) |
| 36 | + - This closes the “people can’t tell what’s done” gap immediately |
| 37 | +5) Spec-first “realistic scenarios” tests (non-TS) |
| 38 | + - Convert /.wishes/spec-first-RGRTDD.md:8 into a small set of new harness tests under zig/harness/ that read like executable examples. |
| 39 | + - Keep it Zig/shell first to respect /.wishes/stop-before-typescript.md:1. |
| 40 | + - If any scenario truly demands TS (e.g. SW fallback), we write a blocked wish/task instead of implementing. |
| 41 | +.tasks accuracy fixups (recommend before we start work) |
| 42 | +- Update /.tasks/backlog/TASK-026-A-macos-universal-binary.md:31 to explicitly require per-target zig build with distinct --prefix outputs (so the lipo paths in the task are actually achievable), and clarify whether we expect nix cross-target builds to work on this host or if it needs a remote builder. |
0 commit comments