Skip to content

fix(scaffold): add plugins/ to layered directories - #1252

Merged
waynesun09 merged 4 commits into
mainfrom
fix-1251-plugins-layered-dirs
May 20, 2026
Merged

fix(scaffold): add plugins/ to layered directories#1252
waynesun09 merged 4 commits into
mainfrom
fix-1251-plugins-layered-dirs

Conversation

@waynesun09

Copy link
Copy Markdown
Member

Summary

  • Add plugins to LAYERED_DIRS in all 5 reusable workflows (code, review, triage, fix, retro)
  • Add plugins to the inline prioritize workflow's sparse-checkout and both copy loops
  • Add "plugins/" to the Go layeredDirs slice in scaffold.go
  • Create customized/plugins/.gitkeep to match the pattern of other layered dirs
  • Update scaffold tests (TestLayeredDirsNotInstalled, TestCustomizedDirsInstalled, TestFullsendRepoFilesExist)

Test plan

  • go test ./internal/scaffold/ — all 34 tests pass
  • make lint — passes
  • Verify in a live run that plugins/gopls-lsp is present in the workspace after scaffold

Closes #1251

The scaffold step copies layered directories from upstream defaults into
the runner workspace, but plugins/ was missing from the list. This caused
harness validation to fail when code.yaml referenced plugins/gopls-lsp.

Add plugins/ to LAYERED_DIRS in all five reusable workflows, the inline
prioritize workflow (including its sparse-checkout), the Go layeredDirs
slice, and the customized/ gitkeep set. Update tests accordingly.

Closes #1251

Signed-off-by: Wayne Sun <gsun@redhat.com>
@github-actions

github-actions Bot commented May 20, 2026

Copy link
Copy Markdown

Site preview

Preview: https://bd0a2d4b-site.fullsend-ai.workers.dev

Commit: 9cd2f9c903cdacbacdeabf984cfb0b66d25bc60d

@fullsend-ai-review

fullsend-ai-review Bot commented May 20, 2026

Copy link
Copy Markdown

Review

Findings

Medium

  • [protected-path] .github/workflows/reusable-{code,fix,retro,review,triage}.yml — Five reusable workflow files under .github/ are modified. The PR links to issue scaffold: plugins/ directory not copied to workspace — harness validation fails #1251 and the description explains the rationale (bug fix for harness validation failure caused by plugins/ missing from LAYERED_DIRS). Human approval is always required for protected-path changes, regardless of context.
Previous run

Review

Findings

Medium

  • [protected-path] .github/workflows/reusable-{code,fix,retro,review,triage}.yml — Five reusable workflow files under .github/ are modified. The PR links to issue scaffold: plugins/ directory not copied to workspace — harness validation fails #1251 and the description explains the rationale (bug fix for harness validation failure caused by plugins/ missing from LAYERED_DIRS). Human approval is always required for protected-path changes, regardless of context.

Low

  • [docs-currency] docs/guides/dev/cli-internals.md:368 — The layered-directories table row lists agents/, skills/, harness/, policies/, scripts/, schemas/, env/ but is now missing plugins/. This is the only doc with a complete enumeration that was not updated by this PR (ADR 0035 and the user-facing customizing-agents guide were both updated).
    Remediation: Add plugins/ to the list on line 368 of cli-internals.md.
Previous run

Review

Findings

Medium

  • [protected-path] .github/workflows/reusable-{code,fix,retro,review,triage}.yml — Five reusable workflow files under .github/ are modified. The PR links to issue scaffold: plugins/ directory not copied to workspace — harness validation fails #1251 and the description explains the rationale (bug fix for harness validation failure caused by plugins/ missing from LAYERED_DIRS). Human approval is always required for protected-path changes, regardless of context.

Low

  • [docs-currency] docs/guides/dev/cli-internals.md:368 — The layered-directories table row lists agents/, skills/, harness/, policies/, scripts/, schemas/, env/ but is now missing plugins/. This is the only doc with a complete enumeration that was not updated by this PR (ADR 0035 and the user-facing customizing-agents guide were both updated).
    Remediation: Add plugins/ to the list on line 368 of cli-internals.md.
Previous run (2)

Review

Findings

