Skip to content

fix: Dashboard note persistence for external Action users#84

Merged
wasabeef merged 2 commits into
mainfrom
fix/issue-81-dashboard-persist-workspace
Jul 8, 2026
Merged

fix: Dashboard note persistence for external Action users#84
wasabeef merged 2 commits into
mainfrom
fix/issue-81-dashboard-persist-workspace

Conversation

@wasabeef

@wasabeef wasabeef commented Jul 8, 2026

Copy link
Copy Markdown
Owner

Summary

  • run Dashboard restore, sync, and persistence git commands from GITHUB_WORKSPACE instead of the Action package directory
  • preserve explicit worktree cwd overrides for branch updates and commits
  • cover the full external Action pipeline: sync, first persistence, restore, and update
  • run the Dashboard test suite in CI

Root cause

npm --prefix changes each workflow script cwd to the Dashboard package. For remote Action consumers, that package lives under _actions and has no .git directory. Persistence crashed at git worktree add, while restore and sync swallowed their git failures and produced an empty snapshot.

User impact

Repositories using wasabeef/AgentNote@v1 with Dashboard mode can restore, generate, and persist actual pull request note data to gh-pages. The fix also prevents an empty snapshot from deleting previously persisted PR notes. Local uses of the Action continue to work.

Validation

  • Dashboard tests: 29 passed
  • external Action integration covers sync, first persist, restore, and update
  • Dashboard build
  • CLI build, typecheck, and lint
  • CLI tests: 486 passed
  • git diff --check

Closes #81

🧑💬🤖 Agent Note

Total AI Ratio:
Agent Note data: No tracked commits

Commit AI Ratio Prompts Files
4cb1975 fix(dashboard): persist notes from external action checkouts
82a5e6a fix(dashboard): run all note workflows from workspace

Why
Dashboard persistence ran git from the npm --prefix package directory. Remote Action installations execute there without a .git directory, so same-repository pull requests failed before updating gh-pages.

User impact
Repositories using wasabeef/AgentNote@v1 with Dashboard mode can persist pull request notes to gh-pages. Local uses of the Action continue to work.

Verification
npm test --prefix packages/dashboard
npm run build --prefix packages/dashboard
npm run build --prefix packages/cli
npm run typecheck --prefix packages/cli
npm run lint --prefix packages/cli
npm test --prefix packages/cli

Release note: Dashboard note persistence now works when Agent Note is used as a remote GitHub Action.
@coderabbitai

coderabbitai Bot commented Jul 8, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@wasabeef, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 46 seconds

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

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 configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 39020395-057b-49b7-9e62-a8de0d4a6f44

📥 Commits

Reviewing files that changed from the base of the PR and between 8535b58 and 82a5e6a.

📒 Files selected for processing (5)
  • .github/workflows/ci.yml
  • packages/dashboard/workflow/persist-notes.mjs
  • packages/dashboard/workflow/restore-notes.mjs
  • packages/dashboard/workflow/sync-notes.mjs
  • packages/dashboard/workflow/sync-notes.test.mjs
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/issue-81-dashboard-persist-workspace

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.

@wasabeef wasabeef changed the title [codex] Fix Dashboard note persistence for external Action users fix: Dashboard note persistence for external Action users Jul 8, 2026
@wasabeef
wasabeef marked this pull request as ready for review July 8, 2026 06:22
Why
External Action checkouts also ran Dashboard restore and sync git commands from the npm package directory. Those failures were swallowed, leaving an empty snapshot that persistence could commit over existing PR notes.

User impact
Remote Action users now restore, generate, and persist real Dashboard note data from the checked-out repository without risking deletion from an empty snapshot.

Verification
npm test --prefix packages/dashboard
npm run build --prefix packages/dashboard
npm run build --prefix packages/cli
npm run typecheck --prefix packages/cli
npm run lint --prefix packages/cli
npm test --prefix packages/cli

Release note: skip
@wasabeef
wasabeef merged commit 0b9201a into main Jul 8, 2026
10 of 11 checks passed
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.

bug: dashboard persist-notes fails with 'not a git repository' when the action is used remotely (npm --prefix changes cwd to the action path)

1 participant