feat(projects): publish authoritative project state - #7209
Draft
johnmatthewtennant wants to merge 5 commits into
Draft
feat(projects): publish authoritative project state#7209johnmatthewtennant wants to merge 5 commits into
johnmatthewtennant wants to merge 5 commits into
Conversation
Signed-off-by: John Tennant <jtennant@squareup.com>
* origin/main: feat(buzz-agent): add DatabricksAuthCoordinator single-flight OAuth (#5545) fix(desktop): preserve keyring identity during recovery (#7203) feat(mobile): prepare `buzz-push-gateway` for deployment (#7158) ci: relax file-size ceilings by surface (#6485) fix(mobile): isolate extension linker flags; complete iOS build in CI (#7187) Signed-off-by: John Tennant <jtennant@squareup.com> # Conflicts: # crates/buzz-db/src/runtime/migration.rs
Signed-off-by: John Tennant <jtennant@squareup.com>
🔐 Codex Security Review
|
mfethe1
added a commit
to mfethe1/buzz
that referenced
this pull request
Sep 1, 2026
…43 absorb collision Fourth recurrence of the measured HW-016/HW-019 defect class. Upstream PR block#7158 merged 2026-09-01T19:19:49Z carrying 0043_push_gateway_dogfood_profile.sql, colliding with the fork's landed 0043_task_system.sql (integrated run 53). git mv migrations/0043_task_system.sql -> migrations/0046_task_system.sql (100% similarity, 0 content lines). Three references updated: - crates/buzz-db/src/migration.rs:1218 assert migrations[34].version 43->46 - crates/buzz-db/src/task.rs:145 doc comment prose - crates/buzz-relay/src/api/tasks.rs:593 comment prose Re-measured upstream tail immediately pre-commit: 0043_push_gateway_dogfood_profile.sql. Next free vs merged tree = 0046 (0044 contested by block#6965/block#7147/block#7157/block#7209; 0045 by block#7157/block#7209; 0046 zero open claimants). Fork-only: task system absent upstream. migrations.len() stays 35 (renumber). Signed-off-by: Michael Feth <michael@jira-flow.com>
Signed-off-by: John Tennant <jtennant@squareup.com>
…e-read-model * origin/main: fix(desktop): retain automatic mentions only in threads (#7144) feat: add databricks fable 5.1 model capabilities (#7213) docs(nip-fi): rewrite NIP-FI as stateless OSS Buzz spec v2 (#7214) feat(relay): add detailed readiness metrics (#7149) feat(desktop): add Pi agent preset (#7208) Signed-off-by: John Tennant <jtennant@squareup.com>
mfethe1
added a commit
to mfethe1/buzz
that referenced
this pull request
Sep 2, 2026
…43 absorb collision Fourth recurrence of the measured HW-016/HW-019 defect class. Upstream PR block#7158 merged 2026-09-01T19:19:49Z carrying 0043_push_gateway_dogfood_profile.sql, colliding with the fork's landed 0043_task_system.sql (integrated run 53). git mv migrations/0043_task_system.sql -> migrations/0046_task_system.sql (100% similarity, 0 content lines). Three references updated: - crates/buzz-db/src/migration.rs:1218 assert migrations[34].version 43->46 - crates/buzz-db/src/task.rs:145 doc comment prose - crates/buzz-relay/src/api/tasks.rs:593 comment prose Re-measured upstream tail immediately pre-commit: 0043_push_gateway_dogfood_profile.sql. Next free vs merged tree = 0046 (0044 contested by block#6965/block#7147/block#7157/block#7209; 0045 by block#7157/block#7209; 0046 zero open claimants). Fork-only: task system absent upstream. migrations.len() stays 35 (renumber). Signed-off-by: Michael Feth <michael@jira-flow.com>
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.
Summary
Project metadata is currently reconstructed directly from replaceable owner events, which leaves no relay-authoritative state boundary for collaborative Project changes.
This adds a projected Project state model keyed by community, owner, and Project identifier. Owner metadata events advance the identity revision, related channels are normalized into a dedicated membership table, and a relay-signed projection preserves the effective state for CLI and future desktop consumers. Project deletion and recreation advance the same lifecycle head so stale projections cannot revive deleted state.
Related issue
None found.
Testing
Verified against a disposable PostgreSQL-backed relay that Project creation materializes the state head and related-channel membership, owner metadata updates reconcile the projection, and deletion plus recreation reject stale or same-second state. The PostgreSQL lifecycle test also exercises relay-key rotation and stale projection rejection.