-
Notifications
You must be signed in to change notification settings - Fork 3
Milestones
List view
v1.1 — CLI surface completion, library follow-ups, push daemon hardening. Shipped 2026-05-16.
No due date•12/12 issues closedTypeScript rewrite of the JS core + CLI. Purges legacy classes, adds Transaction, typed Store API, JSON Schema validation, RFC 7396 patch, first-class secondary indexing, push daemon, error taxonomy, modern test harness. Hologit JS substrate stays — holo-tree (Rust) migration is 1.1 (see #127). --- ## Path to 1.0 Specs in [`specs/`](https://github.com/JarvusInnovations/gitsheets/tree/develop/specs) are the source of truth; each phase implements against the relevant spec rather than designing in the PR. ### Phase 1 — Substrate (sequential) The TypeScript foundation. Nothing else compiles until this lands. - **PR a — Error taxonomy (#136)** — smallest, isolated. Lands first so every later phase throws the typed classes from day one. - **PR b — Purge & scaffold (part of #128)** — delete Vue frontend, HTTP server, legacy `GitSheets.js`, Cypress. `"type": "module"`, `tsconfig strict`, `exports` map, `bin/gitsheets`. Test harness (#137) wired up here. - **PR c — Port `Repository` + `Sheet` (part of #128)** — against `specs/api/repository.md` and `specs/api/sheet.md`. Folds in subsumed bugs #19 (fresh-repo), #14 (invalid-data path render), #105 (multi-variable path components). Re-enable the blob-hash cache correctly (closes #138 as subsumed). - **PR d — Port CLI (part of #128)** — `upsert`, `query`, `read`, `edit`, `normalize`. `init` / `infer` / `migrate-config` land with their feature PRs. Exit gate: `npm i gitsheets` + `import { openRepo } from 'gitsheets'` works in a fresh TS project. `/audit-spec-drift` clean. ### Phase 2 — Core primitives (sequential) - **#129 — Transaction class** — `specs/api/transaction.md` + `specs/behaviors/transactions.md`. Required by #132, #133, and the cleanest version of #131/#134. - **#130 — JSON Schema validation + Standard Schema layering** — `specs/behaviors/validation.md`. Includes `infer` and `migrate-config` CLI commands. ### Phase 3 — Capability fan-out (parallel) Four independent branches once Phase 2 is in. - **#131 — Typed Store + discovery** — `specs/api/store.md` - **#133 — Patch API (RFC 7396)** — `specs/behaviors/patch-semantics.md`. Removes `deepmerge` from `package.json`. - **#134 — Secondary indexing** — `specs/behaviors/indexing.md` - **#132 — Push daemon** — `specs/behaviors/push-sync.md` ### Phase 4 — Wrap-up - **#141 — Docs overhaul** — recipes extracted from real tests, so this lands after the features stabilize. Tag `v1.0.0`, close the milestone. The 1.0 cut happens implicitly per #128. ### Out-of-milestone decisions - **#138** — fold the fix into the Phase 1 `Sheet` port; close as subsumed. - **#139, #143, #135, #61** — backlog. Re-evaluate after the milestone closes. ### Risks - Long-lived #128 branch — use a `1.0-substrate` integration branch with sub-PRs to keep reviews small. - `migrate-config` breaking known consumer configs — test against real `.gitsheets/*.toml` before merging. - Spec drift during a fast rewrite — run `/audit-spec-drift` at each phase exit gate, not just before release.
No due date•10/10 issues closed