Skip to content

docs(readme): from-scratch rewrite for v3.0 - #731

Merged
github-actions[bot] merged 3 commits into
mainfrom
docs/readme-v3-rewrite
May 13, 2026
Merged

docs(readme): from-scratch rewrite for v3.0#731
github-actions[bot] merged 3 commits into
mainfrom
docs/readme-v3-rewrite

Conversation

@robotrocketscience

@robotrocketscience robotrocketscience commented May 13, 2026

Copy link
Copy Markdown
Owner

Summary

Per-section restructure to match the v3.0 surface. Net change: +58 / -98 lines. Three structural moves keyed to operator alignment earlier today:

  1. Passive-memory headline stays primary. Tagline + opening pitch preserve the v1/v2 framing ("your AI stops forgetting, set up once, stays out of the way"). Reasoning surfaces are promoted from a sub-bullet under "Day-to-day" into a peer top-level section.
  2. Lin's pillars kept, every row reframed for v3. Provenance gains the scope column for federation (feat(federation): scope field on beliefs (#650 sub-task) #688); write gates document the phantom-promotion Surface A + Surface B ([v2.1] C4: phantom promotion trigger (#542 sub-task) #550); conflict handling cites the typed VERDICT + IMPASSES from /aelf:reason (feat(wonder+reason): full parity with agentmemory + harmonious merge with aelfrice extensions #645) and ConsequencePath fork-on-CONTRADICTS (feat(reason): R2 — compound confidence decay + CONTRADICTS fork (#645 sub-task) #658); reversibility carries the read-only federation ForeignBeliefError boundary (Umbrella: v3 cross-project federation — CRDT primitives + transport #650 / feat(federation): read-only mechanics — knowledge_deps.json + SQLite ATTACH + foreign-ID rejection (#650 sub-task) #655).
  3. Memory-model table merges the prior "What it remembers" + Beta-Bernoulli intro, and adds rows for aelf promote (with --to-scope mention) and /aelf:wonder.

What's gone

  • "What makes aelfrice different" — 8-bullet manifesto. Every claim it made is restated under "How it works", "Memory model", or "What you get for free", so no information loss.
  • Standalone "Session-start enrichment vs per-turn retrieval" subsection — folded into "How it works" as one sentence with an ARCHITECTURE cross-link.
  • Decorative aelf stats output block — not load-bearing.

What's preserved verbatim

  • Hero image, headline + tagline, badge row, opening one-liner ("You correct your agent. Got it…").
  • Lin's pillars table structure (4 pillars; only the aelfrice column rewrites).
  • "Why files alone don't solve this" + the CLAUDE.md / cross-reference / state-files comparison table.
  • "What you get for free" 4-bullet section (modulo the federation note, which now exists).
  • Documentation links and BibTeX citation.

Test plan

  • Banned-vocab sweep clean — no + line contains "Claude Code", "Sonnet", "Opus", "Haiku", or any internal codename.
  • Pre-push discretion grep clears locally.
  • All cross-doc links resolve against the post-docs(readme): lead 'What it does' with the v3.0 four-lane retrieval stack #729 main (ARCHITECTURE § Retrieval, COMMANDS § wonder/reason, PHILOSOPHY, PRIVACY, LIMITATIONS, INSTALL § default-on hooks).
  • Markdownlint-friendly: fenced blocks tagged text or bash, no MD040 candidates.

Summary by CodeRabbit

  • Documentation
    • Reframed aelfrice as a background memory substrate with per-prompt belief injection
    • Described four parallel retrieval lanes, default token budget (2,400) and default ranking stack
    • Added lock-count baseline context and session-start behavior
    • Expanded day-to-day command surface and operational guidance
    • Documented new reasoning surfaces (/aelf:wonder, /aelf:reason) and determinism boundaries
    • Standardized memory model, ingestion rules, federation/read-only boundaries, and updated to v3.0.0

Review Change Stack

The pre-v3 README accumulated layers across v1/v2 and several sections
overlapped: 'What makes aelfrice different' (8 bullets) re-stated what
'What it does' + 'What it remembers' + 'What you get for free' then
covered in more detail. The v3.0 reasoning surfaces (/aelf:wonder and
/aelf:reason) were buried as a subsection of the day-to-day CLI list.

