Skip to content

Roadmap to 1.0.0 #68

Description

@BorisTyshkevich

Meta/tracking issue + living build plan. Architecture is settled (#88 / ADR-0001); the phases below are ordered so each refactor lands on a stable base and the most-wanted features ship early. Check items off as they land.

Architecture (settled — #88, ADR-0001)

  • State: @preact/signals-core, migrated slice-by-slice. No UI framework (React/Preact/Solid). A Preact spike on the schema panel (spike/preact-schema, ADR-0001 addendum) confirmed a component model removes the in-place-mutation pain but buys a second render paradigm the roadmap doesn't justify.
  • Shape: signals (state) · pure logic in src/core/ · imperative adapters behind injected seams for the hard / third-party / high-frequency-pointer surfaces (editor, EXPLAIN + schema graphs, Chart.js, result grid). Extract a shared primitive (EditorPort, GraphSurface, a result-view registry, Drawer) on the second consumer — not speculatively (CLAUDE.md rule 5).

Build order

Phase 0 — baseline before refactors (cheap, do first)

Phase 1 — finish reactivity (#88)

Phase 2 — near-term wins

Phase 3 — Windows

Phase 4 — editor: CodeMirror 6 + the features it unlocks

Strict sequence — each issue is the foundation of the next: #143#21#84#60.

Phase 5 — schema / data-flow graph

Phase 6 — Dashboard (#149)

Epic: open favorited Library queries as an interactive dashboard in a new tab
(/sql/dashboard). Spec + pinned decisions + sub-phases D1–D8 live in #149. Same architecture
(signals + hyperscript, no framework — reaffirmed against the React mockup); one artifact,
client-side route; auth via one-time postMessage handoff + login fallback. Builds on #134
({name:Type} params / varValues) and the chart core.

Note: this checklist previously had D3/D4 swapped (layout vs. global filters) relative to #149's
own body — corrected here during #152 to match #149, the source of truth for phase order.

Cross-cutting

Release-blockers (1.0 must not ship without)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions