docs(SUP-1694): make v0.1 GBrain-first release-ready#39
Conversation
📝 WalkthroughWalkthroughThis PR systematically updates terminology and documentation across the jarvOS repository to establish "GBrain-first resolver/brain integration" as the official framing for the ChangesGBrain-first terminology and framing update
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes Possibly related PRs
Suggested labels
Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 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 |
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (1)
scripts/release-readiness-check.js (1)
149-163: ⚡ Quick winNarrow transitional-phrase scanning to avoid historical false failures.
The current check can block releases if
CHANGELOG.mdreferences legacy wording in historical context, even when current release framing is correct.Proposed adjustment
- const combined = gbrainNarrativeFiles.map((filePath) => readText(filePath)).join('\n'); + const combined = gbrainNarrativeFiles.map((filePath) => readText(filePath)).join('\n'); + const bridgeScanFiles = gbrainNarrativeFiles.filter((filePath) => filePath !== 'CHANGELOG.md'); + const bridgeScanText = bridgeScanFiles.map((filePath) => readText(filePath)).join('\n'); const requiredPhrases = [ 'GBrain-first', '@jarvos/gbrain', 'resolver', 'does not implement GBrain', 'not GBrain itself', ]; const missingPhrases = requiredPhrases.filter((phrase) => !combined.includes(phrase)); - const transitionalMatches = combined.match(/(?:structured knowledge bridge|GBrain bridge)/gi) || []; + const transitionalMatches = bridgeScanText.match(/(?:structured knowledge bridge|GBrain bridge)/gi) || [];🤖 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 `@scripts/release-readiness-check.js` around lines 149 - 163, The check scans entire concatenated gbrainNarrativeFiles (combined) and can flag historical wording; change the logic to restrict phrase checks to only the current release narrative instead of the whole file corpus: locate the current release section text (e.g., extract the first/topmost release heading block from combined — the text between the first release/version header and the next header) and run requiredPhrases and transitionalMatches against that substring only; update the variables/methods involved (gbrainNarrativeFiles, combined, requiredPhrases, transitionalMatches, fail) so the existence checks and fail calls use the extracted currentReleaseText rather than the full combined content.
🤖 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 `@modules/jarvos-gbrain/README.md`:
- Around line 3-6: Update the README module overview to use the standardized
term "runtime resolver bundle" instead of the mixed "runtime recall-bundle";
specifically edit the sentence that currently reads "provides sync, doctor,
graph recall, runtime recall-bundle, and retrieval-eval helpers" to replace
"runtime recall-bundle" with "runtime resolver bundle" so the document
consistently uses the new terminology.
---
Nitpick comments:
In `@scripts/release-readiness-check.js`:
- Around line 149-163: The check scans entire concatenated gbrainNarrativeFiles
(combined) and can flag historical wording; change the logic to restrict phrase
checks to only the current release narrative instead of the whole file corpus:
locate the current release section text (e.g., extract the first/topmost release
heading block from combined — the text between the first release/version header
and the next header) and run requiredPhrases and transitionalMatches against
that substring only; update the variables/methods involved
(gbrainNarrativeFiles, combined, requiredPhrases, transitionalMatches, fail) so
the existence checks and fail calls use the extracted currentReleaseText rather
than the full combined content.
🪄 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: defaults
Review profile: CHILL
Plan: Pro
Run ID: 7f4b20b0-7c26-40d4-82b7-36446af26e81
📒 Files selected for processing (11)
.github/release-template.mdCHANGELOG.mdPUBLIC_BASELINE.mdREADME.mddocs/architecture/jarvos-architecture.mddocs/releases/v0.1.0.mdmodules/README.mdmodules/jarvos-gbrain/README.mdmodules/jarvos-gbrain/package.jsonmodules/jarvos-gbrain/src/index.jsscripts/release-readiness-check.js
| GBrain-first resolver/brain integration for jarvOS. This module imports a | ||
| curated slice of an Obsidian-compatible vault into a local GBrain repo, then | ||
| provides sync, doctor, graph recall, runtime recall-bundle, and retrieval-eval | ||
| helpers. |
There was a problem hiding this comment.
Unify bundle terminology in module overview.
Line 5 still says runtime recall-bundle, while the rest of this PR standardizes on runtime resolver bundle. Please align this line to avoid mixed naming in public docs.
🤖 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 `@modules/jarvos-gbrain/README.md` around lines 3 - 6, Update the README module
overview to use the standardized term "runtime resolver bundle" instead of the
mixed "runtime recall-bundle"; specifically edit the sentence that currently
reads "provides sync, doctor, graph recall, runtime recall-bundle, and
retrieval-eval helpers" to replace "runtime recall-bundle" with "runtime
resolver bundle" so the document consistently uses the new terminology.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: c4191d4af4
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| if (missingFiles.length) { | ||
| fail('GBrain-first release narrative', `Missing files: ${missingFiles.join(', ')}`); | ||
| } else { | ||
| const combined = gbrainNarrativeFiles.map((filePath) => readText(filePath)).join('\n'); |
There was a problem hiding this comment.
Check each release surface separately
Because the GBrain boundary phrases are searched only after concatenating all narrative files, this guard can pass even when a specific release surface drops the boundary. For example, README.md currently supplies does not implement GBrain and not GBrain itself, so docs/releases/v0.1.0.md or PUBLIC_BASELINE.md could omit that limitation entirely and the release check would still report the GBrain-first narrative as passing. If this script is meant to prevent any public release surface from regressing, validate the required boundary phrases per file or per relevant file class instead of against the combined blob.
Useful? React with 👍 / 👎.
Summary
GBrain bridge/structured knowledge bridgeframing or omit the GBrain-first boundary.Verification
npm testnode --test modules/jarvos-gbrain/test/gbrain.test.jsnode scripts/release-readiness-check.js --allow-unreleasedrg -n "GBrain bridge|Structured knowledge bridge|structured knowledge bridge|curated bridge|weird hybrid|hybrid bridge|future direction" . -g '!node_modules' -g '!package-lock.json'— only the release-readiness guard pattern remains.Release note
This does not publish or tag v0.1.0. The strict release check still requires replacing
Unreleasedwith a release date at publication time;--allow-unreleasedis used for the candidate gate.Paperclip: SUP-1694; coordinates with SUP-1648.