Skip to content

docs: define session/workspace/global memory ownership for multi-session daemon#348

Merged
xinhuagu merged 1 commit into
mainfrom
docs/347-memory-ownership-model
Mar 28, 2026
Merged

docs: define session/workspace/global memory ownership for multi-session daemon#348
xinhuagu merged 1 commit into
mainfrom
docs/347-memory-ownership-model

Conversation

@xinhuagu

Copy link
Copy Markdown
Owner

Summary

  • Audit all memory stores, learning write paths, and persistent state by scope
  • Classify each store as session-local, workspace-scoped, or global/user-scoped
  • Document concurrency guarantees (locks, atomic writes, file-level locks)
  • Map promotion paths: session-local → workspace → global
  • Document complete file system layout under ~/.aceclaw/ and {projectRoot}/.aceclaw/
  • Identify 3 follow-up code tasks for known limitations
  • Cross-reference from multi-session.md

Key Findings

  • All stores are safe for multi-session concurrent access (locks/atomic writes)
  • CandidateStore full-file rewrite is the main concurrency concern (mitigated by infrequent transitions)
  • Learning pipeline runs after session close, reducing contention
  • Legacy project-{hashCode}.jsonl format co-exists with WorkspacePaths routing

Closes #347

Audit all memory stores, learning write paths, and persistent state.
Classify by scope (session-local, workspace-scoped, global).
Document concurrency guarantees, promotion paths, and file layout.
Identify follow-up code tasks for CandidateStore partitioning,
SkillMetricsStore race, and legacy migration.

Closes #347

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

@greptile-apps greptile-apps Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Your free trial has ended. If you'd like to continue receiving code reviews, you can add a payment method here.

@coderabbitai

coderabbitai Bot commented Mar 28, 2026

Copy link
Copy Markdown

Important

Review skipped

Review was skipped due to path filters

⛔ Files ignored due to path filters (2)
  • docs/memory-ownership.md is excluded by !**/*.md, !docs/**
  • docs/multi-session.md is excluded by !**/*.md, !docs/**

CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including **/dist/** will override the default block on the dist directory, by removing the pattern from both the lists.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: e39d7bc3-42c6-454e-899d-ab3e38cacf1b

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/347-memory-ownership-model

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@xinhuagu xinhuagu merged commit 9b78935 into main Mar 28, 2026
5 checks passed
@xinhuagu xinhuagu deleted the docs/347-memory-ownership-model branch March 28, 2026 17:48
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.

docs(memory): define session/workspace/global memory ownership for multi-session daemon model

1 participant