docs+skills: document the ADR-0057 data-lifecycle surface (#2786 follow-up)#2818
Merged
Merged
Conversation
…ow-up) The lifecycle contract shipped in #2791 with no hand-written docs or skill coverage — anyone modeling an append-only object through the docs or the objectstack-data skill would still build the unbounded-growth bug the ADR exists to prevent. Four gaps closed: - data-modeling/objects.mdx: "Data Lifecycle (Retention & Rotation)" under Enterprise Features — classes, three valid policy examples (each verified against the real LifecycleSchema parse), enforcement rules, archive safety, telemetry-datasource separation, and the governance knobs. - kernel/services.mdx: `lifecycle` row in the Standard Services table. - data-modeling/drivers.mdx: SQLite space reclamation (auto_vacuum + reclaimSpace) and physical table rotation; PG/MySQL fallback semantics. - deployment/production-readiness.mdx: go-live checklist item — review the default retention windows / tenant overrides / archive datasource before launch. - skills/objectstack-data: new rules/lifecycle.md (decision tree, correct/incorrect examples, ops table) + SKILL.md property-table row and Quick Reference link, explicitly disambiguated from lifecycle *hooks*. Docs/skills only — no runtime change, no changeset (skip-changeset). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BNBzMWmSECrbiEDdVzwBt3
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
os-zhuang
marked this pull request as ready for review
July 11, 2026 02:47
4 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follow-up to #2791: the ADR-0057 lifecycle contract shipped with no hand-written docs or skill coverage — anyone modeling an append-only object through the docs or the
objectstack-dataskill would still build the unbounded-growth bug the ADR exists to prevent. This closes the four real gaps (the docs-drift bot's 104-file list is otherwise indirect references whose content did not become false).Docs (
content/docs/)data-modeling/objects.mdx— new Data Lifecycle (Retention & Rotation) subsection under Enterprise Features (thesoftDelete/versioningsibling slot): the five classes, three policy examples, per-key table, enforcement rules (non-recordmust declare a bounding policy;archive.after === retention.maxAge; archive-safety), telemetry-datasource separation, and the governance knobs (lifecyclesettings namespace,OS_LIFECYCLE_DISABLED).kernel/services.mdx—lifecyclerow in the Standard Services table (registered byObjectQLPlugin,sweep()for on-demand passes).data-modeling/drivers.mdx— SQLite space reclamation (auto_vacuum=INCREMENTAL+reclaimSpace()) and physical table rotation under the SQLite section, with PG/MySQL fallback semantics.deployment/production-readiness.mdx— go-live checklist item: review the default retention windows (activity 14d, job runs 30d, notifications 90d, audit 90d-hot), set tenantretention_overrides, and register anarchivedatasource if compliance requires cold storage.Skills (
skills/objectstack-data, published)rules/lifecycle.md— the "append-only objects MUST declarelifecycle" rule, class decision tree, ✅/❌ examples, safety semantics, ops table. Explicitly disambiguated from lifecycle hooks (rules/hooks.md), which the skill already used the word "lifecycle" for.SKILL.md—lifecyclerow in the object-properties table + Quick Reference link.Verification
lifecycleblock in the new content was executed against the realObjectSchema.createparse (all pass; an earlier kitchen-sink example that thearchive.after === retention.maxAgeinvariant would reject was caught and replaced).Docs/skills only — no runtime change;
skip-changesetapplies.Refs #2786.
🤖 Generated with Claude Code
https://claude.ai/code/session_01BNBzMWmSECrbiEDdVzwBt3
Generated by Claude Code