chore: improve worktree skill with full dep sync and status enhancements#906
chore: improve worktree skill with full dep sync and status enhancements#906
Conversation
…enhancements Aligns the worktree skill with wt-synthorg.ps1 by adding npm and Go dependency installation alongside uv sync. Fixes cd usage that gets blocked by hooks (now uses --project/--prefix/-C flags). Adds Mode 4 for description-only worktrees without GitHub issues, dep re-sync after rebase, dep staleness column in status, gone branch cleanup in cleanup command, and comprehensive lock contention docs for all three package managers. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository UI Review profile: ASSERTIVE Plan: Pro Run ID: 📒 Files selected for processing (1)
WalkthroughDocumentation updates to worktree tooling: added Mode 4 to /worktree setup for description-only worktree creation that auto-generates branch names, skips issue fetching and prompt output, and reports the worktree path with a shell command. Setup now runs sequential, tool-specific dependency pre-syncs (uv, npm, go) without using cd. /worktree cleanup uses a plumbing git for-each-ref filter to prune local gone branches and notes the count. /worktree status compares lock files to main and marks deps stale when divergent. /worktree rebase re-syncs dependencies after successful rebases. Rules document lists package-manager-specific cache/lock checks. 🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. Comment |
There was a problem hiding this comment.
Code Review
This pull request enhances the worktree skill documentation by adding a description-only setup mode, expanding dependency management to support Node.js and Go, and introducing automated cleanup for 'gone' branches. It also adds a mechanism to detect stale dependencies by comparing lock files against the main branch. The review feedback recommends using more robust Git plumbing commands for branch listing and utilizing exit codes for difference checks to improve scripting reliability.
.claude/skills/worktree/SKILL.md
Outdated
| 8. **Clean remaining gone branches** that are not associated with worktrees (e.g. branches created outside the worktree workflow). After worktree-specific cleanup is done, check for any additional local branches whose remote tracking branch is gone: | ||
|
|
||
| ```bash | ||
| git branch -vv | grep '\[.*: gone\]' |
There was a problem hiding this comment.
The command git branch -vv produces output intended for human consumption, which can be brittle to parse in scripts. For better robustness, I recommend using git for-each-ref, which is a 'plumbing' command designed for scripting.
You can get a list of branches with gone upstreams like this:
git for-each-ref --format='%(refname:short) %(upstream:track,gone)' refs/heads | grep '\[gone\]$'This produces a clean, parsable output (e.g., my-branch [gone]) that makes extracting the branch names for deletion much more reliable.
| git branch -vv | grep '\[.*: gone\]' | |
| git for-each-ref --format='%(refname:short) %(upstream:track,gone)' refs/heads | grep '\[gone\]$' |
.claude/skills/worktree/SKILL.md
Outdated
| git diff main -- uv.lock | head -1 | ||
| git diff main -- web/package-lock.json | head -1 | ||
| git diff main -- cli/go.sum | head -1 |
There was a problem hiding this comment.
Piping git diff to head -1 and checking for output works, but a more idiomatic and robust way to check for differences in a script is to use the --quiet flag.
git diff --quiet exits with code 0 if there are no differences and 1 if there are differences, which is exactly what's needed here. This avoids parsing output and is generally more reliable for scripting.
| git diff main -- uv.lock | head -1 | |
| git diff main -- web/package-lock.json | head -1 | |
| git diff main -- cli/go.sum | head -1 | |
| git diff --quiet main -- uv.lock | |
| git diff --quiet main -- web/package-lock.json | |
| git diff --quiet main -- cli/go.sum |
Dependency Review✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.Snapshot WarningsEnsure that dependencies are being submitted on PR branches. Re-running this action after a short time may resolve the issue. See the documentation for more information and troubleshooting advice. Scanned FilesNone |
There was a problem hiding this comment.
Actionable comments posted: 3
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In @.claude/skills/worktree/SKILL.md:
- Around line 298-315: The docs claim "/worktree cleanup" subsumes "/clean_gone"
but the duplicate gone-branch pruning still exists in the post-merge-cleanup
skill; remove the redundancy by deleting the gone-branch cleanup logic from
.claude/skills/post-merge-cleanup/SKILL.md (the block that runs `git branch -vv
| grep '\[.*: gone\]'` and deletes branches) and then update the
.claude/skills/worktree/SKILL.md text (the sentence claiming it "subsumes the
/clean_gone command") to clearly state that worktree cleanup handles gone
branches and that post-merge-cleanup no longer performs that step; ensure
references to `/clean_gone`, `/worktree cleanup`, and `/post-merge-cleanup`
remain consistent so users aren’t confused.
- Around line 361-366: The Markdown code block containing the status table (the
block starting with "Worktree | Branch | vs Main
| PR | Status | Deps") needs a language specifier to satisfy the linter
and improve rendering; update the opening fence from ``` to ```text (or another
appropriate language) so the table is fenced as a text code block and leave the
block contents unchanged.
- Around line 148-166: Add blank lines before and after each fenced code block
for the three examples (the Python "uv sync --project <dir-path>" block, the
Node.js "npm --prefix <dir-path>/web install --silent" block, and the Go "go -C
<dir-path>/cli mod download" block) so the markdown linter stops flagging
missing surrounding blank lines; specifically insert a blank line immediately
above each ```bash fence and immediately below each closing ``` fence
(preserving the surrounding explanatory text like "Python:", "Node.js (web
dashboard):", and "Go (CLI):").
🪄 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: Repository UI
Review profile: ASSERTIVE
Plan: Pro
Run ID: d7f63db4-062e-4519-b88f-11f0a24e04c9
📒 Files selected for processing (1)
.claude/skills/worktree/SKILL.md
📜 Review details
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
- GitHub Check: Dependency Review
- GitHub Check: Analyze (python)
🧰 Additional context used
🧠 Learnings (3)
📓 Common learnings
Learnt from: CR
Repo: Aureliolo/synthorg PR: 0
File: CLAUDE.md:0-0
Timestamp: 2026-03-15T21:32:02.880Z
Learning: Applies to .github/workflows/*.yml : Dependabot: daily updates for uv + github-actions + npm + pre-commit + docker + gomod, grouped minor/patch, no auto-merge. Use `/review-dep-pr` to review Dependabot PRs before merging.
📚 Learning: 2026-03-15T21:32:02.880Z
Learnt from: CR
Repo: Aureliolo/synthorg PR: 0
File: CLAUDE.md:0-0
Timestamp: 2026-03-15T21:32:02.880Z
Learning: Applies to .github/workflows/*.yml : Dependabot: daily updates for uv + github-actions + npm + pre-commit + docker + gomod, grouped minor/patch, no auto-merge. Use `/review-dep-pr` to review Dependabot PRs before merging.
Applied to files:
.claude/skills/worktree/SKILL.md
📚 Learning: 2026-03-15T18:17:43.675Z
Learnt from: CR
Repo: Aureliolo/synthorg PR: 0
File: CLAUDE.md:0-0
Timestamp: 2026-03-15T18:17:43.675Z
Learning: Pre-commit hooks: trailing-whitespace, end-of-file-fixer, check-yaml, check-toml, check-json, check-merge-conflict, check-added-large-files, no-commit-to-branch (main), ruff check+format, gitleaks, hadolint (Dockerfile linting).
Applied to files:
.claude/skills/worktree/SKILL.md
🪛 markdownlint-cli2 (0.22.0)
.claude/skills/worktree/SKILL.md
[warning] 151-151: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
[warning] 156-156: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
[warning] 161-161: Fenced code blocks should be surrounded by blank lines
(MD031, blanks-around-fences)
[warning] 361-361: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
🔇 Additional comments (5)
.claude/skills/worktree/SKILL.md (5)
475-484: Dependency re-sync uses same commands as setup.This section repeats the dependency sync commands from lines 148-166. The same verification concerns apply here regarding the
uv sync --project,npm --prefix, andgo -Cflag syntax.
54-61: LGTM! Mode 4 provides useful flexibility.The description-only mode is well-documented and clearly specifies which setup steps are skipped versus retained. This addresses ad-hoc development workflows effectively.
349-367: LGTM! Dependency staleness detection is well-designed.The logic correctly flags stale dependencies only when lock files differ from main AND the worktree is behind. The
head -1approach efficiently detects any diff without processing the entire output.
514-518: LGTM! Comprehensive lock contention guidance.The expanded documentation now covers all three package managers with specific lock paths and troubleshooting commands. This provides valuable operational guidance for multi-worktree scenarios.
148-166: All package manager command flags are correct.Verification confirms:
uv sync --project <dir-path>is valid syntax (global option per official uv CLI documentation)npm --prefix <dir-path>/web install --silentuses standard npm flaggo -C <dir-path>/cli mod downloadis supported in Go 1.20+ (system has 1.26.1)No changes required to the documented commands.
| 8. **Clean remaining gone branches** that are not associated with worktrees (e.g. branches created outside the worktree workflow). After worktree-specific cleanup is done, check for any additional local branches whose remote tracking branch is gone: | ||
|
|
||
| ```bash | ||
| git branch -vv | grep '\[.*: gone\]' | ||
| ``` | ||
|
|
||
| Delete each one individually (these are non-worktree branches, safe to delete without worktree removal): | ||
|
|
||
| Report: "Clean. Main up to date, N worktrees removed, N branches deleted." | ||
| ```bash | ||
| git branch -D <branch-name> | ||
| ``` | ||
|
|
||
| This subsumes the `/clean_gone` command -- no need to run it separately after `/worktree cleanup`. | ||
|
|
||
| 9. **Report summary:** | ||
|
|
||
| Report: "Clean. Main up to date, N worktrees removed, N branches deleted, M gone branches pruned." | ||
|
|
There was a problem hiding this comment.
Clarify relationship with /post-merge-cleanup skill.
The documentation claims this "subsumes the /clean_gone command" (line 310), but the .claude/skills/post-merge-cleanup/SKILL.md skill still exists and performs identical gone branch cleanup (lines 17-31 of that file). This creates redundancy rather than subsumption:
- Both
/worktree cleanupand/post-merge-cleanupnow independently clean gone branches - Users may be unsure which command to use or might run both unnecessarily
Consider either:
- Remove gone branch cleanup from post-merge-cleanup if worktree cleanup truly subsumes it
- Update the documentation to say "also cleans gone branches" rather than "subsumes"
- Have one skill delegate to the other to avoid duplicate logic
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In @.claude/skills/worktree/SKILL.md around lines 298 - 315, The docs claim
"/worktree cleanup" subsumes "/clean_gone" but the duplicate gone-branch pruning
still exists in the post-merge-cleanup skill; remove the redundancy by deleting
the gone-branch cleanup logic from .claude/skills/post-merge-cleanup/SKILL.md
(the block that runs `git branch -vv | grep '\[.*: gone\]'` and deletes
branches) and then update the .claude/skills/worktree/SKILL.md text (the
sentence claiming it "subsumes the /clean_gone command") to clearly state that
worktree cleanup handles gone branches and that post-merge-cleanup no longer
performs that step; ensure references to `/clean_gone`, `/worktree cleanup`, and
`/post-merge-cleanup` remain consistent so users aren’t confused.
… fixes Use git for-each-ref (plumbing) instead of git branch -vv (porcelain) for gone-branch detection. Use git diff --quiet exit codes instead of piping to head. Add blank lines around fenced code blocks, add text language specifier to status table. Update post-merge-cleanup to also use for-each-ref and handle worktree-attached gone branches. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In @.claude/skills/worktree/SKILL.md:
- Around line 159-160: Replace uses of the npm install command with npm ci to
ensure deterministic installs: update the command string "npm --prefix
<dir-path>/web install --silent" to "npm --prefix <dir-path>/web ci --silent"
(and update the other occurrence noted around lines 482-483) — find the exact
occurrences of the install command in SKILL.md and swap "install" for "ci" while
keeping the --prefix and --silent flags unchanged.
- Around line 352-358: The dependency staleness checks run git diff against the
repo root instead of each worktree because the commands lack git -C <path>;
update the three commands (the git diff --quiet main -- uv.lock, git diff
--quiet main -- web/package-lock.json, and git diff --quiet main -- cli/go.sum)
to run with worktree context (e.g., git -C <worktree-path> diff --quiet main --
<lockfile>) so each lockfile is compared inside its respective worktree.
🪄 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: Repository UI
Review profile: ASSERTIVE
Plan: Pro
Run ID: 7229f7e1-d6cc-4498-bcf5-aaffc7d620a4
📒 Files selected for processing (2)
.claude/skills/post-merge-cleanup/SKILL.md.claude/skills/worktree/SKILL.md
📜 Review details
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
- GitHub Check: Dependency Review
- GitHub Check: Analyze (python)
🧰 Additional context used
🧠 Learnings (6)
📓 Common learnings
Learnt from: CR
Repo: Aureliolo/synthorg PR: 0
File: CLAUDE.md:0-0
Timestamp: 2026-03-15T21:32:02.880Z
Learning: Applies to .github/workflows/*.yml : Dependabot: daily updates for uv + github-actions + npm + pre-commit + docker + gomod, grouped minor/patch, no auto-merge. Use `/review-dep-pr` to review Dependabot PRs before merging.
Learnt from: CR
Repo: Aureliolo/synthorg PR: 0
File: CLAUDE.md:0-0
Timestamp: 2026-03-15T12:00:18.113Z
Learning: Commits: <type>: <description> — types: feat, fix, refactor, docs, test, chore, perf, ci. Enforced by commitizen (commit-msg hook). Signed commits: required on main via branch protection — all commits must be GPG/SSH signed.
📚 Learning: 2026-03-15T18:17:43.675Z
Learnt from: CR
Repo: Aureliolo/synthorg PR: 0
File: CLAUDE.md:0-0
Timestamp: 2026-03-15T18:17:43.675Z
Learning: Pre-commit hooks: trailing-whitespace, end-of-file-fixer, check-yaml, check-toml, check-json, check-merge-conflict, check-added-large-files, no-commit-to-branch (main), ruff check+format, gitleaks, hadolint (Dockerfile linting).
Applied to files:
.claude/skills/worktree/SKILL.md
📚 Learning: 2026-03-15T21:32:02.880Z
Learnt from: CR
Repo: Aureliolo/synthorg PR: 0
File: CLAUDE.md:0-0
Timestamp: 2026-03-15T21:32:02.880Z
Learning: Applies to .github/workflows/*.yml : Dependabot: daily updates for uv + github-actions + npm + pre-commit + docker + gomod, grouped minor/patch, no auto-merge. Use `/review-dep-pr` to review Dependabot PRs before merging.
Applied to files:
.claude/skills/worktree/SKILL.md
📚 Learning: 2026-03-15T21:49:53.264Z
Learnt from: CR
Repo: Aureliolo/synthorg PR: 0
File: CLAUDE.md:0-0
Timestamp: 2026-03-15T21:49:53.264Z
Learning: Fix everything valid — never skip when review agents find valid issues (including pre-existing issues in surrounding code, suggestions, and findings adjacent to the PR's changes). No deferring, no 'out of scope' skipping.
Applied to files:
.claude/skills/worktree/SKILL.md
📚 Learning: 2026-03-21T11:08:01.542Z
Learnt from: CR
Repo: Aureliolo/synthorg PR: 0
File: CLAUDE.md:0-0
Timestamp: 2026-03-21T11:08:01.542Z
Learning: Applies to **/*.{py,md} : Line length: 88 characters (ruff).
Applied to files:
.claude/skills/worktree/SKILL.md
📚 Learning: 2026-03-28T14:27:45.937Z
Learnt from: CR
Repo: Aureliolo/synthorg PR: 0
File: CLAUDE.md:0-0
Timestamp: 2026-03-28T14:27:45.937Z
Learning: When review agents find valid issues (including pre-existing issues in surrounding code, suggestions, and findings adjacent to the PR's changes), fix them all — no deferring, no 'out of scope' skipping
Applied to files:
.claude/skills/worktree/SKILL.md
🔇 Additional comments (1)
.claude/skills/post-merge-cleanup/SKILL.md (1)
19-23: Good safety/robustness update for gone-branch cleanup.Switching to
git for-each-refand explicitly requiring worktree removal before branch deletion is the right direction.Also applies to: 31-32
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
🤖 I have created a release *beep* *boop* --- #MAJOR CHANGES; We got a somewhat working webui :) ## [0.5.0](v0.4.9...v0.5.0) (2026-03-30) ### Features * add analytics trends and budget forecast API endpoints ([#798](#798)) ([16b61f5](16b61f5)) * add department policies to default templates ([#852](#852)) ([7a41548](7a41548)) * add remaining activity event types (task_started, tool_used, delegation, cost_incurred) ([#832](#832)) ([4252fac](4252fac)) * agent performance, activity, and history API endpoints ([#811](#811)) ([9b75c1d](9b75c1d)) * Agent Profiles and Detail pages (biography, career, performance) ([#874](#874)) ([62d7880](62d7880)) * app shell, Storybook, and CI/CD pipeline ([#819](#819)) ([d4dde90](d4dde90)) * Approvals page with risk grouping, urgency indicators, batch actions ([#889](#889)) ([4e9673d](4e9673d)) * Budget Panel page (P&L dashboard, breakdown charts, forecast) ([#890](#890)) ([b63b0f1](b63b0f1)) * build infrastructure layer (API client, auth, WebSocket) ([#815](#815)) ([9f01d3e](9f01d3e)) * CLI global options infrastructure, UI modes, exit codes, env vars ([#891](#891)) ([fef4fc5](fef4fc5)) * CodeMirror editor and theme preferences toggle ([#905](#905), [#807](#807)) ([#909](#909)) ([41fbedc](41fbedc)) * Company page (department/agent management) ([#888](#888)) ([cfb88b0](cfb88b0)) * comprehensive hint coverage across all CLI commands ([#900](#900)) ([937974e](937974e)) * config system extensions, per-command flags for init/start/stop/status/logs ([#895](#895)) ([32f83fe](32f83fe)) * configurable currency system replacing hardcoded USD ([#854](#854)) ([b372551](b372551)) * Dashboard page (metric cards, activity feed, budget burn) ([#861](#861)) ([7d519d5](7d519d5)) * department health, provider status, and activity feed endpoints ([#818](#818)) ([6d5f196](6d5f196)) * design tokens and core UI components ([#833](#833)) ([ed887f2](ed887f2)) * extend approval, meeting, and budget API responses ([#834](#834)) ([31472bf](31472bf)) * frontend polish -- real-time UX, accessibility, responsive, performance ([#790](#790), [#792](#792), [#791](#791), [#793](#793)) ([#917](#917)) ([f04a537](f04a537)) * implement human roles and access control levels ([#856](#856)) ([d6d8a06](d6d8a06)) * implement semantic conflict detection in workspace merge ([#860](#860)) ([d97283b](d97283b)) * interaction components and animation patterns ([#853](#853)) ([82d4b01](82d4b01)) * Login page + first-run bootstrap + Company page ([#789](#789), [#888](#888)) ([#896](#896)) ([8758e8d](8758e8d)) * Meetings page with timeline viz, token bars, contribution formatting ([#788](#788)) ([#904](#904)) ([b207f46](b207f46)) * Messages page with threading, channel badges, sender indicators ([#787](#787)) ([#903](#903)) ([28293ad](28293ad)) * Org Chart force-directed view and drag-drop reassignment ([#872](#872), [#873](#873)) ([#912](#912)) ([a68a938](a68a938)) * Org Chart page (living nodes, status, CRUD, department health) ([#870](#870)) ([0acbdae](0acbdae)) * per-command flags for remaining commands, auto-behavior wiring, help/discoverability ([#897](#897)) ([3f7afa2](3f7afa2)) * Providers page with backend rework -- health, CRUD, subscription auth ([#893](#893)) ([9f8dd98](9f8dd98)) * scaffold React + Vite + TypeScript + Tailwind project ([#799](#799)) ([bd151aa](bd151aa)) * Settings page with search, dependency indicators, grouped rendering ([#784](#784)) ([#902](#902)) ([a7b9870](a7b9870)) * Setup Wizard rebuild with template comparison, cost estimator, theme customization ([#879](#879)) ([ae8b50b](ae8b50b)) * setup wizard UX -- template filters, card metadata, provider form reuse ([#910](#910)) ([7f04676](7f04676)) * setup wizard UX overhaul -- mode choice, step reorder, provider fixes ([#907](#907)) ([ee964c4](ee964c4)) * structured ModelRequirement in template agent configs ([#795](#795)) ([7433548](7433548)) * Task Board page (rich Kanban, filtering, dependency viz) ([#871](#871)) ([04a19b0](04a19b0)) ### Bug Fixes * align frontend types with backend and debounce WS refetches ([#916](#916)) ([134c11b](134c11b)) * auto-cleanup targets newly pulled images instead of old ones ([#884](#884)) ([50e6591](50e6591)) * correct wipe backup-skip flow and harden error handling ([#808](#808)) ([c05860f](c05860f)) * improve provider setup in wizard, subscription auth, dashboard bugs ([#914](#914)) ([87bf8e6](87bf8e6)) * improve update channel detection and add config get command ([#814](#814)) ([6b137f0](6b137f0)) * resolve all ESLint warnings, add zero-warnings enforcement ([#899](#899)) ([079b46a](079b46a)) * subscription auth uses api_key, base URL optional for cloud providers ([#915](#915)) ([f0098dd](f0098dd)) ### Refactoring * semantic analyzer cleanup -- shared filtering, concurrency, extraction ([#908](#908)) ([81372bf](81372bf)) ### Documentation * brand identity and UX design system from [#765](#765) exploration ([#804](#804)) ([389a9f4](389a9f4)) * page structure and information architecture for v0.5.0 dashboard ([#809](#809)) ([f8d6d4a](f8d6d4a)) * write UX design guidelines with WCAG-verified color system ([#816](#816)) ([4a4594e](4a4594e)) ### Tests * add unit tests for agent hooks and page components ([#875](#875)) ([#901](#901)) ([1d81546](1d81546)) ### CI/CD * bump actions/deploy-pages from 4.0.5 to 5.0.0 in the major group ([#831](#831)) ([01c19de](01c19de)) * bump astral-sh/setup-uv from 7.6.0 to 8.0.0 in /.github/actions/setup-python-uv in the all group ([#920](#920)) ([5f6ba54](5f6ba54)) * bump codecov/codecov-action from 5.5.3 to 6.0.0 in the major group ([#868](#868)) ([f22a181](f22a181)) * bump github/codeql-action from 4.34.1 to 4.35.0 in the all group ([#883](#883)) ([87a4890](87a4890)) * bump sigstore/cosign-installer from 4.1.0 to 4.1.1 in the minor-and-patch group ([#830](#830)) ([7a69050](7a69050)) * bump the all group with 3 updates ([#923](#923)) ([ff27c8e](ff27c8e)) * bump wrangler from 4.76.0 to 4.77.0 in /.github in the minor-and-patch group ([#822](#822)) ([07d43eb](07d43eb)) * bump wrangler from 4.77.0 to 4.78.0 in /.github in the all group ([#882](#882)) ([f84118d](f84118d)) ### Maintenance * add design system enforcement hook and component inventory ([#846](#846)) ([15abc43](15abc43)) * add dev-only auth bypass for frontend testing ([#885](#885)) ([6cdcd8a](6cdcd8a)) * add pre-push rebase check hook ([#855](#855)) ([b637a04](b637a04)) * backend hardening -- eviction/size-caps and model validation ([#911](#911)) ([81253d9](81253d9)) * bump axios from 1.13.6 to 1.14.0 in /web in the all group across 1 directory ([#922](#922)) ([b1b0232](b1b0232)) * bump brace-expansion from 5.0.4 to 5.0.5 in /web ([#862](#862)) ([ba4a565](ba4a565)) * bump eslint-plugin-react-refresh from 0.4.26 to 0.5.2 in /web ([#801](#801)) ([7574bb5](7574bb5)) * bump faker from 40.11.0 to 40.11.1 in the minor-and-patch group ([#803](#803)) ([14d322e](14d322e)) * bump https://github.com/astral-sh/ruff-pre-commit from v0.15.7 to 0.15.8 ([#864](#864)) ([f52901e](f52901e)) * bump nginxinc/nginx-unprivileged from `6582a34` to `f99cc61` in /docker/web in the all group ([#919](#919)) ([df85e4f](df85e4f)) * bump nginxinc/nginx-unprivileged from `ccbac1a` to `6582a34` in /docker/web ([#800](#800)) ([f4e9450](f4e9450)) * bump node from `44bcbf4` to `71be405` in /docker/sandbox ([#827](#827)) ([91bec67](91bec67)) * bump node from `5209bca` to `cf38e1f` in /docker/web ([#863](#863)) ([66d6043](66d6043)) * bump picomatch in /site ([#842](#842)) ([5f20bcc](5f20bcc)) * bump recharts 2->3 and @types/node 22->25 in /web ([#802](#802)) ([a908800](a908800)) * Bump requests from 2.32.5 to 2.33.0 ([#843](#843)) ([41daf69](41daf69)) * bump smol-toml from 1.6.0 to 1.6.1 in /site ([#826](#826)) ([3e5dbe4](3e5dbe4)) * bump the all group with 3 updates ([#921](#921)) ([7bace0b](7bace0b)) * bump the minor-and-patch group across 1 directory with 2 updates ([#829](#829)) ([93e611f](93e611f)) * bump the minor-and-patch group across 1 directory with 3 updates ([#841](#841)) ([7010c8e](7010c8e)) * bump the minor-and-patch group across 1 directory with 3 updates ([#869](#869)) ([548cee5](548cee5)) * bump the minor-and-patch group in /site with 2 updates ([#865](#865)) ([9558101](9558101)) * bump the minor-and-patch group with 2 updates ([#867](#867)) ([4830706](4830706)) * consolidate Dependabot groups to 1 PR per ecosystem ([06d2556](06d2556)) * consolidate Dependabot groups to 1 PR per ecosystem ([#881](#881)) ([06d2556](06d2556)) * improve worktree skill with full dep sync and status enhancements ([#906](#906)) ([772c625](772c625)) * remove Vue remnants and document framework decision ([#851](#851)) ([bf2adf6](bf2adf6)) * update web dependencies and fix brace-expansion CVE ([#880](#880)) ([a7a0ed6](a7a0ed6)) * upgrade to Storybook 10 and TypeScript 6 ([#845](#845)) ([52d95f2](52d95f2)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Summary
wt-synthorg.ps1. Fixedcdusage blocked by hooks to use--project/--prefix/-Cflags/worktree setup "description"creates worktrees without GitHub issues, for ad-hoc workrebasecommand now re-syncs all deps after successful rebase (lock files may change)statusshows a Deps column flagging worktrees with stale lock files vs main/clean_gone: cleanup now also prunes non-worktree gone branches in one passTest plan
/worktree setup "test"to verify Mode 4/worktree statusto verify Deps column/worktree rebaseafter a main merge to verify dep re-syncReview coverage
Quick mode -- no agents (docs-only change to
.claude/skills/worktree/SKILL.md)🤖 Generated with Claude Code