Rewrite per the three structural decisions from operator alignment:
1. Passive-memory headline stays primary; wonder/reason are a peer
   'Reasoning surfaces (v3.0)' section, not a sub-bullet under CLI.
2. Lin's pillars table preserved (still the strongest non-marketing
   positioning piece) but every aelfrice column reframed for v3:
   - Provenance: scope field for federation (#688), eight origins incl.
     speculative for /aelf:wonder phantoms.
   - Write gates: phantom-promotion Surface A + Surface B (#550) with
     explicit audit-row tags (promotion:user_validated, promotion:
     phantom_lock_match).
   - Conflict handling: typed VERDICT + IMPASSES from /aelf:reason
     (#645) and ConsequencePath fork-on-CONTRADICTS (#658).
   - Reversibility: read-only federation (#650/#655) with
     ForeignBeliefError on foreign-id mutations.
3. Memory-model table absorbs 'What it remembers' + the Beta-Bernoulli
   intro that was previously a standalone bullet; adds aelf promote
   and /aelf:wonder rows so the v3 verbs are discoverable.

Cuts: 'What makes aelfrice different' 8-bullet manifesto (info
distributed across How-it-works + Memory-model + What-you-get-for-free,
no information lost); the standalone 'Session-start enrichment vs per-
turn retrieval' subsection (folded into How-it-works as a single
sentence with pointer to ARCHITECTURE); the decorative 'aelf stats'
output block.

Lead sentence drops the 'in Claude Code' phrase -- the README still
works for any UserPromptSubmit-capable agent host, and dropping the
specific harness name lets the rewrite pass the pre-push discretion
grep cleanly (-40 lines net while adding v3 content).

@sourcery-ai sourcery-ai 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.

Sorry @robotrocketscience, you have reached your weekly rate limit of 500000 diff characters.

Please try again later or upgrade to continue using Sourcery

@coderabbitai

coderabbitai Bot commented May 13, 2026

Copy link
Copy Markdown

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: b64ded77-689f-48a2-845e-8f79c3cd432a

📥 Commits

Reviewing files that changed from the base of the PR and between b174878 and cbfe8be.

📒 Files selected for processing (1)
  • README.md
🚧 Files skipped from review as they are similar to previous changes (1)
  • README.md

📝 Walkthrough

Walkthrough

README.md is rewritten to present aelfrice v3.0 as a background memory substrate injected via the UserPromptSubmit hook; it documents four-lane retrieval and budget trimming, session-start lock behavior, /aelf:wonder and /aelf:reason surfaces, Beta-Bernoulli memory framing, Lin’s pillar architecture, and status v3.0.0.

Changes

aelfrice v3.0 Documentation

Layer / File(s) Summary
Product narrative and daily operations
README.md
Introduction reframed around memory substrate injection; Install updated; "How it works" describes four-lane retrieval with token-budget trimming (L1/L2/L2.5 score-descending, locked beliefs win overflow), default token budget (2,400), ranking stack stack-r1-r3, session-start <session-start> enrichment, and Day-to-day command surface (onboard, lock, list, search, status, setup).
Reasoning surfaces and memory model
README.md
Documents /aelf:wonder (research axis + subagent fan-out + speculative ingestion) and /aelf:reason (structured graph walk emitting VERDICT/IMPASSES/SUGGESTED UPDATES) with determinism boundary (aelfrice deterministic classification; LLM calls by host subagents). Standardizes Beta-Bernoulli (α, β) memory model and updates command-to-storage mapping, passive ingestion, promote/feedback behavior, and opt-outs.
System design and architecture justification
README.md
Rewrites "Why files alone don't solve this" to emphasize per-prompt belief injection; expands "Lin's pillar" table with origin tiers, scope-based federation visibility, append-only ingest_log replay, version-vector/sidecar mechanics, write gates/promotion semantics, typed conflict/edge handling, and cross-project read-only mutation boundaries.
User guarantees and project status
README.md
Updates "What you get for free" to reflect current default-on hooks (including session-start), determinism/local-only/removability notes, and federation read-only behavior. "Status" updated to v3.0.0 (2026-05-13) with changelog, roadmap, and limitations links.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

  • robotrocketscience/aelfrice#729: Updates README.md to describe the v3.0 four-lane retrieval pipeline with UserPromptSubmit hook, locked-belief overflow, budget trimming, and stack-r1-r3 defaults.
  • robotrocketscience/aelfrice#682: Aligns documentation with federation/read-only semantics, version-vector/sidecar mechanics, and cross-project mutation behavior.

Suggested labels

attn:review

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title 'docs(readme): from-scratch rewrite for v3.0' clearly and specifically describes the main change: a comprehensive rewrite of the README documentation for v3.0.
Description check ✅ Passed The PR description is comprehensive, covering summary, structural changes, deletions, preserved content, and a detailed test plan; it aligns well with the template's requirements.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/readme-v3-rewrite

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.

@github-actions github-actions Bot added the docs label May 13, 2026

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

Actionable comments posted: 1

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

Inline comments:
In `@README.md`:
- Line 151: The README's "Local-only. ... No telemetry, no network calls"
sentence is too absolute; update the phrasing so it scopes network behavior to
the aelfrice core/process (e.g., "aelfrice itself makes no network calls") and
explicitly note that host-dispatched subagent LLM calls may still occur
elsewhere in the flow; modify the sentence containing "Local-only. SQLite ... No
telemetry, no network calls, no accounts." and keep references to
knowledge_deps.json and PRIVACY.md intact while clarifying the distinction with
host-dispatched subagents.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: f69cee93-2f37-4aef-9777-17d1e8ee2f0f

📥 Commits

Reviewing files that changed from the base of the PR and between bc11469 and cd6dd34.

📒 Files selected for processing (1)
  • README.md

Comment thread README.md Outdated
Line 151 said 'No telemetry, no network calls' absolutely, but line ~90
in the same file documents subagent LLM dispatch as part of /aelf:wonder
and /aelf:reason flows -- which do touch the network (under the host
agent's credentials, not aelfrice's). CodeRabbit flagged the internal
contradiction.

Reword to 'aelfrice itself makes no network calls' with an explicit
parenthetical naming the subagent-dispatch exception. The retrieval-
path-stays-local invariant is preserved verbatim because that's the
actual contract.

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

Actionable comments posted: 1

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

Inline comments:
In `@README.md`:
- Line 47: The README contains a broken anchor link to
docs/ARCHITECTURE.md#claude-code-hook; locate the reference in README.md and
either change the anchor to an existing section (for example
docs/ARCHITECTURE.md#retrieval) or add the missing section/anchor
"claude-code-hook" (Session-start enrichment) in docs/ARCHITECTURE.md so the
link resolves; update only the README link or the ARCHITECTURE file accordingly
to keep documentation consistent.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 8d01f407-ab56-47f0-860e-9929731c0fae

📥 Commits

Reviewing files that changed from the base of the PR and between cd6dd34 and b174878.

📒 Files selected for processing (1)
  • README.md

Comment thread README.md
…ntinel path

CodeRabbit's link-check flagged the [ARCHITECTURE § Session-start
enrichment](docs/ARCHITECTURE.md#claude-code-hook) cross-link. The
anchor #claude-code-hook is technically valid (GitHub auto-slugs the
'## Claude Code hook' heading) but the target section doesn't deep-
dive into session-start enrichment specifics -- only a one-line
mention in the v1.2+ hooks table.

Rather than add a new Session-start enrichment subsection to
ARCHITECTURE.md (out of scope for this PR), drop the link and inline
the one operational detail readers would have followed it for: the
session_first_prompt.json sentinel path. That preserves the
information the original pre-rewrite README carried in a longer
subsection.
@robotrocketscience robotrocketscience added the ready-to-merge Trigger merge-train: FF main to this PR's head label May 13, 2026
@github-actions github-actions Bot removed the ready-to-merge Trigger merge-train: FF main to this PR's head label May 13, 2026
@github-actions
github-actions Bot merged commit cbfe8be into main May 13, 2026
21 checks passed
@github-actions

Copy link
Copy Markdown

merge-train: merged cbfe8bemain via FF push.

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

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant