feat: release v0.13.0 coordinator policy#40
Conversation
Qodo reviews are paused for this user.Troubleshooting steps vary by plan Learn more → On a Teams plan? Using GitHub Enterprise Server, GitLab Self-Managed, or Bitbucket Data Center? |
|
Warning Review limit reached
Next review available in: 47 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (26)
📝 WalkthroughWalkthroughTree Ring Memory v0.13 adds coordinated write authorization with capability-based policy state and audit records, SQLite schema-v3 writer fencing, agent-aware CLI/TUI contexts, expanded acceptance tests, and updated release and operational documentation. ChangesCoordinated write policy
Estimated code review effort: 4 (Complex) | ~60 minutes Sequence Diagram(s)sequenceDiagram
participant Operator
participant TreeRingCLI
participant SQLiteMemoryStore
participant AuthorizationAudit
Operator->>TreeRingCLI: policy enable
TreeRingCLI->>SQLiteMemoryStore: enable_coordinated_policy
SQLiteMemoryStore->>AuthorizationAudit: record policy change
TreeRingCLI-->>Operator: coordinator capability
Operator->>TreeRingCLI: protected write with token
TreeRingCLI->>SQLiteMemoryStore: open_with_context and mutate
SQLiteMemoryStore->>AuthorizationAudit: record allow or deny
SQLiteMemoryStore-->>TreeRingCLI: write result
Possibly related PRs
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Caution The consumer version of Gemini Code Assist on GitHub has been sunset. All code review activity has officially ceased. |
There was a problem hiding this comment.
🧹 Nitpick comments (1)
crates/tree-ring-memory-sqlite/src/lib.rs (1)
246-263: 📐 Maintainability & Code Quality | 🔵 Trivial | 💤 Low valueConsider deriving the trigger threshold from
WRITER_PROTOCOL_VERSIONinstead of the literal3.The three triggers hardcode
tree_ring_writer_protocol() != 3, but the registered function returnsschema::WRITER_PROTOCOL_VERSION. They are in sync today; if the constant is ever bumped without editing this SQL, everymemoriesmutation gets fenced off. Interpolating keeps the single source of truth.♻️ Example for the insert trigger
&format!( "CREATE TRIGGER IF NOT EXISTS memories_writer_protocol_insert \ BEFORE INSERT ON memories \ WHEN tree_ring_writer_protocol() != {version} \ BEGIN SELECT RAISE(ABORT, 'Tree Ring writer protocol {version} required'); END;", version = schema::WRITER_PROTOCOL_VERSION )🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@crates/tree-ring-memory-sqlite/src/lib.rs` around lines 246 - 263, Update the SQL trigger definitions for memories_writer_protocol_insert, memories_writer_protocol_update, and memories_writer_protocol_delete to derive their protocol threshold and error text from schema::WRITER_PROTOCOL_VERSION instead of hardcoding 3. Interpolate the version while constructing the SQL, preserving the existing trigger behavior and messages.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Nitpick comments:
In `@crates/tree-ring-memory-sqlite/src/lib.rs`:
- Around line 246-263: Update the SQL trigger definitions for
memories_writer_protocol_insert, memories_writer_protocol_update, and
memories_writer_protocol_delete to derive their protocol threshold and error
text from schema::WRITER_PROTOCOL_VERSION instead of hardcoding 3. Interpolate
the version while constructing the SQL, preserving the existing trigger behavior
and messages.
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro Plus
Run ID: 1c2c8996-e1f5-40f3-b909-a2f8e4e5f95d
⛔ Files ignored due to path filters (1)
Cargo.lockis excluded by!**/*.lock
📒 Files selected for processing (26)
Cargo.tomlREADME.mdcrates/tree-ring-memory-cli/Cargo.tomlcrates/tree-ring-memory-cli/src/agent_awareness.rscrates/tree-ring-memory-cli/src/main.rscrates/tree-ring-memory-cli/src/tui/app.rscrates/tree-ring-memory-cli/src/tui/mod.rscrates/tree-ring-memory-cli/tests/multi_agent_acceptance.rscrates/tree-ring-memory-core/src/models.rscrates/tree-ring-memory-core/src/sensitivity.rscrates/tree-ring-memory-sqlite/Cargo.tomlcrates/tree-ring-memory-sqlite/src/lib.rscrates/tree-ring-memory-sqlite/src/policy.rscrates/tree-ring-memory-sqlite/src/schema.rscrates/tree-ring-memory-sqlite/src/write.rsdocs/architecture/rust-core-status.mddocs/feed.xmldocs/index.htmldocs/integrations/agent-skill.mddocs/llms.txtdocs/press-kit.mddocs/protocol/memory-event.mdmarketing/README.mdmarketing/github-release-v0.13.0.mdskills/tree-ring-memory/SKILL.mdtemplates/dox/AGENTS.md
Add same-host multi-agent coordinator authorization, schema-v3 writer fencing, operation-aware acceptance coverage, storage-boundary secret rejection, and the bounded v0.13.0 release contract.
34c8e74 to
0cc6e76
Compare
Summary
Supported boundary
These guarantees cover cooperative Tree Ring Rust/CLI processes sharing local SQLite on one host. They do not claim a read ACL, adversarial host security, cross-host coordination, network-filesystem safety, or supported mixed-version operation.
Validation
cargo fmt --all -- --checkcargo test --workspace --all-targets --locked(392 tests, including 2 real-process acceptance tests)-D warningsgit diff --checktree-ring 0.13.0)sh scripts/certify-tree-ring.shRelease follow-through
After merge: tag
v0.13.0, require CI and tag artifact workflows to pass, independently verify both archives/checksums/binaries, publish the GitHub release, then update Homebrew and the separately versioned Agent Zero plugin.Summary by CodeRabbit
New Features
Bug Fixes
Documentation