bigpowers 2.83.3 → 2.84.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.codebuddy/skills/align-grid/SKILL.md +110 -0
- package/.codebuddy/skills/assess-impact/SKILL.md +91 -0
- package/.codebuddy/skills/audit-code/SKILL.md +187 -0
- package/.codebuddy/skills/audit-plan/SKILL.md +89 -0
- package/.codebuddy/skills/build-epic/SKILL.md +105 -0
- package/.codebuddy/skills/change-request/SKILL.md +121 -0
- package/.codebuddy/skills/commit-message/SKILL.md +140 -0
- package/.codebuddy/skills/compose-workflow/SKILL.md +82 -0
- package/.codebuddy/skills/context7-mcp/SKILL.md +55 -0
- package/.codebuddy/skills/craft-skill/SKILL.md +179 -0
- package/.codebuddy/skills/deepen-architecture/SKILL.md +260 -0
- package/.codebuddy/skills/define-language/SKILL.md +80 -0
- package/.codebuddy/skills/define-success/SKILL.md +65 -0
- package/.codebuddy/skills/delegate-task/SKILL.md +91 -0
- package/.codebuddy/skills/deploy/SKILL.md +198 -0
- package/.codebuddy/skills/design-interface/SKILL.md +97 -0
- package/.codebuddy/skills/develop-tdd/SKILL.md +406 -0
- package/.codebuddy/skills/diagnose-root/SKILL.md +24 -0
- package/.codebuddy/skills/diagnose-stall/SKILL.md +54 -0
- package/.codebuddy/skills/dispatch-agents/SKILL.md +118 -0
- package/.codebuddy/skills/edit-document/SKILL.md +23 -0
- package/.codebuddy/skills/elaborate-spec/SKILL.md +101 -0
- package/.codebuddy/skills/enforce-first/SKILL.md +32 -0
- package/.codebuddy/skills/evolve-skill/SKILL.md +55 -0
- package/.codebuddy/skills/execute-plan/SKILL.md +61 -0
- package/.codebuddy/skills/extract-design/SKILL.md +132 -0
- package/.codebuddy/skills/find-way/SKILL.md +191 -0
- package/.codebuddy/skills/fix-bug/SKILL.md +67 -0
- package/.codebuddy/skills/gate-trace/SKILL.md +88 -0
- package/.codebuddy/skills/generate-allure-report/SKILL.md +285 -0
- package/.codebuddy/skills/grill-me/SKILL.md +96 -0
- package/.codebuddy/skills/grill-with-docs/SKILL.md +41 -0
- package/.codebuddy/skills/guard-git/SKILL.md +231 -0
- package/.codebuddy/skills/harden-vps/SKILL.md +288 -0
- package/.codebuddy/skills/hook-commits/SKILL.md +94 -0
- package/.codebuddy/skills/inspect-quality/SKILL.md +106 -0
- package/.codebuddy/skills/investigate-bug/SKILL.md +127 -0
- package/.codebuddy/skills/kickoff-branch/SKILL.md +143 -0
- package/.codebuddy/skills/maintain-wiki/SKILL.md +64 -0
- package/.codebuddy/skills/map-codebase/SKILL.md +71 -0
- package/.codebuddy/skills/migrate-spec/SKILL.md +862 -0
- package/.codebuddy/skills/model-domain/SKILL.md +232 -0
- package/.codebuddy/skills/orchestrate-project/SKILL.md +174 -0
- package/.codebuddy/skills/organize-workspace/SKILL.md +164 -0
- package/.codebuddy/skills/plan-refactor/SKILL.md +87 -0
- package/.codebuddy/skills/plan-release/SKILL.md +145 -0
- package/.codebuddy/skills/plan-tests/SKILL.md +75 -0
- package/.codebuddy/skills/plan-work/SKILL.md +260 -0
- package/.codebuddy/skills/publish-package/SKILL.md +328 -0
- package/.codebuddy/skills/quick-fix/SKILL.md +114 -0
- package/.codebuddy/skills/release-branch/SKILL.md +298 -0
- package/.codebuddy/skills/request-review/SKILL.md +112 -0
- package/.codebuddy/skills/research-first/SKILL.md +87 -0
- package/.codebuddy/skills/reset-baseline/SKILL.md +21 -0
- package/.codebuddy/skills/respond-review/SKILL.md +71 -0
- package/.codebuddy/skills/run-benchmark/SKILL.md +85 -0
- package/.codebuddy/skills/run-evals/SKILL.md +80 -0
- package/.codebuddy/skills/run-planning/SKILL.md +101 -0
- package/.codebuddy/skills/scope-work/SKILL.md +63 -0
- package/.codebuddy/skills/search-skills/SKILL.md +73 -0
- package/.codebuddy/skills/security-review/SKILL.md +384 -0
- package/.codebuddy/skills/seed-conventions/SKILL.md +285 -0
- package/.codebuddy/skills/session-state/SKILL.md +146 -0
- package/.codebuddy/skills/setup-environment/SKILL.md +39 -0
- package/.codebuddy/skills/simulate-agents/SKILL.md +26 -0
- package/.codebuddy/skills/slice-tasks/SKILL.md +68 -0
- package/.codebuddy/skills/smoke-test/SKILL.md +242 -0
- package/.codebuddy/skills/spike-prototype/SKILL.md +95 -0
- package/.codebuddy/skills/stocktake-skills/SKILL.md +72 -0
- package/.codebuddy/skills/survey-context/SKILL.md +135 -0
- package/.codebuddy/skills/terse-mode/SKILL.md +42 -0
- package/.codebuddy/skills/trace-requirement/SKILL.md +69 -0
- package/.codebuddy/skills/using-bigpowers/SKILL.md +111 -0
- package/.codebuddy/skills/validate-contracts/SKILL.md +309 -0
- package/.codebuddy/skills/validate-fix/SKILL.md +106 -0
- package/.codebuddy/skills/verify-work/SKILL.md +191 -0
- package/.codebuddy/skills/visual-dashboard/SKILL.md +50 -0
- package/.codebuddy/skills/wire-ci/SKILL.md +375 -0
- package/.codebuddy/skills/wire-observability/SKILL.md +97 -0
- package/.codebuddy/skills/write-document/SKILL.md +255 -0
- package/.codex/skills/align-grid/SKILL.md +110 -0
- package/.codex/skills/assess-impact/SKILL.md +91 -0
- package/.codex/skills/audit-code/SKILL.md +187 -0
- package/.codex/skills/audit-plan/SKILL.md +89 -0
- package/.codex/skills/build-epic/SKILL.md +105 -0
- package/.codex/skills/change-request/SKILL.md +121 -0
- package/.codex/skills/commit-message/SKILL.md +140 -0
- package/.codex/skills/compose-workflow/SKILL.md +82 -0
- package/.codex/skills/context7-mcp/SKILL.md +55 -0
- package/.codex/skills/craft-skill/SKILL.md +179 -0
- package/.codex/skills/deepen-architecture/SKILL.md +260 -0
- package/.codex/skills/define-language/SKILL.md +80 -0
- package/.codex/skills/define-success/SKILL.md +65 -0
- package/.codex/skills/delegate-task/SKILL.md +91 -0
- package/.codex/skills/deploy/SKILL.md +198 -0
- package/.codex/skills/design-interface/SKILL.md +97 -0
- package/.codex/skills/develop-tdd/SKILL.md +406 -0
- package/.codex/skills/diagnose-root/SKILL.md +24 -0
- package/.codex/skills/diagnose-stall/SKILL.md +54 -0
- package/.codex/skills/dispatch-agents/SKILL.md +118 -0
- package/.codex/skills/edit-document/SKILL.md +23 -0
- package/.codex/skills/elaborate-spec/SKILL.md +101 -0
- package/.codex/skills/enforce-first/SKILL.md +32 -0
- package/.codex/skills/evolve-skill/SKILL.md +55 -0
- package/.codex/skills/execute-plan/SKILL.md +61 -0
- package/.codex/skills/extract-design/SKILL.md +132 -0
- package/.codex/skills/find-way/SKILL.md +191 -0
- package/.codex/skills/fix-bug/SKILL.md +67 -0
- package/.codex/skills/gate-trace/SKILL.md +88 -0
- package/.codex/skills/generate-allure-report/SKILL.md +285 -0
- package/.codex/skills/grill-me/SKILL.md +96 -0
- package/.codex/skills/grill-with-docs/SKILL.md +41 -0
- package/.codex/skills/guard-git/SKILL.md +231 -0
- package/.codex/skills/harden-vps/SKILL.md +288 -0
- package/.codex/skills/hook-commits/SKILL.md +94 -0
- package/.codex/skills/inspect-quality/SKILL.md +106 -0
- package/.codex/skills/investigate-bug/SKILL.md +127 -0
- package/.codex/skills/kickoff-branch/SKILL.md +143 -0
- package/.codex/skills/maintain-wiki/SKILL.md +64 -0
- package/.codex/skills/map-codebase/SKILL.md +71 -0
- package/.codex/skills/migrate-spec/SKILL.md +862 -0
- package/.codex/skills/model-domain/SKILL.md +232 -0
- package/.codex/skills/orchestrate-project/SKILL.md +174 -0
- package/.codex/skills/organize-workspace/SKILL.md +164 -0
- package/.codex/skills/plan-refactor/SKILL.md +87 -0
- package/.codex/skills/plan-release/SKILL.md +145 -0
- package/.codex/skills/plan-tests/SKILL.md +75 -0
- package/.codex/skills/plan-work/SKILL.md +260 -0
- package/.codex/skills/publish-package/SKILL.md +328 -0
- package/.codex/skills/quick-fix/SKILL.md +114 -0
- package/.codex/skills/release-branch/SKILL.md +298 -0
- package/.codex/skills/request-review/SKILL.md +112 -0
- package/.codex/skills/research-first/SKILL.md +87 -0
- package/.codex/skills/reset-baseline/SKILL.md +21 -0
- package/.codex/skills/respond-review/SKILL.md +71 -0
- package/.codex/skills/run-benchmark/SKILL.md +85 -0
- package/.codex/skills/run-evals/SKILL.md +80 -0
- package/.codex/skills/run-planning/SKILL.md +101 -0
- package/.codex/skills/scope-work/SKILL.md +63 -0
- package/.codex/skills/search-skills/SKILL.md +73 -0
- package/.codex/skills/security-review/SKILL.md +384 -0
- package/.codex/skills/seed-conventions/SKILL.md +285 -0
- package/.codex/skills/session-state/SKILL.md +146 -0
- package/.codex/skills/setup-environment/SKILL.md +39 -0
- package/.codex/skills/simulate-agents/SKILL.md +26 -0
- package/.codex/skills/slice-tasks/SKILL.md +68 -0
- package/.codex/skills/smoke-test/SKILL.md +242 -0
- package/.codex/skills/spike-prototype/SKILL.md +95 -0
- package/.codex/skills/stocktake-skills/SKILL.md +72 -0
- package/.codex/skills/survey-context/SKILL.md +135 -0
- package/.codex/skills/terse-mode/SKILL.md +42 -0
- package/.codex/skills/trace-requirement/SKILL.md +69 -0
- package/.codex/skills/using-bigpowers/SKILL.md +111 -0
- package/.codex/skills/validate-contracts/SKILL.md +309 -0
- package/.codex/skills/validate-fix/SKILL.md +106 -0
- package/.codex/skills/verify-work/SKILL.md +191 -0
- package/.codex/skills/visual-dashboard/SKILL.md +50 -0
- package/.codex/skills/wire-ci/SKILL.md +375 -0
- package/.codex/skills/wire-observability/SKILL.md +97 -0
- package/.codex/skills/write-document/SKILL.md +255 -0
- package/.kilocode/rules/align-grid.md +110 -0
- package/.kilocode/rules/assess-impact.md +91 -0
- package/.kilocode/rules/audit-code.md +187 -0
- package/.kilocode/rules/audit-plan.md +89 -0
- package/.kilocode/rules/build-epic.md +105 -0
- package/.kilocode/rules/change-request.md +121 -0
- package/.kilocode/rules/commit-message.md +140 -0
- package/.kilocode/rules/compose-workflow.md +82 -0
- package/.kilocode/rules/context7-mcp.md +55 -0
- package/.kilocode/rules/craft-skill.md +179 -0
- package/.kilocode/rules/deepen-architecture.md +260 -0
- package/.kilocode/rules/define-language.md +80 -0
- package/.kilocode/rules/define-success.md +65 -0
- package/.kilocode/rules/delegate-task.md +91 -0
- package/.kilocode/rules/deploy.md +198 -0
- package/.kilocode/rules/design-interface.md +97 -0
- package/.kilocode/rules/develop-tdd.md +406 -0
- package/.kilocode/rules/diagnose-root.md +24 -0
- package/.kilocode/rules/diagnose-stall.md +54 -0
- package/.kilocode/rules/dispatch-agents.md +118 -0
- package/.kilocode/rules/edit-document.md +23 -0
- package/.kilocode/rules/elaborate-spec.md +101 -0
- package/.kilocode/rules/enforce-first.md +32 -0
- package/.kilocode/rules/evolve-skill.md +55 -0
- package/.kilocode/rules/execute-plan.md +61 -0
- package/.kilocode/rules/extract-design.md +132 -0
- package/.kilocode/rules/find-way.md +191 -0
- package/.kilocode/rules/fix-bug.md +67 -0
- package/.kilocode/rules/gate-trace.md +88 -0
- package/.kilocode/rules/generate-allure-report.md +285 -0
- package/.kilocode/rules/grill-me.md +96 -0
- package/.kilocode/rules/grill-with-docs.md +41 -0
- package/.kilocode/rules/guard-git.md +231 -0
- package/.kilocode/rules/harden-vps.md +288 -0
- package/.kilocode/rules/hook-commits.md +94 -0
- package/.kilocode/rules/inspect-quality.md +106 -0
- package/.kilocode/rules/investigate-bug.md +127 -0
- package/.kilocode/rules/kickoff-branch.md +143 -0
- package/.kilocode/rules/maintain-wiki.md +64 -0
- package/.kilocode/rules/map-codebase.md +71 -0
- package/.kilocode/rules/migrate-spec.md +862 -0
- package/.kilocode/rules/model-domain.md +232 -0
- package/.kilocode/rules/orchestrate-project.md +174 -0
- package/.kilocode/rules/organize-workspace.md +164 -0
- package/.kilocode/rules/plan-refactor.md +87 -0
- package/.kilocode/rules/plan-release.md +145 -0
- package/.kilocode/rules/plan-tests.md +75 -0
- package/.kilocode/rules/plan-work.md +260 -0
- package/.kilocode/rules/publish-package.md +328 -0
- package/.kilocode/rules/quick-fix.md +114 -0
- package/.kilocode/rules/release-branch.md +298 -0
- package/.kilocode/rules/request-review.md +112 -0
- package/.kilocode/rules/research-first.md +87 -0
- package/.kilocode/rules/reset-baseline.md +21 -0
- package/.kilocode/rules/respond-review.md +71 -0
- package/.kilocode/rules/run-benchmark.md +85 -0
- package/.kilocode/rules/run-evals.md +80 -0
- package/.kilocode/rules/run-planning.md +101 -0
- package/.kilocode/rules/scope-work.md +63 -0
- package/.kilocode/rules/search-skills.md +73 -0
- package/.kilocode/rules/security-review.md +384 -0
- package/.kilocode/rules/seed-conventions.md +285 -0
- package/.kilocode/rules/session-state.md +146 -0
- package/.kilocode/rules/setup-environment.md +39 -0
- package/.kilocode/rules/simulate-agents.md +26 -0
- package/.kilocode/rules/slice-tasks.md +68 -0
- package/.kilocode/rules/smoke-test.md +242 -0
- package/.kilocode/rules/spike-prototype.md +95 -0
- package/.kilocode/rules/stocktake-skills.md +72 -0
- package/.kilocode/rules/survey-context.md +135 -0
- package/.kilocode/rules/terse-mode.md +42 -0
- package/.kilocode/rules/trace-requirement.md +69 -0
- package/.kilocode/rules/using-bigpowers.md +111 -0
- package/.kilocode/rules/validate-contracts.md +309 -0
- package/.kilocode/rules/validate-fix.md +106 -0
- package/.kilocode/rules/verify-work.md +191 -0
- package/.kilocode/rules/visual-dashboard.md +50 -0
- package/.kilocode/rules/wire-ci.md +375 -0
- package/.kilocode/rules/wire-observability.md +97 -0
- package/.kilocode/rules/write-document.md +255 -0
- package/.pi/package.json +1 -1
- package/.trae/skills/align-grid/SKILL.md +110 -0
- package/.trae/skills/assess-impact/SKILL.md +91 -0
- package/.trae/skills/audit-code/SKILL.md +187 -0
- package/.trae/skills/audit-plan/SKILL.md +89 -0
- package/.trae/skills/build-epic/SKILL.md +105 -0
- package/.trae/skills/change-request/SKILL.md +121 -0
- package/.trae/skills/commit-message/SKILL.md +140 -0
- package/.trae/skills/compose-workflow/SKILL.md +82 -0
- package/.trae/skills/context7-mcp/SKILL.md +55 -0
- package/.trae/skills/craft-skill/SKILL.md +179 -0
- package/.trae/skills/deepen-architecture/SKILL.md +260 -0
- package/.trae/skills/define-language/SKILL.md +80 -0
- package/.trae/skills/define-success/SKILL.md +65 -0
- package/.trae/skills/delegate-task/SKILL.md +91 -0
- package/.trae/skills/deploy/SKILL.md +198 -0
- package/.trae/skills/design-interface/SKILL.md +97 -0
- package/.trae/skills/develop-tdd/SKILL.md +406 -0
- package/.trae/skills/diagnose-root/SKILL.md +24 -0
- package/.trae/skills/diagnose-stall/SKILL.md +54 -0
- package/.trae/skills/dispatch-agents/SKILL.md +118 -0
- package/.trae/skills/edit-document/SKILL.md +23 -0
- package/.trae/skills/elaborate-spec/SKILL.md +101 -0
- package/.trae/skills/enforce-first/SKILL.md +32 -0
- package/.trae/skills/evolve-skill/SKILL.md +55 -0
- package/.trae/skills/execute-plan/SKILL.md +61 -0
- package/.trae/skills/extract-design/SKILL.md +132 -0
- package/.trae/skills/find-way/SKILL.md +191 -0
- package/.trae/skills/fix-bug/SKILL.md +67 -0
- package/.trae/skills/gate-trace/SKILL.md +88 -0
- package/.trae/skills/generate-allure-report/SKILL.md +285 -0
- package/.trae/skills/grill-me/SKILL.md +96 -0
- package/.trae/skills/grill-with-docs/SKILL.md +41 -0
- package/.trae/skills/guard-git/SKILL.md +231 -0
- package/.trae/skills/harden-vps/SKILL.md +288 -0
- package/.trae/skills/hook-commits/SKILL.md +94 -0
- package/.trae/skills/inspect-quality/SKILL.md +106 -0
- package/.trae/skills/investigate-bug/SKILL.md +127 -0
- package/.trae/skills/kickoff-branch/SKILL.md +143 -0
- package/.trae/skills/maintain-wiki/SKILL.md +64 -0
- package/.trae/skills/map-codebase/SKILL.md +71 -0
- package/.trae/skills/migrate-spec/SKILL.md +862 -0
- package/.trae/skills/model-domain/SKILL.md +232 -0
- package/.trae/skills/orchestrate-project/SKILL.md +174 -0
- package/.trae/skills/organize-workspace/SKILL.md +164 -0
- package/.trae/skills/plan-refactor/SKILL.md +87 -0
- package/.trae/skills/plan-release/SKILL.md +145 -0
- package/.trae/skills/plan-tests/SKILL.md +75 -0
- package/.trae/skills/plan-work/SKILL.md +260 -0
- package/.trae/skills/publish-package/SKILL.md +328 -0
- package/.trae/skills/quick-fix/SKILL.md +114 -0
- package/.trae/skills/release-branch/SKILL.md +298 -0
- package/.trae/skills/request-review/SKILL.md +112 -0
- package/.trae/skills/research-first/SKILL.md +87 -0
- package/.trae/skills/reset-baseline/SKILL.md +21 -0
- package/.trae/skills/respond-review/SKILL.md +71 -0
- package/.trae/skills/run-benchmark/SKILL.md +85 -0
- package/.trae/skills/run-evals/SKILL.md +80 -0
- package/.trae/skills/run-planning/SKILL.md +101 -0
- package/.trae/skills/scope-work/SKILL.md +63 -0
- package/.trae/skills/search-skills/SKILL.md +73 -0
- package/.trae/skills/security-review/SKILL.md +384 -0
- package/.trae/skills/seed-conventions/SKILL.md +285 -0
- package/.trae/skills/session-state/SKILL.md +146 -0
- package/.trae/skills/setup-environment/SKILL.md +39 -0
- package/.trae/skills/simulate-agents/SKILL.md +26 -0
- package/.trae/skills/slice-tasks/SKILL.md +68 -0
- package/.trae/skills/smoke-test/SKILL.md +242 -0
- package/.trae/skills/spike-prototype/SKILL.md +95 -0
- package/.trae/skills/stocktake-skills/SKILL.md +72 -0
- package/.trae/skills/survey-context/SKILL.md +135 -0
- package/.trae/skills/terse-mode/SKILL.md +42 -0
- package/.trae/skills/trace-requirement/SKILL.md +69 -0
- package/.trae/skills/using-bigpowers/SKILL.md +111 -0
- package/.trae/skills/validate-contracts/SKILL.md +309 -0
- package/.trae/skills/validate-fix/SKILL.md +106 -0
- package/.trae/skills/verify-work/SKILL.md +191 -0
- package/.trae/skills/visual-dashboard/SKILL.md +50 -0
- package/.trae/skills/wire-ci/SKILL.md +375 -0
- package/.trae/skills/wire-observability/SKILL.md +97 -0
- package/.trae/skills/write-document/SKILL.md +255 -0
- package/.windsurf/rules/align-grid.md +110 -0
- package/.windsurf/rules/assess-impact.md +91 -0
- package/.windsurf/rules/audit-code.md +187 -0
- package/.windsurf/rules/audit-plan.md +89 -0
- package/.windsurf/rules/build-epic.md +105 -0
- package/.windsurf/rules/change-request.md +121 -0
- package/.windsurf/rules/commit-message.md +140 -0
- package/.windsurf/rules/compose-workflow.md +82 -0
- package/.windsurf/rules/context7-mcp.md +55 -0
- package/.windsurf/rules/craft-skill.md +179 -0
- package/.windsurf/rules/deepen-architecture.md +260 -0
- package/.windsurf/rules/define-language.md +80 -0
- package/.windsurf/rules/define-success.md +65 -0
- package/.windsurf/rules/delegate-task.md +91 -0
- package/.windsurf/rules/deploy.md +198 -0
- package/.windsurf/rules/design-interface.md +97 -0
- package/.windsurf/rules/develop-tdd.md +406 -0
- package/.windsurf/rules/diagnose-root.md +24 -0
- package/.windsurf/rules/diagnose-stall.md +54 -0
- package/.windsurf/rules/dispatch-agents.md +118 -0
- package/.windsurf/rules/edit-document.md +23 -0
- package/.windsurf/rules/elaborate-spec.md +101 -0
- package/.windsurf/rules/enforce-first.md +32 -0
- package/.windsurf/rules/evolve-skill.md +55 -0
- package/.windsurf/rules/execute-plan.md +61 -0
- package/.windsurf/rules/extract-design.md +132 -0
- package/.windsurf/rules/find-way.md +191 -0
- package/.windsurf/rules/fix-bug.md +67 -0
- package/.windsurf/rules/gate-trace.md +88 -0
- package/.windsurf/rules/generate-allure-report.md +285 -0
- package/.windsurf/rules/grill-me.md +96 -0
- package/.windsurf/rules/grill-with-docs.md +41 -0
- package/.windsurf/rules/guard-git.md +231 -0
- package/.windsurf/rules/harden-vps.md +288 -0
- package/.windsurf/rules/hook-commits.md +94 -0
- package/.windsurf/rules/inspect-quality.md +106 -0
- package/.windsurf/rules/investigate-bug.md +127 -0
- package/.windsurf/rules/kickoff-branch.md +143 -0
- package/.windsurf/rules/maintain-wiki.md +64 -0
- package/.windsurf/rules/map-codebase.md +71 -0
- package/.windsurf/rules/migrate-spec.md +862 -0
- package/.windsurf/rules/model-domain.md +232 -0
- package/.windsurf/rules/orchestrate-project.md +174 -0
- package/.windsurf/rules/organize-workspace.md +164 -0
- package/.windsurf/rules/plan-refactor.md +87 -0
- package/.windsurf/rules/plan-release.md +145 -0
- package/.windsurf/rules/plan-tests.md +75 -0
- package/.windsurf/rules/plan-work.md +260 -0
- package/.windsurf/rules/publish-package.md +328 -0
- package/.windsurf/rules/quick-fix.md +114 -0
- package/.windsurf/rules/release-branch.md +298 -0
- package/.windsurf/rules/request-review.md +112 -0
- package/.windsurf/rules/research-first.md +87 -0
- package/.windsurf/rules/reset-baseline.md +21 -0
- package/.windsurf/rules/respond-review.md +71 -0
- package/.windsurf/rules/run-benchmark.md +85 -0
- package/.windsurf/rules/run-evals.md +80 -0
- package/.windsurf/rules/run-planning.md +101 -0
- package/.windsurf/rules/scope-work.md +63 -0
- package/.windsurf/rules/search-skills.md +73 -0
- package/.windsurf/rules/security-review.md +384 -0
- package/.windsurf/rules/seed-conventions.md +285 -0
- package/.windsurf/rules/session-state.md +146 -0
- package/.windsurf/rules/setup-environment.md +39 -0
- package/.windsurf/rules/simulate-agents.md +26 -0
- package/.windsurf/rules/slice-tasks.md +68 -0
- package/.windsurf/rules/smoke-test.md +242 -0
- package/.windsurf/rules/spike-prototype.md +95 -0
- package/.windsurf/rules/stocktake-skills.md +72 -0
- package/.windsurf/rules/survey-context.md +135 -0
- package/.windsurf/rules/terse-mode.md +42 -0
- package/.windsurf/rules/trace-requirement.md +69 -0
- package/.windsurf/rules/using-bigpowers.md +111 -0
- package/.windsurf/rules/validate-contracts.md +309 -0
- package/.windsurf/rules/validate-fix.md +106 -0
- package/.windsurf/rules/verify-work.md +191 -0
- package/.windsurf/rules/visual-dashboard.md +50 -0
- package/.windsurf/rules/wire-ci.md +375 -0
- package/.windsurf/rules/wire-observability.md +97 -0
- package/.windsurf/rules/write-document.md +255 -0
- package/CHANGELOG.md +37 -0
- package/CONVENTIONS.md +22 -0
- package/bin/setup.js +35 -7
- package/instructions +1 -0
- package/package.json +1 -1
- package/scripts/adapters/cline.sh +53 -3
- package/scripts/adapters/codebuddy.sh +58 -0
- package/scripts/adapters/codex.sh +58 -0
- package/scripts/adapters/copilot.sh +58 -0
- package/scripts/adapters/kilocode.sh +44 -3
- package/scripts/adapters/opencode.sh +58 -0
- package/scripts/adapters/qwen.sh +53 -1
- package/scripts/adapters/trae.sh +58 -0
- package/scripts/adapters/windsurf.sh +52 -0
- package/scripts/bp-yaml-set.sh +2 -0
- package/scripts/generate-wave-b-hub.py +31 -0
- package/scripts/hooks/cline/HOOKS.md +16 -0
- package/scripts/hooks/cline/hooks-manifest.json +12 -0
- package/scripts/hooks/cline/plugin/guard-git-plugin.ts +16 -0
- package/scripts/hooks/codebuddy/HOOKS.md +24 -0
- package/scripts/hooks/codebuddy/hooks-manifest.json +20 -0
- package/scripts/hooks/codebuddy/pre-tool-git-guard.sh +22 -0
- package/scripts/hooks/codebuddy/settings.example.json +16 -0
- package/scripts/hooks/codex/HOOKS.md +21 -0
- package/scripts/hooks/codex/hooks-manifest.json +17 -0
- package/scripts/hooks/codex/pre-tool-git-guard.sh +22 -0
- package/scripts/hooks/codex/settings.example.json +16 -0
- package/scripts/hooks/kilocode/HOOKS.md +16 -0
- package/scripts/hooks/kilocode/hooks-manifest.json +12 -0
- package/scripts/hooks/kilocode/plugin/guard-git-plugin.ts +16 -0
- package/scripts/hooks/qwen/HOOKS.md +27 -0
- package/scripts/hooks/qwen/hooks-manifest.json +23 -0
- package/scripts/hooks/qwen/pre-tool-git-guard.sh +22 -0
- package/scripts/hooks/qwen/settings.example.json +16 -0
- package/scripts/hooks/trae/HOOKS.md +17 -0
- package/scripts/hooks/trae/hooks-manifest.json +13 -0
- package/scripts/hooks/trae/pre-tool-git-guard.sh +22 -0
- package/scripts/hooks/trae/settings.example.json +16 -0
- package/scripts/hooks/windsurf/HOOKS.md +23 -0
- package/scripts/hooks/windsurf/hooks-manifest.json +19 -0
- package/scripts/hooks/windsurf/pre-tool-git-guard.sh +22 -0
- package/scripts/hooks/windsurf/settings.example.json +16 -0
- package/scripts/install.sh +33 -373
- package/scripts/lib/__pycache__/link_utils.cpython-312.pyc +0 -0
- package/scripts/lib/__pycache__/srp_engine_links.cpython-312.pyc +0 -0
- package/scripts/lib/context-wire.sh +5 -0
- package/scripts/lib/install-grep.sh +18 -0
- package/scripts/lib/install-helpers.js +139 -2
- package/scripts/lib/install-targets-a.sh +227 -0
- package/scripts/lib/install-targets-b.sh +226 -0
- package/scripts/lib/install-targets-c.sh +128 -0
- package/scripts/lib/install-targets-d.sh +179 -0
- package/scripts/lib/srp-engine.py +2 -70
- package/scripts/lib/srp_engine_links.py +59 -0
- package/scripts/lib/wave_b_hub_codegen_helpers.py +273 -0
- package/scripts/lib/wave_b_hub_codegen_install.py +134 -0
- package/scripts/lib/wave_b_hub_config.py +130 -0
- package/scripts/lib/wave_b_hub_patch.py +213 -0
- package/scripts/record-cycle-time.sh +3 -14
- package/scripts/targets.yaml +75 -2
- package/scripts/test-agy-hub.sh +11 -10
- package/scripts/test-cline-adapter.sh +55 -0
- package/scripts/test-cline-hub.sh +48 -0
- package/scripts/test-codebuddy-adapter.sh +63 -0
- package/scripts/test-codebuddy-hub.sh +49 -0
- package/scripts/test-codex-adapter.sh +63 -0
- package/scripts/test-codex-hub.sh +49 -0
- package/scripts/test-copilot-adapter.sh +47 -0
- package/scripts/test-copilot-hub.sh +43 -0
- package/scripts/test-gemini-hub.sh +10 -9
- package/scripts/test-hermes-hub.sh +7 -6
- package/scripts/test-install-distribute-only.sh +3 -0
- package/scripts/test-install-helpers.js +9 -3
- package/scripts/test-kilocode-adapter.sh +55 -0
- package/scripts/test-kilocode-hub.sh +48 -0
- package/scripts/test-mimo-hub.sh +7 -6
- package/scripts/test-opencode-adapter.sh +47 -0
- package/scripts/test-opencode-hub.sh +43 -0
- package/scripts/test-qwen-adapter.sh +63 -0
- package/scripts/test-qwen-hub.sh +49 -0
- package/scripts/test-trae-adapter.sh +63 -0
- package/scripts/test-trae-hub.sh +49 -0
- package/scripts/test-windsurf-adapter.sh +63 -0
- package/scripts/test-windsurf-hub.sh +49 -0
- package/scripts/test-zcode-hub.sh +7 -6
- package/scripts/verify-install.sh +83 -29
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
# story: e68s02
|
|
3
|
+
# Regression tests for Qwen Code install hub wiring (Wave B).
|
|
4
|
+
set -euo pipefail
|
|
5
|
+
|
|
6
|
+
REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
7
|
+
PASS=0
|
|
8
|
+
FAIL=0
|
|
9
|
+
|
|
10
|
+
pass() { echo "PASS: $1"; PASS=$((PASS + 1)); }
|
|
11
|
+
fail() { echo "FAIL: $1" >&2; FAIL=$((FAIL + 1)); }
|
|
12
|
+
|
|
13
|
+
echo "=== test-qwen-hub.sh ==="
|
|
14
|
+
|
|
15
|
+
INSTALL_SH="$REPO_ROOT/scripts/install.sh"
|
|
16
|
+
source "$REPO_ROOT/scripts/lib/install-grep.sh"
|
|
17
|
+
HELPERS_JS="$REPO_ROOT/scripts/lib/install-helpers.js"
|
|
18
|
+
SETUP_JS="$REPO_ROOT/bin/setup.js"
|
|
19
|
+
TARGETS_YAML="$REPO_ROOT/scripts/targets.yaml"
|
|
20
|
+
|
|
21
|
+
install_grep -q 'install_qwen()' && pass 'install.sh: install_qwen()' || fail 'install.sh: missing install_qwen()'
|
|
22
|
+
install_grep -q 'uninstall_qwen()' && pass 'install.sh: uninstall_qwen()' || fail 'install.sh: missing uninstall_qwen()'
|
|
23
|
+
install_grep -q 'QWEN_SKILLS_DIR=' && pass 'install.sh: skills dir var' || fail 'install.sh: missing skills dir var'
|
|
24
|
+
install_grep -q 'install_qwen' && install_grep -q 'uninstall_qwen' && pass 'install.sh: dispatch wired' || fail 'install.sh: dispatch missing qwen'
|
|
25
|
+
|
|
26
|
+
DRY_OUT="$(bash "$INSTALL_SH" --dry-run 2>&1)"
|
|
27
|
+
grep -q 'Qwen Code →' <<< "$DRY_OUT" && pass 'dry-run: Qwen Code section' || fail 'dry-run: missing Qwen Code section'
|
|
28
|
+
DRY_UNINSTALL="$(bash "$INSTALL_SH" --dry-run --uninstall 2>&1)"
|
|
29
|
+
grep -q 'Qwen Code →' <<< "$DRY_UNINSTALL" && pass 'dry-run uninstall: Qwen Code section' || fail 'dry-run uninstall: missing Qwen Code section'
|
|
30
|
+
|
|
31
|
+
grep -q "case 'qwen'" "$HELPERS_JS" && pass 'install-helpers: qwen case' || fail 'install-helpers: missing qwen case'
|
|
32
|
+
install_grep -q 'QWEN_HOOK_SRC=' && pass 'install.sh: hook src' || fail 'install.sh: missing hook src'
|
|
33
|
+
install_grep -q 'pre-tool-git-guard.sh' && pass 'install.sh: git-guard hook' || fail 'install.sh: missing git-guard hook'
|
|
34
|
+
|
|
35
|
+
SETUP_SRC="$(cat "$SETUP_JS")"
|
|
36
|
+
echo "$SETUP_SRC" | grep -q "SUPPORTED_IDS = new Set" && pass 'setup.js: SUPPORTED_IDS set' || fail 'setup.js: missing SUPPORTED_IDS'
|
|
37
|
+
grep -q "'qwen'" <<< "$(sed -n "/SUPPORTED_IDS = new Set/,/);/p" "$SETUP_JS")" && pass 'setup.js: qwen in SUPPORTED_IDS' || fail 'setup.js: qwen not in SUPPORTED_IDS'
|
|
38
|
+
|
|
39
|
+
grep -q 'id: qwen' "$TARGETS_YAML" && pass 'targets.yaml: qwen row' || fail 'targets.yaml: missing qwen row'
|
|
40
|
+
grep -q 'adapter: qwen' "$TARGETS_YAML" && pass 'targets.yaml: qwen adapter' || fail 'targets.yaml: missing qwen adapter'
|
|
41
|
+
grep -q 'qwen_hooks_manifest' "$TARGETS_YAML" && pass 'targets.yaml: qwen_hooks_manifest' || fail 'targets.yaml: missing qwen_hooks_manifest'
|
|
42
|
+
grep -q 'install_qwen()' "$REPO_ROOT/scripts/verify-install.sh" && pass 'verify-install: install_qwen assertion' || fail 'verify-install: missing install_qwen assertion'
|
|
43
|
+
|
|
44
|
+
bash -n "$INSTALL_SH" && pass 'bash -n install.sh' || fail 'bash -n install.sh'
|
|
45
|
+
node --check "$HELPERS_JS" && pass 'node --check install-helpers.js' || fail 'node --check install-helpers.js'
|
|
46
|
+
node --check "$SETUP_JS" && pass 'node --check setup.js' || fail 'node --check setup.js'
|
|
47
|
+
|
|
48
|
+
echo "test-qwen-hub: $PASS passed, $FAIL failed"
|
|
49
|
+
[[ "$FAIL" -eq 0 ]] || exit 1
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
# story: e70s01
|
|
3
|
+
# scenario: SC-e70s01-P1-02
|
|
4
|
+
# Regression tests for Trae adapter render + hook templates.
|
|
5
|
+
set -euo pipefail
|
|
6
|
+
|
|
7
|
+
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
8
|
+
REPO_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
|
|
9
|
+
|
|
10
|
+
PASS=0
|
|
11
|
+
FAIL=0
|
|
12
|
+
|
|
13
|
+
pass() { echo "PASS: $1"; PASS=$((PASS + 1)); }
|
|
14
|
+
fail() { echo "FAIL: $1"; FAIL=$((FAIL + 1)); }
|
|
15
|
+
|
|
16
|
+
echo "=== test-trae-adapter.sh ==="
|
|
17
|
+
|
|
18
|
+
TMP=$(mktemp -d)
|
|
19
|
+
trap 'rm -rf "$TMP"' EXIT
|
|
20
|
+
|
|
21
|
+
if echo '{"name":"test-skill","description":"test desc","body":"test body"}' \
|
|
22
|
+
| TRAE_SKILLS="$TMP" bash "$REPO_ROOT/scripts/adapters/trae.sh" \
|
|
23
|
+
&& [[ -f $TMP/test-skill/SKILL.md ]] \
|
|
24
|
+
&& grep -q 'name: test-skill' $TMP/test-skill/SKILL.md \
|
|
25
|
+
&& grep -q 'test body' $TMP/test-skill/SKILL.md; then
|
|
26
|
+
pass "render_skill emits artifact from stdin SkillIR"
|
|
27
|
+
else
|
|
28
|
+
fail "render_skill emits artifact from stdin SkillIR"
|
|
29
|
+
fi
|
|
30
|
+
|
|
31
|
+
if ! echo '{"name":"../escape","description":"d","body":"b"}' \
|
|
32
|
+
| TRAE_SKILLS="$TMP/bad" bash "$REPO_ROOT/scripts/adapters/trae.sh" 2>/dev/null; then
|
|
33
|
+
pass "rejects path traversal in skill name"
|
|
34
|
+
else
|
|
35
|
+
fail "rejects path traversal in skill name"
|
|
36
|
+
fi
|
|
37
|
+
|
|
38
|
+
if [[ -f "$REPO_ROOT/scripts/hooks/trae/pre-tool-git-guard.sh" ]] \
|
|
39
|
+
&& [[ -f "$REPO_ROOT/scripts/hooks/trae/hooks-manifest.json" ]] \
|
|
40
|
+
&& [[ -f "$REPO_ROOT/scripts/hooks/trae/settings.example.json" ]]; then
|
|
41
|
+
pass "hook template bundle present"
|
|
42
|
+
else
|
|
43
|
+
fail "hook template bundle present"
|
|
44
|
+
fi
|
|
45
|
+
|
|
46
|
+
BLOCK_OUT=$(echo '{"tool_input":{"command":"git push --force origin main"}}' \
|
|
47
|
+
| bash "$REPO_ROOT/scripts/hooks/trae/pre-tool-git-guard.sh")
|
|
48
|
+
if echo "$BLOCK_OUT" | grep -q 'block'; then
|
|
49
|
+
pass "pre-tool guard blocks dangerous command"
|
|
50
|
+
else
|
|
51
|
+
fail "pre-tool guard blocks dangerous command"
|
|
52
|
+
fi
|
|
53
|
+
|
|
54
|
+
ADAPTER_OUT=$(bash "$REPO_ROOT/scripts/test-adapters.sh" trae 2>&1 || true)
|
|
55
|
+
if echo "$ADAPTER_OUT" | grep -q '0 failed'; then
|
|
56
|
+
pass "test-adapters.sh trae"
|
|
57
|
+
else
|
|
58
|
+
fail "test-adapters.sh trae"
|
|
59
|
+
echo "$ADAPTER_OUT"
|
|
60
|
+
fi
|
|
61
|
+
|
|
62
|
+
echo "test-trae-adapter: $PASS passed, $FAIL failed"
|
|
63
|
+
[[ "$FAIL" -eq 0 ]] || exit 1
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
# story: e70s02
|
|
3
|
+
# Regression tests for Trae install hub wiring (Wave B).
|
|
4
|
+
set -euo pipefail
|
|
5
|
+
|
|
6
|
+
REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
7
|
+
PASS=0
|
|
8
|
+
FAIL=0
|
|
9
|
+
|
|
10
|
+
pass() { echo "PASS: $1"; PASS=$((PASS + 1)); }
|
|
11
|
+
fail() { echo "FAIL: $1" >&2; FAIL=$((FAIL + 1)); }
|
|
12
|
+
|
|
13
|
+
echo "=== test-trae-hub.sh ==="
|
|
14
|
+
|
|
15
|
+
INSTALL_SH="$REPO_ROOT/scripts/install.sh"
|
|
16
|
+
source "$REPO_ROOT/scripts/lib/install-grep.sh"
|
|
17
|
+
HELPERS_JS="$REPO_ROOT/scripts/lib/install-helpers.js"
|
|
18
|
+
SETUP_JS="$REPO_ROOT/bin/setup.js"
|
|
19
|
+
TARGETS_YAML="$REPO_ROOT/scripts/targets.yaml"
|
|
20
|
+
|
|
21
|
+
install_grep -q 'install_trae()' && pass 'install.sh: install_trae()' || fail 'install.sh: missing install_trae()'
|
|
22
|
+
install_grep -q 'uninstall_trae()' && pass 'install.sh: uninstall_trae()' || fail 'install.sh: missing uninstall_trae()'
|
|
23
|
+
install_grep -q 'TRAE_SKILLS_DIR=' && pass 'install.sh: skills dir var' || fail 'install.sh: missing skills dir var'
|
|
24
|
+
install_grep -q 'install_trae' && install_grep -q 'uninstall_trae' && pass 'install.sh: dispatch wired' || fail 'install.sh: dispatch missing trae'
|
|
25
|
+
|
|
26
|
+
DRY_OUT="$(bash "$INSTALL_SH" --dry-run 2>&1)"
|
|
27
|
+
grep -q 'Trae →' <<< "$DRY_OUT" && pass 'dry-run: Trae section' || fail 'dry-run: missing Trae section'
|
|
28
|
+
DRY_UNINSTALL="$(bash "$INSTALL_SH" --dry-run --uninstall 2>&1)"
|
|
29
|
+
grep -q 'Trae →' <<< "$DRY_UNINSTALL" && pass 'dry-run uninstall: Trae section' || fail 'dry-run uninstall: missing Trae section'
|
|
30
|
+
|
|
31
|
+
grep -q "case 'trae'" "$HELPERS_JS" && pass 'install-helpers: trae case' || fail 'install-helpers: missing trae case'
|
|
32
|
+
install_grep -q 'TRAE_HOOK_SRC=' && pass 'install.sh: hook src' || fail 'install.sh: missing hook src'
|
|
33
|
+
install_grep -q 'pre-tool-git-guard.sh' && pass 'install.sh: git-guard hook' || fail 'install.sh: missing git-guard hook'
|
|
34
|
+
|
|
35
|
+
SETUP_SRC="$(cat "$SETUP_JS")"
|
|
36
|
+
echo "$SETUP_SRC" | grep -q "SUPPORTED_IDS = new Set" && pass 'setup.js: SUPPORTED_IDS set' || fail 'setup.js: missing SUPPORTED_IDS'
|
|
37
|
+
grep -q "'trae'" <<< "$(sed -n "/SUPPORTED_IDS = new Set/,/);/p" "$SETUP_JS")" && pass 'setup.js: trae in SUPPORTED_IDS' || fail 'setup.js: trae not in SUPPORTED_IDS'
|
|
38
|
+
|
|
39
|
+
grep -q 'id: trae' "$TARGETS_YAML" && pass 'targets.yaml: trae row' || fail 'targets.yaml: missing trae row'
|
|
40
|
+
grep -q 'adapter: trae' "$TARGETS_YAML" && pass 'targets.yaml: trae adapter' || fail 'targets.yaml: missing trae adapter'
|
|
41
|
+
grep -q 'trae_hooks_manifest' "$TARGETS_YAML" && pass 'targets.yaml: trae_hooks_manifest' || fail 'targets.yaml: missing trae_hooks_manifest'
|
|
42
|
+
grep -q 'install_trae()' "$REPO_ROOT/scripts/verify-install.sh" && pass 'verify-install: install_trae assertion' || fail 'verify-install: missing install_trae assertion'
|
|
43
|
+
|
|
44
|
+
bash -n "$INSTALL_SH" && pass 'bash -n install.sh' || fail 'bash -n install.sh'
|
|
45
|
+
node --check "$HELPERS_JS" && pass 'node --check install-helpers.js' || fail 'node --check install-helpers.js'
|
|
46
|
+
node --check "$SETUP_JS" && pass 'node --check setup.js' || fail 'node --check setup.js'
|
|
47
|
+
|
|
48
|
+
echo "test-trae-hub: $PASS passed, $FAIL failed"
|
|
49
|
+
[[ "$FAIL" -eq 0 ]] || exit 1
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
# story: e73s01
|
|
3
|
+
# scenario: SC-e73s01-P1-02
|
|
4
|
+
# Regression tests for Windsurf adapter render + hook templates.
|
|
5
|
+
set -euo pipefail
|
|
6
|
+
|
|
7
|
+
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
8
|
+
REPO_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
|
|
9
|
+
|
|
10
|
+
PASS=0
|
|
11
|
+
FAIL=0
|
|
12
|
+
|
|
13
|
+
pass() { echo "PASS: $1"; PASS=$((PASS + 1)); }
|
|
14
|
+
fail() { echo "FAIL: $1"; FAIL=$((FAIL + 1)); }
|
|
15
|
+
|
|
16
|
+
echo "=== test-windsurf-adapter.sh ==="
|
|
17
|
+
|
|
18
|
+
TMP=$(mktemp -d)
|
|
19
|
+
trap 'rm -rf "$TMP"' EXIT
|
|
20
|
+
|
|
21
|
+
if echo '{"name":"test-skill","description":"test desc","body":"test body"}' \
|
|
22
|
+
| WINDSURF_RULES="$TMP" bash "$REPO_ROOT/scripts/adapters/windsurf.sh" \
|
|
23
|
+
&& [[ -f $TMP/test-skill.md ]] \
|
|
24
|
+
&& grep -q 'name: test-skill' $TMP/test-skill.md \
|
|
25
|
+
&& grep -q 'test body' $TMP/test-skill.md; then
|
|
26
|
+
pass "render_skill emits artifact from stdin SkillIR"
|
|
27
|
+
else
|
|
28
|
+
fail "render_skill emits artifact from stdin SkillIR"
|
|
29
|
+
fi
|
|
30
|
+
|
|
31
|
+
if ! echo '{"name":"../escape","description":"d","body":"b"}' \
|
|
32
|
+
| WINDSURF_RULES="$TMP/bad" bash "$REPO_ROOT/scripts/adapters/windsurf.sh" 2>/dev/null; then
|
|
33
|
+
pass "rejects path traversal in skill name"
|
|
34
|
+
else
|
|
35
|
+
fail "rejects path traversal in skill name"
|
|
36
|
+
fi
|
|
37
|
+
|
|
38
|
+
if [[ -f "$REPO_ROOT/scripts/hooks/windsurf/pre-tool-git-guard.sh" ]] \
|
|
39
|
+
&& [[ -f "$REPO_ROOT/scripts/hooks/windsurf/hooks-manifest.json" ]] \
|
|
40
|
+
&& [[ -f "$REPO_ROOT/scripts/hooks/windsurf/settings.example.json" ]]; then
|
|
41
|
+
pass "hook template bundle present"
|
|
42
|
+
else
|
|
43
|
+
fail "hook template bundle present"
|
|
44
|
+
fi
|
|
45
|
+
|
|
46
|
+
BLOCK_OUT=$(echo '{"tool_input":{"command":"git push --force origin main"}}' \
|
|
47
|
+
| bash "$REPO_ROOT/scripts/hooks/windsurf/pre-tool-git-guard.sh")
|
|
48
|
+
if echo "$BLOCK_OUT" | grep -q 'block'; then
|
|
49
|
+
pass "pre-tool guard blocks dangerous command"
|
|
50
|
+
else
|
|
51
|
+
fail "pre-tool guard blocks dangerous command"
|
|
52
|
+
fi
|
|
53
|
+
|
|
54
|
+
ADAPTER_OUT=$(bash "$REPO_ROOT/scripts/test-adapters.sh" windsurf 2>&1 || true)
|
|
55
|
+
if echo "$ADAPTER_OUT" | grep -q '0 failed'; then
|
|
56
|
+
pass "test-adapters.sh windsurf"
|
|
57
|
+
else
|
|
58
|
+
fail "test-adapters.sh windsurf"
|
|
59
|
+
echo "$ADAPTER_OUT"
|
|
60
|
+
fi
|
|
61
|
+
|
|
62
|
+
echo "test-windsurf-adapter: $PASS passed, $FAIL failed"
|
|
63
|
+
[[ "$FAIL" -eq 0 ]] || exit 1
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
# story: e73s02
|
|
3
|
+
# Regression tests for Windsurf install hub wiring (Wave B).
|
|
4
|
+
set -euo pipefail
|
|
5
|
+
|
|
6
|
+
REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
7
|
+
PASS=0
|
|
8
|
+
FAIL=0
|
|
9
|
+
|
|
10
|
+
pass() { echo "PASS: $1"; PASS=$((PASS + 1)); }
|
|
11
|
+
fail() { echo "FAIL: $1" >&2; FAIL=$((FAIL + 1)); }
|
|
12
|
+
|
|
13
|
+
echo "=== test-windsurf-hub.sh ==="
|
|
14
|
+
|
|
15
|
+
INSTALL_SH="$REPO_ROOT/scripts/install.sh"
|
|
16
|
+
source "$REPO_ROOT/scripts/lib/install-grep.sh"
|
|
17
|
+
HELPERS_JS="$REPO_ROOT/scripts/lib/install-helpers.js"
|
|
18
|
+
SETUP_JS="$REPO_ROOT/bin/setup.js"
|
|
19
|
+
TARGETS_YAML="$REPO_ROOT/scripts/targets.yaml"
|
|
20
|
+
|
|
21
|
+
install_grep -q 'install_windsurf()' && pass 'install.sh: install_windsurf()' || fail 'install.sh: missing install_windsurf()'
|
|
22
|
+
install_grep -q 'uninstall_windsurf()' && pass 'install.sh: uninstall_windsurf()' || fail 'install.sh: missing uninstall_windsurf()'
|
|
23
|
+
install_grep -q 'WINDSURF_SKILLS_DIR=' && pass 'install.sh: skills dir var' || fail 'install.sh: missing skills dir var'
|
|
24
|
+
install_grep -q 'install_windsurf' && install_grep -q 'uninstall_windsurf' && pass 'install.sh: dispatch wired' || fail 'install.sh: dispatch missing windsurf'
|
|
25
|
+
|
|
26
|
+
DRY_OUT="$(bash "$INSTALL_SH" --dry-run 2>&1)"
|
|
27
|
+
grep -q 'Windsurf →' <<< "$DRY_OUT" && pass 'dry-run: Windsurf section' || fail 'dry-run: missing Windsurf section'
|
|
28
|
+
DRY_UNINSTALL="$(bash "$INSTALL_SH" --dry-run --uninstall 2>&1)"
|
|
29
|
+
grep -q 'Windsurf →' <<< "$DRY_UNINSTALL" && pass 'dry-run uninstall: Windsurf section' || fail 'dry-run uninstall: missing Windsurf section'
|
|
30
|
+
|
|
31
|
+
grep -q "case 'windsurf'" "$HELPERS_JS" && pass 'install-helpers: windsurf case' || fail 'install-helpers: missing windsurf case'
|
|
32
|
+
install_grep -q 'WINDSURF_HOOK_SRC=' && pass 'install.sh: hook src' || fail 'install.sh: missing hook src'
|
|
33
|
+
install_grep -q 'pre-tool-git-guard.sh' && pass 'install.sh: git-guard hook' || fail 'install.sh: missing git-guard hook'
|
|
34
|
+
|
|
35
|
+
SETUP_SRC="$(cat "$SETUP_JS")"
|
|
36
|
+
echo "$SETUP_SRC" | grep -q "SUPPORTED_IDS = new Set" && pass 'setup.js: SUPPORTED_IDS set' || fail 'setup.js: missing SUPPORTED_IDS'
|
|
37
|
+
grep -q "'windsurf'" <<< "$(sed -n "/SUPPORTED_IDS = new Set/,/);/p" "$SETUP_JS")" && pass 'setup.js: windsurf in SUPPORTED_IDS' || fail 'setup.js: windsurf not in SUPPORTED_IDS'
|
|
38
|
+
|
|
39
|
+
grep -q 'id: windsurf' "$TARGETS_YAML" && pass 'targets.yaml: windsurf row' || fail 'targets.yaml: missing windsurf row'
|
|
40
|
+
grep -q 'adapter: windsurf' "$TARGETS_YAML" && pass 'targets.yaml: windsurf adapter' || fail 'targets.yaml: missing windsurf adapter'
|
|
41
|
+
grep -q 'windsurf_hooks_manifest' "$TARGETS_YAML" && pass 'targets.yaml: windsurf_hooks_manifest' || fail 'targets.yaml: missing windsurf_hooks_manifest'
|
|
42
|
+
grep -q 'install_windsurf()' "$REPO_ROOT/scripts/verify-install.sh" && pass 'verify-install: install_windsurf assertion' || fail 'verify-install: missing install_windsurf assertion'
|
|
43
|
+
|
|
44
|
+
bash -n "$INSTALL_SH" && pass 'bash -n install.sh' || fail 'bash -n install.sh'
|
|
45
|
+
node --check "$HELPERS_JS" && pass 'node --check install-helpers.js' || fail 'node --check install-helpers.js'
|
|
46
|
+
node --check "$SETUP_JS" && pass 'node --check setup.js' || fail 'node --check setup.js'
|
|
47
|
+
|
|
48
|
+
echo "test-windsurf-hub: $PASS passed, $FAIL failed"
|
|
49
|
+
[[ "$FAIL" -eq 0 ]] || exit 1
|
|
@@ -13,19 +13,20 @@ fail() { echo "FAIL: $1" >&2; FAIL=$((FAIL + 1)); }
|
|
|
13
13
|
echo "=== test-zcode-hub.sh ==="
|
|
14
14
|
|
|
15
15
|
INSTALL_SH="$REPO_ROOT/scripts/install.sh"
|
|
16
|
+
source "$REPO_ROOT/scripts/lib/install-grep.sh"
|
|
16
17
|
HELPERS_JS="$REPO_ROOT/scripts/lib/install-helpers.js"
|
|
17
18
|
SETUP_JS="$REPO_ROOT/bin/setup.js"
|
|
18
19
|
TARGETS_YAML="$REPO_ROOT/scripts/targets.yaml"
|
|
19
20
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
21
|
+
install_grep -q 'install_zcode()' && pass 'install.sh: install_zcode()' || fail 'install.sh: missing install_zcode()'
|
|
22
|
+
install_grep -q 'uninstall_zcode()' && pass 'install.sh: uninstall_zcode()' || fail 'install.sh: missing uninstall_zcode()'
|
|
23
|
+
install_grep -q 'ZCODE_SKILLS_DIR=' && pass 'install.sh: ZCODE_SKILLS_DIR' || fail 'install.sh: missing ZCODE_SKILLS_DIR'
|
|
24
|
+
install_grep -q 'install_zcode' && install_grep -q 'uninstall_zcode' && pass 'install.sh: dispatch wired' || fail 'install.sh: dispatch missing zcode'
|
|
24
25
|
|
|
25
26
|
DRY_OUT="$(bash "$INSTALL_SH" --dry-run 2>&1)"
|
|
26
|
-
|
|
27
|
+
grep -q 'ZCode →' <<< "$DRY_OUT" && pass 'dry-run: ZCode section' || fail 'dry-run: missing ZCode section'
|
|
27
28
|
DRY_UNINSTALL="$(bash "$INSTALL_SH" --dry-run --uninstall 2>&1)"
|
|
28
|
-
|
|
29
|
+
grep -q 'ZCode →' <<< "$DRY_UNINSTALL" && pass 'dry-run uninstall: ZCode section' || fail 'dry-run uninstall: missing ZCode section'
|
|
29
30
|
|
|
30
31
|
grep -q "case 'zcode'" "$HELPERS_JS" && pass 'install-helpers: zcode global case' || fail 'install-helpers: missing zcode global case'
|
|
31
32
|
grep -q "case 'zcode'" "$HELPERS_JS" && pass 'install-helpers: zcode cases present' || fail 'install-helpers: missing zcode cases'
|
|
@@ -1,10 +1,20 @@
|
|
|
1
1
|
#!/usr/bin/env bash
|
|
2
2
|
# story: e47s04 e37s02 e37s04 e37s08
|
|
3
3
|
# story: e74s02
|
|
4
|
+
# story: e71s02
|
|
5
|
+
# story: e62s02
|
|
6
|
+
# story: e73s02
|
|
7
|
+
# story: e70s02
|
|
8
|
+
# story: e67s02
|
|
9
|
+
# story: e66s02
|
|
10
|
+
# story: e72s02
|
|
11
|
+
# story: e68s02
|
|
12
|
+
# story: e65s02
|
|
4
13
|
# verify-install.sh — manual assertion harness for install + seed wiring + Reach matrix
|
|
5
14
|
set -euo pipefail
|
|
6
15
|
source "$(dirname "${BASH_SOURCE[0]}")/lib/skill-common.sh"
|
|
7
16
|
resolve_repo_root
|
|
17
|
+
source "$(dirname "${BASH_SOURCE[0]}")/lib/install-grep.sh"
|
|
8
18
|
|
|
9
19
|
MATRIX_MODE=0
|
|
10
20
|
FULL_MATRIX=0
|
|
@@ -64,14 +74,14 @@ trap ta_cleanup EXIT
|
|
|
64
74
|
echo "=== install.sh --dry-run ==="
|
|
65
75
|
DRY_OUT="$("$REPO_ROOT/scripts/install.sh" --dry-run 2>&1)"
|
|
66
76
|
|
|
67
|
-
|
|
77
|
+
grep -q 'pi →' <<< "$DRY_OUT" && ta_pass "install --dry-run includes pi" || ta_fail "install --dry-run missing pi"
|
|
68
78
|
DRY_UNINSTALL="$("$REPO_ROOT/scripts/install.sh" --dry-run --uninstall 2>&1)"
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
79
|
+
grep -q 'pi →' <<< "$DRY_UNINSTALL" && ta_pass "uninstall --dry-run includes pi" || ta_fail "uninstall --dry-run missing pi"
|
|
80
|
+
grep -q 'OpenCode →' <<< "$DRY_OUT" && ta_pass "install includes OpenCode" || ta_fail "install missing OpenCode"
|
|
81
|
+
grep -q 'Claude Code →' <<< "$DRY_OUT" && ta_pass "install includes Claude Code" || ta_fail "install missing Claude Code"
|
|
82
|
+
grep -q 'Gemini CLI →' <<< "$DRY_OUT" && ta_pass "install includes Gemini CLI" || ta_fail "install missing Gemini CLI"
|
|
83
|
+
grep -q 'Cursor →' <<< "$DRY_OUT" && ta_pass "install includes Cursor" || ta_fail "install missing Cursor"
|
|
84
|
+
grep -q 'Hermes Agent →' <<< "$DRY_OUT" && ta_pass "install includes Hermes Agent" || ta_fail "install missing Hermes Agent"
|
|
75
85
|
|
|
76
86
|
for tool in "Claude Code" "pi"; do
|
|
77
87
|
section=$(echo "$DRY_OUT" | sed -n "/${tool} →/,/^$/p")
|
|
@@ -102,7 +112,7 @@ echo ""
|
|
|
102
112
|
echo "=== Optional Codex wave (e37s04) ==="
|
|
103
113
|
if grep -qi 'codex' "$REPO_ROOT/skills/seed-conventions/SKILL.md" 2>/dev/null; then
|
|
104
114
|
grep -qi 'config.toml' "$REPO_ROOT/skills/seed-conventions/REFERENCE.md" && ta_pass "Codex: REFERENCE config.toml" || ta_fail "Codex: missing config.toml"
|
|
105
|
-
|
|
115
|
+
grep -qi 'codex' <<< "$DRY_OUT" && ta_pass "Codex: install --dry-run mentions codex" || ta_fail "Codex: install missing codex"
|
|
106
116
|
else
|
|
107
117
|
ta_pass "Codex: wave absent — assertions skipped"
|
|
108
118
|
fi
|
|
@@ -127,40 +137,84 @@ fi
|
|
|
127
137
|
|
|
128
138
|
echo ""
|
|
129
139
|
echo "=== install.sh source ==="
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
140
|
+
install_grep -q 'install_pi()' && ta_pass "source: install_pi()" || ta_fail "source: missing install_pi()"
|
|
141
|
+
install_grep -q 'uninstall_pi()' && ta_pass "source: uninstall_pi()" || ta_fail "source: missing uninstall_pi()"
|
|
142
|
+
install_grep -q 'PI_SKILLS_DIR="$PI_CONFIG_DIR/agent/skills"' && ta_pass "source: targets ~/.pi/agent/skills/" || ta_fail "source: wrong pi target"
|
|
143
|
+
install_grep -q 'install_hermes()' && ta_pass "source: install_hermes()" || ta_fail "source: missing install_hermes()"
|
|
144
|
+
install_grep -q 'uninstall_hermes()' && ta_pass "source: uninstall_hermes()" || ta_fail "source: missing uninstall_hermes()"
|
|
145
|
+
install_grep -q 'HERMES_SKILLS_DIR=' && ta_pass "source: targets ~/.hermes/skills/" || ta_fail "source: wrong hermes target"
|
|
136
146
|
grep -q "'hermes'" "$REPO_ROOT/bin/setup.js" && grep -q 'SUPPORTED_IDS' "$REPO_ROOT/bin/setup.js" && ta_pass "setup.js: hermes supported" || ta_fail "setup.js: hermes not in SUPPORTED_IDS"
|
|
137
147
|
grep -q "case 'hermes'" "$REPO_ROOT/scripts/lib/install-helpers.js" && ta_pass "install-helpers: hermes case" || ta_fail "install-helpers: missing hermes case"
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
148
|
+
install_grep -q 'install_zcode()' && ta_pass "source: install_zcode()" || ta_fail "source: missing install_zcode()"
|
|
149
|
+
install_grep -q 'uninstall_zcode()' && ta_pass "source: uninstall_zcode()" || ta_fail "source: missing uninstall_zcode()"
|
|
150
|
+
install_grep -q 'ZCODE_SKILLS_DIR=' && ta_pass "source: targets ~/.zcode/skills/" || ta_fail "source: wrong zcode target"
|
|
141
151
|
grep -q "'zcode'" "$REPO_ROOT/bin/setup.js" && grep -q 'SUPPORTED_IDS' "$REPO_ROOT/bin/setup.js" && ta_pass "setup.js: zcode supported" || ta_fail "setup.js: zcode not in SUPPORTED_IDS"
|
|
142
152
|
grep -q "case 'zcode'" "$REPO_ROOT/scripts/lib/install-helpers.js" && ta_pass "install-helpers: zcode case" || ta_fail "install-helpers: missing zcode case"
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
153
|
+
install_grep -q 'install_mimo()' && ta_pass "source: install_mimo()" || ta_fail "source: missing install_mimo()"
|
|
154
|
+
install_grep -q 'uninstall_mimo()' && ta_pass "source: uninstall_mimo()" || ta_fail "source: missing uninstall_mimo()"
|
|
155
|
+
install_grep -q 'MIMO_SKILLS_DIR=' && ta_pass "source: targets ~/.mimocode/skills/" || ta_fail "source: wrong mimo target"
|
|
146
156
|
grep -q "'mimo'" "$REPO_ROOT/bin/setup.js" && grep -q 'SUPPORTED_IDS' "$REPO_ROOT/bin/setup.js" && ta_pass "setup.js: mimo supported" || ta_fail "setup.js: mimo not in SUPPORTED_IDS"
|
|
147
157
|
grep -q "case 'mimo'" "$REPO_ROOT/scripts/lib/install-helpers.js" && ta_pass "install-helpers: mimo case" || ta_fail "install-helpers: missing mimo case"
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
158
|
+
install_grep -q 'install_gemini()' && ta_pass "source: install_gemini()" || ta_fail "source: missing install_gemini()"
|
|
159
|
+
install_grep -q 'uninstall_gemini()' && ta_pass "source: uninstall_gemini()" || ta_fail "source: missing uninstall_gemini()"
|
|
160
|
+
install_grep -q 'before-tool-git-guard.sh' && ta_pass "source: gemini Wave A hook templates" || ta_fail "source: missing gemini hook templates"
|
|
151
161
|
grep -q "'gemini'" "$REPO_ROOT/bin/setup.js" && grep -q 'SUPPORTED_IDS' "$REPO_ROOT/bin/setup.js" && ta_pass "setup.js: gemini supported" || ta_fail "setup.js: gemini not in SUPPORTED_IDS"
|
|
152
162
|
grep -q "case 'gemini'" "$REPO_ROOT/scripts/lib/install-helpers.js" && ta_pass "install-helpers: gemini case" || ta_fail "install-helpers: missing gemini case"
|
|
153
163
|
grep -q 'gemini_hooks_manifest' "$REPO_ROOT/scripts/targets.yaml" && ta_pass "targets.yaml: gemini_hooks_manifest" || ta_fail "targets.yaml: missing gemini_hooks_manifest"
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
164
|
+
install_grep -q 'install_agy()' && ta_pass "source: install_agy()" || ta_fail "source: missing install_agy()"
|
|
165
|
+
install_grep -q 'uninstall_agy()' && ta_pass "source: uninstall_agy()" || ta_fail "source: missing uninstall_agy()"
|
|
166
|
+
install_grep -q 'AGY_SKILLS_DIR=' && ta_pass "source: targets ~/.gemini/antigravity-cli/skills/" || ta_fail "source: wrong agy target"
|
|
157
167
|
grep -q "'antigravity'" "$REPO_ROOT/bin/setup.js" && grep -q 'SUPPORTED_IDS' "$REPO_ROOT/bin/setup.js" && ta_pass "setup.js: antigravity supported" || ta_fail "setup.js: antigravity not in SUPPORTED_IDS"
|
|
158
168
|
grep -q "'agy'" "$REPO_ROOT/bin/setup.js" && ta_pass "setup.js: agy supported" || ta_fail "setup.js: agy not in SUPPORTED_IDS"
|
|
159
169
|
grep -q "case 'antigravity'" "$REPO_ROOT/scripts/lib/install-helpers.js" && ta_pass "install-helpers: antigravity case" || ta_fail "install-helpers: missing antigravity case"
|
|
160
170
|
grep -q "case 'agy'" "$REPO_ROOT/scripts/lib/install-helpers.js" && ta_pass "install-helpers: agy case" || ta_fail "install-helpers: missing agy case"
|
|
161
|
-
!
|
|
162
|
-
|
|
163
|
-
|
|
171
|
+
! install_grep -q '\.gemini/extensions/bigpowers' <<< "$(sed -n '/install_agy/,/^}/p')" && ta_pass "source: agy avoids gemini extension path" || ta_fail "source: agy touches gemini extension path"
|
|
172
|
+
|
|
173
|
+
install_grep -q 'install_codex()' && ta_pass "source: install_codex()" || ta_fail "source: missing install_codex()"
|
|
174
|
+
install_grep -q 'uninstall_codex()' && ta_pass "source: uninstall_codex()" || ta_fail "source: missing uninstall_codex()"
|
|
175
|
+
install_grep -q 'CODEX_SKILLS_DIR=' && ta_pass "source: codex skills dir" || ta_fail "source: missing codex skills dir"
|
|
176
|
+
grep -q "'codex'" "$REPO_ROOT/bin/setup.js" && grep -q 'SUPPORTED_IDS' "$REPO_ROOT/bin/setup.js" && ta_pass "setup.js: codex supported" || ta_fail "setup.js: codex not in SUPPORTED_IDS"
|
|
177
|
+
grep -q "case 'codex'" "$REPO_ROOT/scripts/lib/install-helpers.js" && ta_pass "install-helpers: codex case" || ta_fail "install-helpers: missing codex case"
|
|
178
|
+
install_grep -q 'install_qwen()' && ta_pass "source: install_qwen()" || ta_fail "source: missing install_qwen()"
|
|
179
|
+
install_grep -q 'uninstall_qwen()' && ta_pass "source: uninstall_qwen()" || ta_fail "source: missing uninstall_qwen()"
|
|
180
|
+
install_grep -q 'QWEN_SKILLS_DIR=' && ta_pass "source: qwen skills dir" || ta_fail "source: missing qwen skills dir"
|
|
181
|
+
grep -q "'qwen'" "$REPO_ROOT/bin/setup.js" && grep -q 'SUPPORTED_IDS' "$REPO_ROOT/bin/setup.js" && ta_pass "setup.js: qwen supported" || ta_fail "setup.js: qwen not in SUPPORTED_IDS"
|
|
182
|
+
grep -q "case 'qwen'" "$REPO_ROOT/scripts/lib/install-helpers.js" && ta_pass "install-helpers: qwen case" || ta_fail "install-helpers: missing qwen case"
|
|
183
|
+
install_grep -q 'install_codebuddy()' && ta_pass "source: install_codebuddy()" || ta_fail "source: missing install_codebuddy()"
|
|
184
|
+
install_grep -q 'uninstall_codebuddy()' && ta_pass "source: uninstall_codebuddy()" || ta_fail "source: missing uninstall_codebuddy()"
|
|
185
|
+
install_grep -q 'CODEBUDDY_SKILLS_DIR=' && ta_pass "source: codebuddy skills dir" || ta_fail "source: missing codebuddy skills dir"
|
|
186
|
+
grep -q "'codebuddy'" "$REPO_ROOT/bin/setup.js" && grep -q 'SUPPORTED_IDS' "$REPO_ROOT/bin/setup.js" && ta_pass "setup.js: codebuddy supported" || ta_fail "setup.js: codebuddy not in SUPPORTED_IDS"
|
|
187
|
+
grep -q "case 'codebuddy'" "$REPO_ROOT/scripts/lib/install-helpers.js" && ta_pass "install-helpers: codebuddy case" || ta_fail "install-helpers: missing codebuddy case"
|
|
188
|
+
install_grep -q 'install_cline()' && ta_pass "source: install_cline()" || ta_fail "source: missing install_cline()"
|
|
189
|
+
install_grep -q 'uninstall_cline()' && ta_pass "source: uninstall_cline()" || ta_fail "source: missing uninstall_cline()"
|
|
190
|
+
install_grep -q 'CLINE_SKILLS_DIR=' && ta_pass "source: cline skills dir" || ta_fail "source: missing cline skills dir"
|
|
191
|
+
grep -q "'cline'" "$REPO_ROOT/bin/setup.js" && grep -q 'SUPPORTED_IDS' "$REPO_ROOT/bin/setup.js" && ta_pass "setup.js: cline supported" || ta_fail "setup.js: cline not in SUPPORTED_IDS"
|
|
192
|
+
grep -q "case 'cline'" "$REPO_ROOT/scripts/lib/install-helpers.js" && ta_pass "install-helpers: cline case" || ta_fail "install-helpers: missing cline case"
|
|
193
|
+
install_grep -q 'install_kilocode()' && ta_pass "source: install_kilocode()" || ta_fail "source: missing install_kilocode()"
|
|
194
|
+
install_grep -q 'uninstall_kilocode()' && ta_pass "source: uninstall_kilocode()" || ta_fail "source: missing uninstall_kilocode()"
|
|
195
|
+
install_grep -q 'KILOCODE_SKILLS_DIR=' && ta_pass "source: kilocode skills dir" || ta_fail "source: missing kilocode skills dir"
|
|
196
|
+
grep -q "'kilo'" "$REPO_ROOT/bin/setup.js" && grep -q 'SUPPORTED_IDS' "$REPO_ROOT/bin/setup.js" && ta_pass "setup.js: kilo supported" || ta_fail "setup.js: kilo not in SUPPORTED_IDS"
|
|
197
|
+
grep -q "case 'kilo'" "$REPO_ROOT/scripts/lib/install-helpers.js" && ta_pass "install-helpers: kilo case" || ta_fail "install-helpers: missing kilo case"
|
|
198
|
+
install_grep -q 'install_trae()' && ta_pass "source: install_trae()" || ta_fail "source: missing install_trae()"
|
|
199
|
+
install_grep -q 'uninstall_trae()' && ta_pass "source: uninstall_trae()" || ta_fail "source: missing uninstall_trae()"
|
|
200
|
+
install_grep -q 'TRAE_SKILLS_DIR=' && ta_pass "source: trae skills dir" || ta_fail "source: missing trae skills dir"
|
|
201
|
+
grep -q "'trae'" "$REPO_ROOT/bin/setup.js" && grep -q 'SUPPORTED_IDS' "$REPO_ROOT/bin/setup.js" && ta_pass "setup.js: trae supported" || ta_fail "setup.js: trae not in SUPPORTED_IDS"
|
|
202
|
+
grep -q "case 'trae'" "$REPO_ROOT/scripts/lib/install-helpers.js" && ta_pass "install-helpers: trae case" || ta_fail "install-helpers: missing trae case"
|
|
203
|
+
install_grep -q 'install_windsurf()' && ta_pass "source: install_windsurf()" || ta_fail "source: missing install_windsurf()"
|
|
204
|
+
install_grep -q 'uninstall_windsurf()' && ta_pass "source: uninstall_windsurf()" || ta_fail "source: missing uninstall_windsurf()"
|
|
205
|
+
install_grep -q 'WINDSURF_SKILLS_DIR=' && ta_pass "source: windsurf skills dir" || ta_fail "source: missing windsurf skills dir"
|
|
206
|
+
grep -q "'windsurf'" "$REPO_ROOT/bin/setup.js" && grep -q 'SUPPORTED_IDS' "$REPO_ROOT/bin/setup.js" && ta_pass "setup.js: windsurf supported" || ta_fail "setup.js: windsurf not in SUPPORTED_IDS"
|
|
207
|
+
grep -q "case 'windsurf'" "$REPO_ROOT/scripts/lib/install-helpers.js" && ta_pass "install-helpers: windsurf case" || ta_fail "install-helpers: missing windsurf case"
|
|
208
|
+
install_grep -q 'install_opencode()' && ta_pass "source: install_opencode()" || ta_fail "source: missing install_opencode()"
|
|
209
|
+
install_grep -q 'uninstall_opencode()' && ta_pass "source: uninstall_opencode()" || ta_fail "source: missing uninstall_opencode()"
|
|
210
|
+
install_grep -q 'OPENCODE_SKILLS_DIR=' && ta_pass "source: opencode skills dir" || ta_fail "source: missing opencode skills dir"
|
|
211
|
+
grep -q "'opencode'" "$REPO_ROOT/bin/setup.js" && grep -q 'SUPPORTED_IDS' "$REPO_ROOT/bin/setup.js" && ta_pass "setup.js: opencode supported" || ta_fail "setup.js: opencode not in SUPPORTED_IDS"
|
|
212
|
+
grep -q "case 'opencode'" "$REPO_ROOT/scripts/lib/install-helpers.js" && ta_pass "install-helpers: opencode case" || ta_fail "install-helpers: missing opencode case"
|
|
213
|
+
install_grep -q 'install_copilot()' && ta_pass "source: install_copilot()" || ta_fail "source: missing install_copilot()"
|
|
214
|
+
install_grep -q 'uninstall_copilot()' && ta_pass "source: uninstall_copilot()" || ta_fail "source: missing uninstall_copilot()"
|
|
215
|
+
install_grep -q 'COPILOT_SKILLS_DIR=' && ta_pass "source: copilot skills dir" || ta_fail "source: missing copilot skills dir"
|
|
216
|
+
grep -q "'copilot'" "$REPO_ROOT/bin/setup.js" && grep -q 'SUPPORTED_IDS' "$REPO_ROOT/bin/setup.js" && ta_pass "setup.js: copilot supported" || ta_fail "setup.js: copilot not in SUPPORTED_IDS"
|
|
217
|
+
grep -q "case 'copilot'" "$REPO_ROOT/scripts/lib/install-helpers.js" && ta_pass "install-helpers: copilot case" || ta_fail "install-helpers: missing copilot case"
|
|
164
218
|
echo ""
|
|
165
219
|
echo "──────────────────────────────────────────"
|
|
166
220
|
echo "verify-install: $TA_PASS passed, $TA_FAIL failed"
|