3.1 KiB
id, name, status, depends_on, scope, risk, impact, level, tags
| id | name | status | depends_on | scope | risk | impact | level | tags | |||
|---|---|---|---|---|---|---|---|---|---|---|---|
| release-n1-growth-posture | N-1 growth-posture review — conscious acceptance (or hygiene) | pending | narrow | low | component | implementation |
|
Description
Review 001's N-1 (deferred by design to the release pass): three
engine-layer table families grow without internal hygiene caps, and
the release review must consciously accept them or add engine-side
hygiene (docs/reviews/001-waves-1-2-general-review.md §N-1, §7's
wave-6 release-review bullet):
__alkstore_deadwithdead_letter_retention_s = NULL(the default — the doc text is honest that retention is opt-in)__alkstore_notificationsrows pruned only at attach (D-16's 10k cap triggers only next attach — an idle-but-listening process never prunes)__alkstore_stream(growth is the contract's durable-log posture;trim_tois consumer-invoked per ADR-015)
None is wrong for v1; all three are documented engine-internal. The expected disposition is conscious acceptance with the documentation sharpened — review 001 specifically suggested the notify one "may want an 'attach is not the only prune site' note in the sqlite engine's docs (cadence recipes)". But the acceptance must be a decision made this session against the implemented engines (the review predates waves 3–7): re-read the three growth paths as implemented, confirm the review's characterization still holds (the mem engine's postures are new since — its notify/stream growth is process-lifetime-bounded by design; say so in the record), and land the acceptance:
- The acceptance record (all three paths, per engine, with the
rationale) —
deployment.md's durability/growth posture is the natural home; coordinate withrelease-deployment-matrix(this task's outcome is an input to that pass — land the substance here, let the matrix pass fold it into the final text). - The notify prune-cadence note in
engine-sqlite.md(or wherever the engine spec's cadence guidance lives) if accepted. - If any path instead warrants engine-side hygiene (a cap, a sweep integration), that is a scope change — raise with the user before building; the default is acceptance.
Acceptance Criteria
- The three growth paths re-read as implemented (SQLite + pg + mem); the review's characterization confirmed or corrected in the record
- The conscious-acceptance decision recorded per engine (or a user-approved hygiene scope change, which would be a follow-up task)
- The notify prune-cadence note landed in the SQLite engine's docs
- The acceptance substance positioned for the deployment-matrix final pass to fold in
- Workspace gates green (docs-only expected)
References
- docs/reviews/001-waves-1-2-general-review.md §N-1, §7
- docs/architecture/deployment.md (Durability knobs; the matrix this feeds)
- docs/architecture/engine-sqlite.md (the cadence-recipes home)
- docs/architecture/decisions/024-mem-engine.md (the mem postures new since the review)
Notes
To be filled by implementation agent
Summary
To be filled on completion