Medium

  • [protected-path] .github/workflows/reusable-{code,fix,retro,review,triage}.yml, internal/scaffold/fullsend-repo/.github/workflows/prioritize.yml — Six workflow files under .github/ (or scaffolded into .github/) are modified. The PR links to scaffold: plugins/ directory not copied to workspace — harness validation fails #1251 and the description clearly explains the rationale (adding plugins/ to LAYERED_DIRS to fix harness validation failure). Human approval is required for all protected-path changes regardless of context.

Low

  • [consistency] internal/scaffold/fullsend-repo/scripts/post-review.sh, internal/scaffold/fullsend-repo/scripts/post-fix.shplugins/ is added to REVIEW_PROTECTED_PATHS in post-review.sh and PROTECTED_PATHS in post-fix.sh, but the corresponding protected paths list in .claude/skills/pr-review/SKILL.md is not updated. The skill definition notes these should be "kept in sync with post-review.sh".
    Remediation: Add "plugins/" to the protected paths list in .claude/skills/pr-review/SKILL.md.

  • [docs-currency] docs/guides/user/customizing-agents.md:116-117 — The architecture diagram lists layered directories as agents/ skills/ schemas/ harness/ policies/ scripts/ env/ without plugins/. The guide already references plugins/gopls-lsp in harness config examples (lines 23-24, 257-258), but the layered-directory diagram is now incomplete.
    Remediation: Add plugins/ to the layered directories line in the architecture diagram.

Previous run (3)

Review

Findings

Medium

  • [protected-path] .github/workflows/reusable-{code,fix,retro,review,triage}.yml — Five reusable workflow files under .github/ are modified. The PR links to scaffold: plugins/ directory not copied to workspace — harness validation fails #1251 and the description clearly explains the rationale (adding plugins/ to LAYERED_DIRS to fix harness validation failure). Human approval is required for all protected-path changes regardless of context.

Low

  • [docs-currency] docs/ADRs/0035-layered-content-resolution.md — ADR 0035 enumerates layered directories in four places (lines 74, 88, 91, 101) as agents/, skills/, schemas/, harness/, policies/, scripts/, env/ without plugins/. Now that plugins/ is a layered directory, these lists are incomplete.
    Remediation: Add plugins/ to each enumeration of layered directories in ADR 0035.

  • [docs-currency] docs/guides/user/customizing-agents.md:116-117 — The architecture diagram lists layered directories as agents/ skills/ schemas/ harness/ policies/ scripts/ env/ without plugins/. The guide already references plugins/gopls-lsp in harness config examples, but the layered-directory diagram is now incomplete.
    Remediation: Add plugins/ to the layered directories line in the architecture diagram.

@fullsend-ai-review fullsend-ai-review Bot added the requires-manual-review Review requires human judgment label May 20, 2026
Address review findings from review-squad:
- Add plugins/ to PROTECTED_PATHS in post-fix.sh and
  REVIEW_PROTECTED_PATHS in post-review.sh to prevent autonomous
  agents from modifying/approving plugin config changes
- Add customized/plugins/.gitkeep to e2e admin expected files
- Update ADR 0035 to include plugins/ in all 4 directory
  enumerations and correct .gitkeep counts (7 → 8)
- Reorder LAYERED_DIRS in 5 reusable workflows to match
  scaffold.go canonical order

Signed-off-by: Wayne Sun <gsun@redhat.com>
@fullsend-ai-review fullsend-ai-review Bot added requires-manual-review Review requires human judgment and removed requires-manual-review Review requires human judgment labels May 20, 2026
…agram

Address review-agent LOW findings:
- Add plugins/ to protected paths list in pr-review SKILL.md
  (kept in sync with post-review.sh)
- Add plugins/ to layered directories diagram in
  customizing-agents.md user guide

Signed-off-by: Wayne Sun <gsun@redhat.com>
@fullsend-ai-review fullsend-ai-review Bot added requires-manual-review Review requires human judgment and removed requires-manual-review Review requires human judgment labels May 20, 2026
Signed-off-by: Wayne Sun <gsun@redhat.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

requires-manual-review Review requires human judgment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

scaffold: plugins/ directory not copied to workspace — harness validation fails

1 participant