Skip to content

feat(projects): publish authoritative project state - #7209

Draft
johnmatthewtennant wants to merge 5 commits into
mainfrom
jtennant/project-state-read-model
Draft

feat(projects): publish authoritative project state#7209
johnmatthewtennant wants to merge 5 commits into
mainfrom
jtennant/project-state-read-model

Conversation

@johnmatthewtennant

Copy link
Copy Markdown
Contributor

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.

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>
@github-actions

github-actions Bot commented Sep 1, 2026

Copy link
Copy Markdown

🔐 Codex Security Review

Status: review required for the current range.

The current range is 1c8321cd08feb597f8bcff5195c21148fb3e98ed...055493fe226aba993f2bf018152eb7d200a0e57a.
A new review must complete for this exact range. When manual authorization
is required, a Block organization member must comment exactly
@buzz-security-review 055493fe226aba993f2bf018152eb7d200a0e57a to authorize a new review.
Any previous review applies only to its recorded range.

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>
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.

1 participant