refactor(storage): consolidate unreleased StateOwner owner grammar in V2 by joshuajbouw · Pull Request #1781 · astrid-runtime/astrid · GitHub
Skip to content

refactor(storage): consolidate unreleased StateOwner owner grammar in V2 - #1781

Draft
joshuajbouw wants to merge 9 commits into
mainfrom
codex/1780-state-owner-v2
Draft

refactor(storage): consolidate unreleased StateOwner owner grammar in V2#1781
joshuajbouw wants to merge 9 commits into
mainfrom
codex/1780-state-owner-v2

Conversation

@joshuajbouw

@joshuajbouw joshuajbouw commented Aug 31, 2026

Copy link
Copy Markdown
Member

Linked Issue

Tracking #1780. Successor work: #1797 and #1801.

Summary

Frozen predecessor for the unreleased StateOwner V2 grammar and hosted storage recovery work.

The branch is not reclaim-complete and is not a merge candidate. Its useful design and regression evidence is preserved while the inode-stable volume-root successor proceeds through #1797/#1801.

Changes

  • Consolidates the unreleased StateOwner owner grammar in V2.
  • Adds hosted storage admission and recovery coverage.
  • Does not complete safe physical reclaim or User activation.

Verification

AI / Tool Assistance

Assisted-by: Codex:GLM-5.3 Flash

AI assistance was used for implementation and tests. The maintainer owns the architecture boundary and frozen disposition.

Checklist

  • Successor identified
  • Reclaim and activation claims excluded
  • Ready to merge

Add the explicit User owner to the pure StateOwnerCodecV2 wire grammar while keeping the runtime admission and recovery barrier crate-private. Durable commits, staging, quota, filesystem, migration, and recovery paths now fail closed before mutation, and the independent Python reader accepts the same canonical owner tags.

Also register the in-band format identity amendment and preserve V1 and existing tags byte-for-byte.

Signed-off-by: Joshua J. Bouw <jjb@unicity-labs.com>
Copilot AI balanced review requested due to automatic review settings August 31, 2026 06:07

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

Keep the focused state-owner display decoder beside the other independent Runatal helpers while preserving the reader error boundary and direct execution path.

Signed-off-by: Joshua J. Bouw <jjb@unicity-labs.com>
Exercise PRE_USER_OWNER selection, repeated reopen-time amendment, and the process broker user-owner fail-closed boundary without changing durable semantics.

Signed-off-by: Joshua J. Bouw <jjb@unicity-labs.com>
Index the accepted successor specification from the exact predecessor before volume compatibility enforcement, while retaining fail-closed rejection for unrecognized predecessors and the runtime user-owner barrier.

Signed-off-by: Joshua J. Bouw <jjb@unicity-labs.com>
Canonical user owners are now distinguished from malformed recovery input and rejected before staging quarantine, owner migration promotion, or legacy volume promotion. Volume WAL preflight also prevents path replacement before recovery. Added byte and path preservation regressions.

Signed-off-by: Joshua J. Bouw <jjb@unicity-labs.com>
Perform read-only owner observation across root, WAL, migration, and staging recovery paths before durable mutation. Preserve existing torn and unsupported journal diagnostics while keeping resynchronization bounded.

Signed-off-by: Joshua J. Bouw <jjb@unicity-labs.com>
Bind hosted volume proof locks and identities through artifact selection and mutation, retain semantic owner errors across malformed recovery evidence, and stream WAL and staging owner scans without proportional allocation.

Signed-off-by: Joshua J. Bouw <jjb@unicity-labs.com>
Signed-off-by: Joshua J. Bouw <jjb@unicity-labs.com>
Signed-off-by: Joshua J. Bouw <jjb@unicity-labs.com>
@joshuajbouw

Copy link
Copy Markdown
Member Author

@joshuajbouw

Copy link
Copy Markdown
Member Author

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants