diff --git a/README.md b/README.md index 4e62ef5..190ea92 100644 --- a/README.md +++ b/README.md @@ -2,20 +2,28 @@ gitguardex logo

-

guardian t-rex for multi-agent repos

+

GitGuardex

+ +

+ guardian t-rex for multi-agent repos +

isolated worktrees, file locks, and PR-only merges for codex, claude, and human teammates

- npm version - npm downloads per month - CI status - OpenSSF Scorecard - stars - last commit - license + CLI version + npm downloads per month + CI status + license +

+ +

+ stars + OpenSSF Scorecard + Node 18 or newer + GitHub Sponsors support development

diff --git a/openspec/changes/agent-codex-readme-cli-version-and-scanability-2026-04-23-18-38/notes.md b/openspec/changes/agent-codex-readme-cli-version-and-scanability-2026-04-23-18-38/notes.md new file mode 100644 index 0000000..d8003ab --- /dev/null +++ b/openspec/changes/agent-codex-readme-cli-version-and-scanability-2026-04-23-18-38/notes.md @@ -0,0 +1,10 @@ +# T1 Notes + +- Handoff: branch=`agent/codex/readme-cli-version-and-scanability-2026-04-23-18-38`; scope=`README hero title/badges, focused metadata regression`; action=`make the README top scan like the screenshot reference by leading with GitGuardex and the live CLI version while keeping the layout GitHub-native`. +- Rework the hero into two balanced `for-the-badge` rows so CLI version, downloads, CI, license, stars, scorecard, Node floor, and support CTA scan in one glance. +- Promote the product name to the top-level heading and keep the existing install/about copy below it. +- Keep verification focused on `test/metadata.test.js` so README drift gets caught without reopening broader suites. +- Result: README hero now leads with `GitGuardex`, uses two scan-friendly badge rows, and passed `node --test test/metadata.test.js` (`24/24`); `openspec validate --specs` returned `No items found to validate.` for this notes-only lane. +- BLOCKED: `gx branch finish --via-pr --wait-for-merge --cleanup` opened PR `#396` (`https://github.com/recodeee/gitguardex/pull/396`), but merge is currently blocked by branch protection because GitHub still shows `REVIEW_REQUIRED` and all required checks remain `QUEUED`. +- Fresh blocker evidence: `.github/CODEOWNERS` names `@recodeecom @NagyVikt`, but `gh pr edit 396 --add-reviewer recodeecom` fails with `GraphQL: Could not resolve user with login 'recodeecom'.`; visible collaborators only return `NagyVikt`, and `gh pr merge 396 --auto --squash` fails with `GraphQL: Auto merge is not allowed for this repository (enablePullRequestAutoMerge)`. +- Fresh infrastructure evidence: repo Actions are enabled (`gh api repos/recodeee/gitguardex/actions/permissions` -> `enabled: true`), but recent runs across this PR, other agent branches, and even `main` stay `queued` with no jobs started; GitHub status unresolved incidents (`https://www.githubstatus.com/api/v2/incidents/unresolved.json`) currently report `Incident with multple GitHub services`, with `Actions` in `degraded_performance` and an update at `2026-04-23T16:34:19Z` saying `Actions is experiencing degraded performance. We are continuing to investigate.` diff --git a/test/metadata.test.js b/test/metadata.test.js index 15dfc12..635959c 100644 --- a/test/metadata.test.js +++ b/test/metadata.test.js @@ -78,6 +78,19 @@ test('README release notes include current package version', () => { ); }); +test('README hero keeps CLI-first scannable badges', () => { + const readme = fs.readFileSync(readmePath, 'utf8'); + assert.match(readme, /

GitGuardex<\/h1>/); + assert.match(readme, /label=CLI&style=for-the-badge/); + assert.match(readme, /label=downloads%2Fmonth&style=for-the-badge/); + assert.match(readme, /label=CI&style=for-the-badge/); + assert.match(readme, /label=license&style=for-the-badge/); + assert.match(readme, /label=stars&style=for-the-badge/); + assert.match(readme, /label=OpenSSF%20Scorecard&style=for-the-badge/); + assert.match(readme, /https:\/\/img\.shields\.io\/badge\/node-18%2B-f59e0b\?style=for-the-badge/); + assert.match(readme, /GitHub%20Sponsors-support%20development-db2777\?style=for-the-badge/); +}); + test('README documents gx release as README-driven GitHub release writer', () => { const readme = fs.readFileSync(readmePath, 'utf8'); assert.match(readme, /gx release\s+# create\/update the current GitHub release from README notes/);