mirror of
https://github.com/olehomelchenko/astrolabe.git
synced 2026-08-08 02:02:33 +00:00
Mark M4 (Chart Builder) and M5 (Settings + Import/Export) done in the plan
This commit is contained in:
@@ -49,8 +49,8 @@ doc before implementing.
|
||||
| **M1.5** | Visual design foundation ✅ | Apply the design language: tokens, IBM Plex, restyled M1 surfaces, chart theme | [arch 09](architecture/09-visual-design.md) |
|
||||
| **M2** | Editor robustness ✅ | Draft/Published, validation, schema autocomplete, fit modes | §03D–E, §04, §07(editor) |
|
||||
| **M3** | Datasets ✅ | Named reusable data + reference resolution in preview | §05, §03F, §09B |
|
||||
| **M4** | Chart Builder | No-JSON chart composition from a dataset | §06 |
|
||||
| **M5** | Settings + Import/Export | Preferences + workspace backup/transfer | §07, §08, §09C |
|
||||
| **M4** | Chart Builder ✅ | No-JSON chart composition from a dataset | §06 |
|
||||
| **M5** | Settings + Import/Export ✅ | Preferences + workspace backup/transfer | §07, §08, §09C |
|
||||
| **M6** | Shell polish | Resize/toggle panes, routing, shortcuts, toasts, a11y, offline | §01, §10 |
|
||||
|
||||
**MVP boundary = end of M1** (a genuinely usable single-user chart authoring loop).
|
||||
@@ -284,7 +284,7 @@ the reference.
|
||||
|
||||
---
|
||||
|
||||
## M4 · Chart Builder
|
||||
## M4 · Chart Builder ✅ (done)
|
||||
|
||||
**Goal:** no-JSON chart composition from a dataset → a new snippet.
|
||||
|
||||
@@ -326,6 +326,12 @@ and chose the **Tier B "smart + guarded"** design: smart default mark for the da
|
||||
valid-type-locked field-type menus, Size-channel discipline, and non-blocking guidance.
|
||||
The convergent rules and citations live in that doc; the spec (§06) was amended to match.
|
||||
|
||||
**Verified:** `typecheck` + `test` green — the pure `chart-builder.ts` assembler
|
||||
(`chart-builder.test.ts`: mark/channel/type permutations, unmapped-channel omission,
|
||||
validation gate). The Chart Builder modal is wired through the registry, launched from a
|
||||
selected dataset (`DatasetsModal` → `openModal('chartBuilder')`). Data-aware
|
||||
cardinality/extent profiling + chart warnings landed (A3/A4).
|
||||
|
||||
---
|
||||
|
||||
## M4.5 · Snippet-library consolidation ✅ (done)
|
||||
@@ -368,7 +374,7 @@ entries).
|
||||
|
||||
---
|
||||
|
||||
## M5 · Settings + Import/Export
|
||||
## M5 · Settings + Import/Export ✅ (done)
|
||||
|
||||
**Goal:** preferences and whole-workspace backup/transfer.
|
||||
|
||||
@@ -409,6 +415,12 @@ entries).
|
||||
- Change theme/debounce/date-format → takes effect; Cancel reverts; Reset confirms.
|
||||
- Export → reimport into a populated workspace merges without overwrite; renames reported.
|
||||
|
||||
**Verified:** `typecheck` + `test` green — `import-normalize` (accepted shapes + merge/
|
||||
collision/rename), `export-envelope` (round-trip), `settings` (load-with-fallback),
|
||||
`UserSettingsStore`, `ux-prefs`. Distributed per-pane settings shipped as `SettingsPopover`
|
||||
disclosures (editor toolbar, preview, library) applying live; header Import/Export wired
|
||||
through `services/transfer.ts` (→ `normalizeImport` / envelope build), no modal.
|
||||
|
||||
---
|
||||
|
||||
## M6 · Shell polish & non-functional
|
||||
|
||||
Reference in New Issue
Block a user