docs: story frontmatter + Dataview board views
- 28 story files gain YAML frontmatter: iteration id, status (mirrors folder), chain position (7 files, positions 1-6) - board-views.md: Dataview queries (not-done, by-status lanes, chain order, active); Kanban caveat — view only, frontmatter is source of truth, folder move + status key change together - board points at the views Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
e7ca2fdd7c
commit
ca2ed96e49
30 changed files with 217 additions and 0 deletions
|
|
@ -26,6 +26,10 @@ rejection in [`discarded.md`](../plan/discarded.md) with its reason.
|
|||
|
||||
Statuses: ✅ **done** · 🔄 **in progress** · ⬜ **pending** · ⏸ **hold**
|
||||
|
||||
Story files carry YAML frontmatter (`iteration`/`status`/`chain`) — the
|
||||
machine-readable truth behind this board; live Obsidian Dataview views:
|
||||
[`board-views.md`](board-views.md) (Kanban = view only, never edits status).
|
||||
|
||||
---
|
||||
|
||||
## ▶ NEXT PLAN
|
||||
|
|
|
|||
66
docs/stories/board-views.md
Normal file
66
docs/stories/board-views.md
Normal file
|
|
@ -0,0 +1,66 @@
|
|||
# Live board views (Obsidian Dataview)
|
||||
|
||||
Every story iteration file carries YAML frontmatter — **the frontmatter
|
||||
is the source of truth**:
|
||||
|
||||
```yaml
|
||||
---
|
||||
iteration: "8" # immutable id (string: "7b", "9b" exist)
|
||||
status: in-progress # done | in-progress | refine | hold — mirrors its folder
|
||||
chain: 1 # concurrency-chain position, chain stories only (1–6)
|
||||
---
|
||||
```
|
||||
|
||||
The folder move IS the status change: moving a story between `done/`,
|
||||
`in-progress/`, `refine/`, `hold/` must update its `status:` in the same
|
||||
change — the two never disagree. The prose board
|
||||
([`00-status.md`](00-status.md)) stays the standup narrative; these
|
||||
queries are the live views over the same facts.
|
||||
|
||||
Adjust the `FROM` path to your vault root (queries below assume the
|
||||
vault opens at the repo root).
|
||||
|
||||
## Everything not done, chain order first
|
||||
|
||||
```dataview
|
||||
TABLE iteration, status, chain
|
||||
FROM "docs/stories/language-runtime-database"
|
||||
WHERE status != "done"
|
||||
SORT chain ASC, iteration ASC
|
||||
```
|
||||
|
||||
## Grouped by status (the kanban lanes, as data)
|
||||
|
||||
```dataview
|
||||
TABLE rows.file.link AS story, rows.iteration AS iteration
|
||||
FROM "docs/stories/language-runtime-database"
|
||||
WHERE status != "done"
|
||||
GROUP BY status
|
||||
```
|
||||
|
||||
## The concurrency chain, in execution order
|
||||
|
||||
```dataview
|
||||
TABLE iteration, status
|
||||
FROM "docs/stories/language-runtime-database"
|
||||
WHERE chain
|
||||
SORT chain ASC
|
||||
```
|
||||
|
||||
## Active right now
|
||||
|
||||
```dataview
|
||||
LIST
|
||||
FROM "docs/stories/language-runtime-database"
|
||||
WHERE status = "in-progress"
|
||||
```
|
||||
|
||||
## Kanban caveat
|
||||
|
||||
The Kanban plugin stores board state in its own markdown file — a
|
||||
second copy of status. To keep frontmatter the single source of truth:
|
||||
**use Dataview for querying; treat any Kanban board as a VIEW, never
|
||||
the place status is edited.** Status changes happen by moving the story
|
||||
file between folders + updating its `status:` key (one commit); a
|
||||
Kanban card drag that only rewrites the Kanban file is a lie the next
|
||||
query won't see.
|
||||
|
|
@ -1,3 +1,8 @@
|
|||
---
|
||||
iteration: "1"
|
||||
status: done
|
||||
---
|
||||
|
||||
# Iteration 1 — the principles doc
|
||||
|
||||
> Format: `product/story-iteration-template`. Part of
|
||||
|
|
|
|||
|
|
@ -1,3 +1,8 @@
|
|||
---
|
||||
iteration: "2"
|
||||
status: done
|
||||
---
|
||||
|
||||
# Iteration 2 — VM core (`wovm`)
|
||||
|
||||
> Format: `product/story-iteration-template`. Part of
|
||||
|
|
|
|||
|
|
@ -1,3 +1,8 @@
|
|||
---
|
||||
iteration: "3"
|
||||
status: done
|
||||
---
|
||||
|
||||
# Iteration 3 — compiler front (`woc`)
|
||||
|
||||
> Format: `product/story-iteration-template`. Part of
|
||||
|
|
|
|||
|
|
@ -1,3 +1,8 @@
|
|||
---
|
||||
iteration: "4"
|
||||
status: done
|
||||
---
|
||||
|
||||
# Iteration 4 — single binary end-to-end
|
||||
|
||||
> Format: `product/story-iteration-template`. Part of
|
||||
|
|
|
|||
|
|
@ -1,3 +1,8 @@
|
|||
---
|
||||
iteration: "5"
|
||||
status: done
|
||||
---
|
||||
|
||||
# Iteration 5 — language surface (Haxe-parity adoptions)
|
||||
|
||||
> Format: `product/story-iteration-template`. Part of
|
||||
|
|
|
|||
|
|
@ -1,3 +1,8 @@
|
|||
---
|
||||
iteration: "6"
|
||||
status: done
|
||||
---
|
||||
|
||||
# Iteration 6 — program mode + systems stdlib
|
||||
|
||||
> Format: `product/story-iteration-template`. Part of
|
||||
|
|
|
|||
|
|
@ -1,3 +1,8 @@
|
|||
---
|
||||
iteration: "7"
|
||||
status: done
|
||||
---
|
||||
|
||||
# Iteration 7 — log-watcher proof workload
|
||||
|
||||
> Format: `product/story-iteration-template`. Part of
|
||||
|
|
|
|||
|
|
@ -1,3 +1,8 @@
|
|||
---
|
||||
iteration: "7b"
|
||||
status: done
|
||||
---
|
||||
|
||||
# Iteration 7b — inferred GC + incremental mark-sweep
|
||||
|
||||
> Format: `product/story-iteration-template`. Part of
|
||||
|
|
|
|||
|
|
@ -1,3 +1,8 @@
|
|||
---
|
||||
iteration: "9"
|
||||
status: done
|
||||
---
|
||||
|
||||
# Iteration 9 — database engine
|
||||
|
||||
> Format: `product/story-iteration-template`. Part of
|
||||
|
|
|
|||
|
|
@ -1,3 +1,8 @@
|
|||
---
|
||||
iteration: "9b"
|
||||
status: done
|
||||
---
|
||||
|
||||
# Iteration 9b — `@table`, relations, and language-integrated query
|
||||
|
||||
> Format: `product/story-iteration-template`. Part of
|
||||
|
|
|
|||
|
|
@ -1,3 +1,8 @@
|
|||
---
|
||||
iteration: "15"
|
||||
status: done
|
||||
---
|
||||
|
||||
# Iteration 15 — dependencies: `wo.toml [deps]`, git fetch, `wo.lock`
|
||||
|
||||
> Format: `product/story-iteration-template`. Part of
|
||||
|
|
|
|||
|
|
@ -1,3 +1,8 @@
|
|||
---
|
||||
iteration: "16"
|
||||
status: done
|
||||
---
|
||||
|
||||
# Iteration 16 — the web framework: a `.wo` library, HTTP/1.1 behind a proxy
|
||||
|
||||
> Format: `product/story-iteration-template`. Part of
|
||||
|
|
|
|||
|
|
@ -1,3 +1,8 @@
|
|||
---
|
||||
iteration: "17"
|
||||
status: done
|
||||
---
|
||||
|
||||
# Iteration 17 — library projects and dependency privacy (`kind`, `internal/`)
|
||||
|
||||
> Format: `product/story-iteration-template`. Part of
|
||||
|
|
|
|||
|
|
@ -1,3 +1,8 @@
|
|||
---
|
||||
iteration: "19"
|
||||
status: done
|
||||
---
|
||||
|
||||
# Iteration 19 — the missing scalar types: Float and Bytes
|
||||
|
||||
> Format: `product/story-iteration-template`. Part of
|
||||
|
|
|
|||
|
|
@ -1,3 +1,8 @@
|
|||
---
|
||||
iteration: "18"
|
||||
status: hold
|
||||
---
|
||||
|
||||
# Iteration 18 — framework v2: memory-rich features over the embedded database
|
||||
|
||||
> **Scope label (2026-08-20): this iteration is FRAMEWORK V2.** Framework
|
||||
|
|
|
|||
|
|
@ -1,3 +1,8 @@
|
|||
---
|
||||
iteration: "20"
|
||||
status: hold
|
||||
---
|
||||
|
||||
# Iteration 20 — cross-program tables: attach to a running program's database
|
||||
|
||||
> Format: `product/story-iteration-template`. Part of
|
||||
|
|
|
|||
|
|
@ -1,3 +1,8 @@
|
|||
---
|
||||
iteration: "21"
|
||||
status: hold
|
||||
---
|
||||
|
||||
# Iteration 21 — keypair authentication for cross-program attach
|
||||
|
||||
> Format: `product/story-iteration-template`. Part of
|
||||
|
|
|
|||
|
|
@ -1,3 +1,8 @@
|
|||
---
|
||||
iteration: "26"
|
||||
status: hold
|
||||
---
|
||||
|
||||
# Iteration 26 — blue-green in-runtime deployment
|
||||
|
||||
> Format: `product/story-iteration-template`. Part of
|
||||
|
|
|
|||
|
|
@ -1,3 +1,8 @@
|
|||
---
|
||||
iteration: "27"
|
||||
status: hold
|
||||
---
|
||||
|
||||
# Iteration 27 — query grammar, driven by real embedded-DB corpora
|
||||
|
||||
> Format: `product/story-iteration-template`. Part of
|
||||
|
|
|
|||
|
|
@ -1,3 +1,8 @@
|
|||
---
|
||||
iteration: "28"
|
||||
status: hold
|
||||
---
|
||||
|
||||
# Iteration 28 — skillhost: a host-shaped workload, and the capability gaps it exposes
|
||||
|
||||
> Format: `product/story-iteration-template`. Part of
|
||||
|
|
|
|||
|
|
@ -1,3 +1,8 @@
|
|||
---
|
||||
iteration: "29"
|
||||
status: hold
|
||||
---
|
||||
|
||||
# Iteration 29 — compile-time metaprogramming (derive from the class table)
|
||||
|
||||
> Format: `product/story-iteration-template`. Part of
|
||||
|
|
|
|||
|
|
@ -1,3 +1,9 @@
|
|||
---
|
||||
iteration: "8"
|
||||
status: in-progress
|
||||
chain: 1
|
||||
---
|
||||
|
||||
# Iteration 8 — shard-actor runtime (the 8+11 concurrency arc, part 1)
|
||||
|
||||
> Format: `product/story-iteration-template`. Part of
|
||||
|
|
|
|||
|
|
@ -1,3 +1,9 @@
|
|||
---
|
||||
iteration: "11"
|
||||
status: in-progress
|
||||
chain: 1
|
||||
---
|
||||
|
||||
# Iteration 11 — fibers (the 8+11 concurrency arc, part 2)
|
||||
|
||||
> Format: `product/story-iteration-template`. Part of
|
||||
|
|
|
|||
|
|
@ -1,3 +1,9 @@
|
|||
---
|
||||
iteration: "22"
|
||||
status: refine
|
||||
chain: 2
|
||||
---
|
||||
|
||||
# Iteration 22 — durability proof, throughput, and scale under load
|
||||
|
||||
> Format: `product/story-iteration-template`. Part of
|
||||
|
|
|
|||
|
|
@ -1,3 +1,9 @@
|
|||
---
|
||||
iteration: "23"
|
||||
status: refine
|
||||
chain: 5
|
||||
---
|
||||
|
||||
# Iteration 23 — io_uring group-commit write path
|
||||
|
||||
> Format: `product/story-iteration-template`. Part of
|
||||
|
|
|
|||
|
|
@ -1,3 +1,9 @@
|
|||
---
|
||||
iteration: "24"
|
||||
status: refine
|
||||
chain: 4
|
||||
---
|
||||
|
||||
# Iteration 24 — chat: the WebSocket pub/sub driving workload
|
||||
|
||||
> Format: `product/story-iteration-template`. Part of
|
||||
|
|
|
|||
|
|
@ -1,3 +1,9 @@
|
|||
---
|
||||
iteration: "31"
|
||||
status: refine
|
||||
chain: 3
|
||||
---
|
||||
|
||||
# Iteration 31 — actor lifecycle: request/response, backpressure, death, timers
|
||||
|
||||
> Format: `product/story-iteration-template`. Part of
|
||||
|
|
|
|||
|
|
@ -1,3 +1,9 @@
|
|||
---
|
||||
iteration: "32"
|
||||
status: refine
|
||||
chain: 6
|
||||
---
|
||||
|
||||
# Iteration 32 — WAL checkpoint: disk space reclamation and bounded replay
|
||||
|
||||
> Format: `product/story-iteration-template`. Part of
|
||||
|
|
|
|||
Loading…
Reference in a new issue