Manifest sanity verified, the full verification set green (including
the wasm release build), the dry-run clean at the publish commit, the
freeze inventory one-way from here. Tagged alkgen-v0.1.0.
- w2-ssr-proof and w2-code-proof: the two consumer-shaped proofs,
parallel by construction (own test binaries, own fixture modules
per the wave-1 convention)
- w2-conformance-battery: the standing verification set, ordered
after the proofs so it consolidates over the final wave-2 tree and
absorbs any stop-and-book findings; folds the wave-1 gate's
reminder (b) (wasm build standing, not ad-hoc)
- review-wave-2: the wave gate, depends on all three
- decomposition record added to docs/plans/implementation.md with
the logistic-ordering rationale; wave-2 status flipped to
decomposed
Verification: taskgraph validate (18 tasks valid); em-dash grep
clean on all changed files
Adopts the sibling wave pattern (alkssh/alkgit) over
decompose-everything-upfront: decompose a wave, implement it, review
gate, decompose the next wave.
Scope authority: v0.1.0 publishes the shared text-generation core
(ADR-001) proven fit for ssr-html via consumer-shaped fixtures through
the public API (ADR-008 machinery equality). Engine-owned template
sets stay out (all three queued targets are OQ-gated); alktype leaves
the dep tree until the bast-codegen set activates.
Waves: 1 core foundations, 2 consumer-shaped proofs + conformance
battery, 3 validation & release (pure-review gate then publish).
Verification: taskgraph validate (14 tasks), em-dash grep clean
- OQ-01/02/03 re-triaged from open to deferred(scope): partitioning,
regeneration, and validation strategies are per-target decisions
owned by each target's emit layer and consumer, not core or
posture-A-wide policy; session analysis preserved in OQ texts
- OQ-05 ownership decided by applying ADR-008 (engine-owned, ships in
alkgen, feature-gated, posture C); blocked-on reframed to alkjs
GPU-layer work so the sequencing is non-circular (alkjs builds on
the core, never the reverse)
- OQ-06 sequencing clarified; stale far-timeline language dropped
- activation queue recorded (ssr-html, wgsl-jit, then codec sets) in
targets.md and overview.md, with downstream dev-utility composition
noted at the overview level
- Preact vs handlebars SSR research outcome recorded in README
- tracker tasks added for oq-01, oq-02, oq-03; oq-05 task updated
Verification: taskgraph validate (7 tasks pass); em-dash grep clean on
touched files; docs-only change, no code touched
Second steer from the 2026-11-06 discussion: the document-vs-code
split carries a false distinction. The core is contexts + templates +
partials to text; HTML, Rust, and WGSL are three data points of the
same shape (handlebars native case, reader POC, alkminer kernel
builder). Per-target residue is only the template set, context shape,
emit posture, and validity pinning. WGSL recorded as confirmed coming
(JS runtime needs codegen generating WGSL); AGENTS.md lifecycle
phrasing aligned.
Principal steer: generalize the shared core across HTML generation
(branch 0), Rust codecs (branch 1), and WGSL/wasm-JIT (branch 3
territory); dev-tool emit demoted from the crate's definition to one
projection. Records the core/per-target split and the render-purity
requirement the wasm JIT fixes for Phase 1; refines OQ-GN-09.
- AGENTS.md: adopt alkssh conventions (conventional commits, small
focused commits, taskgraph section, lifecycle status, verification
grep gate); add convention 12 (no em dashes in prose, U+2014)
- README.md: note the unpaused status and the alkforge SSR consumer
- phase-0.md: alkforge SSR enters as branch 0 (in-library HTML
rendering, two target classes bound the core generality), new
OQ-GN-09 for the SSR library posture, unpause context section,
alktype 0.4.0 revalidation notes
- reader-poc-summary.md: re-validation note for alktype 0.4.0
(parity + bench unchanged); em dashes restructured repo-wide
Adopt the evolved process docs from alkssh (their Phase 0 is the family
reference for SDD practice; adapted here for alkgen):
- sdd_process.md: POC placement two modes (branch mode vs standalone
scratch project), closed frontmatter enum variants (taskgraph 0.1.3)
with the three gotchas, impact table, POC specialist finding-first
deliverables
- agent specs: architect/taskgraph rules for OQ blocker trackers,
implementation-specialist conventions remapped to alkgen (no async,
wasm-clean, preserve_order, strict mode), coordinator spawn constraints
remapped, code-reviewer checks swapped for template/determinism rules,
poc-specialist two-mode workflow
- all adopted/edited files are em-dash-free (AGENTS.md convention 12)
- (b) direct codecs resolved AND validated: generated types+codecs,
ReadResult<Packet>, no serde/serde_json/alktype in output
- benchmark: ~10x faster than Value-shaped generated, ~15-20x faster
than interpreter, ~4x off raw no-alloc baseline (String/Vec allocs)
- F-6: names come from the BAST doc (plan erases $defs names);
OQ-GN-02 refined: plan for semantics, BAST for names
- V{key} variant naming for numeric discriminator keys
- clarification: alkcall is a library others build on; alkgen branches
1+2 are a dev tool generating static files into downstream projects
(protocol crates alktty/alktunnels/sftp, cloud integrations vast.ai/
runpod) from provided schemas (BAST or jsonschema/openapi)
- OQ-GN-01 resolved: module-level output for v1; fragments out
(defeats dev-tool purpose), crate generation out for v1 (composed
from modules later if asked). Residue: file partitioning policy
- OQ-GN-06 reframed: generated files land in projects that don't
depend on alktype today, so dependency footprint is consumer's
choice, not wire-shaped; leaning self-contained, POC decides
- branch 2 reframed: static counterpart of alkhttp from_* adapters
- plans for offsets/sizes (already computed+validated by the engine,
free at generation time since alktype is already a dep), BAST for
descriptive metadata; drift risk inverts into ordinary
dependency-upgrade tracking of alktype's plan API
- residue: exact plan->context projection is the Phase 1 context-
builder spec task
- OQ-GN-03 resolved as posture: interpreter/compiler duplication is
the point (dynamic vs static deployment profiles); alktype near
schema-method floor, ~20x off hand-rolled; alkgen's value prop is
recovering most of that gap. Drift stays the standing risk.
- OQ-GN-08 POC 1 calibration: three-way benchmark (plan-walk vs
generated vs hand-rolled) doubles as drift check + perf validation;
OQ-GN-05 boundary reframed as performance trade