@webpresso/agent-kit 0.21.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/.claude-plugin/marketplace.json +27 -0
- package/.claude-plugin/plugin.json +73 -0
- package/LICENSE +21 -0
- package/README.md +106 -0
- package/THIRD-PARTY-NOTICES.md +60 -0
- package/bin/_run.js +201 -0
- package/bin/docs-check-internal-links.js +5 -0
- package/bin/docs-check-refs.js +5 -0
- package/bin/docs-check-stale.js +5 -0
- package/bin/docs-lint.js +5 -0
- package/bin/docs-migrate.js +5 -0
- package/bin/wp-check-dev-link.js +5 -0
- package/bin/wp-guard-switch.js +5 -0
- package/bin/wp-post-tool.js +5 -0
- package/bin/wp-pretool-guard.js +5 -0
- package/bin/wp-restore-dev-links.js +5 -0
- package/bin/wp-sessionstart-routing.js +5 -0
- package/bin/wp-stop-qa.js +5 -0
- package/bin/wp-test-quality-check.js +5 -0
- package/bin/wp.js +5 -0
- package/catalog/AGENTS.md.tpl +202 -0
- package/catalog/agent/.audit-budgets.yaml +12 -0
- package/catalog/agent/agents/README.md +22 -0
- package/catalog/agent/agents/code-reviewer.md +34 -0
- package/catalog/agent/agents/doc-writer.md +35 -0
- package/catalog/agent/agents/explorer.md +33 -0
- package/catalog/agent/agents/security-auditor.md +34 -0
- package/catalog/agent/commands/audit-duplication.md +34 -0
- package/catalog/agent/commands/audit.md +219 -0
- package/catalog/agent/commands/brainstorm.md +115 -0
- package/catalog/agent/commands/decide.md +132 -0
- package/catalog/agent/commands/fix-all.md +160 -0
- package/catalog/agent/commands/fix.md +109 -0
- package/catalog/agent/commands/plan-refine.md +103 -0
- package/catalog/agent/commands/pll.md +174 -0
- package/catalog/agent/commands/tph.md +380 -0
- package/catalog/agent/commands/verify.md +9 -0
- package/catalog/agent/correlate.allow.yaml +5 -0
- package/catalog/agent/guides/agent-guardrails.md +116 -0
- package/catalog/agent/guides/parallel-execution.md +79 -0
- package/catalog/agent/guides/plan-audit-checklist.md +189 -0
- package/catalog/agent/guides/skills.md +32 -0
- package/catalog/agent/rules/README.md +30 -0
- package/catalog/agent/rules/agent-guide.md +464 -0
- package/catalog/agent/rules/blueprint-scoping.md +69 -0
- package/catalog/agent/rules/changeset-release.md +161 -0
- package/catalog/agent/rules/cmd-execution.md +121 -0
- package/catalog/agent/rules/context-mode-routing.md +64 -0
- package/catalog/agent/rules/engineering-principles.md +42 -0
- package/catalog/agent/rules/extraction-parity.md +157 -0
- package/catalog/agent/rules/generated-code-governance.md +87 -0
- package/catalog/agent/rules/gstack-routing.md +90 -0
- package/catalog/agent/rules/no-timeout-as-fix.md +90 -0
- package/catalog/agent/rules/package-conventions.md +80 -0
- package/catalog/agent/rules/pre-implementation.md +44 -0
- package/catalog/agent/rules/public-package-safety.md +56 -0
- package/catalog/agent/rules/repo-restrictions.md +175 -0
- package/catalog/agent/rules/rtk-routing.md +50 -0
- package/catalog/agent/rules/supported-agent-clis.md +80 -0
- package/catalog/agent/rules/ts-coding-conventions.md +68 -0
- package/catalog/agent/skills/better-auth-best-practices/SKILL.md +212 -0
- package/catalog/agent/skills/deep-research/SKILL.md +240 -0
- package/catalog/agent/skills/fix/SKILL.md +120 -0
- package/catalog/agent/skills/frontend-design/LICENSE.txt +177 -0
- package/catalog/agent/skills/frontend-design/SKILL.md +189 -0
- package/catalog/agent/skills/hooks-doctor/SKILL.md +77 -0
- package/catalog/agent/skills/logging-best-practices/SKILL.md +145 -0
- package/catalog/agent/skills/logging-best-practices/rules/context.md +157 -0
- package/catalog/agent/skills/logging-best-practices/rules/pitfalls.md +118 -0
- package/catalog/agent/skills/logging-best-practices/rules/structure.md +195 -0
- package/catalog/agent/skills/logging-best-practices/rules/wide-events.md +113 -0
- package/catalog/agent/skills/lore-protocol/SKILL.md +93 -0
- package/catalog/agent/skills/monorepo-navigation/SKILL.md.tpl +57 -0
- package/catalog/agent/skills/monorepo-navigation/examples/webpresso.md +240 -0
- package/catalog/agent/skills/plan-refine/SKILL.md +645 -0
- package/catalog/agent/skills/pll/SKILL.md +85 -0
- package/catalog/agent/skills/react-doctor/SKILL.md +54 -0
- package/catalog/agent/skills/systematic-debugging/CREATION-LOG.md +133 -0
- package/catalog/agent/skills/systematic-debugging/SKILL.md +322 -0
- package/catalog/agent/skills/systematic-debugging/condition-based-waiting-example.ts +158 -0
- package/catalog/agent/skills/systematic-debugging/condition-based-waiting.md +120 -0
- package/catalog/agent/skills/systematic-debugging/defense-in-depth.md +128 -0
- package/catalog/agent/skills/systematic-debugging/find-polluter.sh +63 -0
- package/catalog/agent/skills/systematic-debugging/root-cause-tracing.md +183 -0
- package/catalog/agent/skills/systematic-debugging/test-academic.md +14 -0
- package/catalog/agent/skills/systematic-debugging/test-pressure-1.md +65 -0
- package/catalog/agent/skills/systematic-debugging/test-pressure-2.md +75 -0
- package/catalog/agent/skills/systematic-debugging/test-pressure-3.md +75 -0
- package/catalog/agent/skills/tanstack-query/.claude-plugin/plugin.json +12 -0
- package/catalog/agent/skills/tanstack-query/README.md +59 -0
- package/catalog/agent/skills/tanstack-query/SKILL.md +175 -0
- package/catalog/agent/skills/tanstack-query/references/best-practices.md +63 -0
- package/catalog/agent/skills/tanstack-query/references/common-patterns.md +43 -0
- package/catalog/agent/skills/tanstack-query/references/testing.md +44 -0
- package/catalog/agent/skills/tanstack-query/references/top-errors.md +19 -0
- package/catalog/agent/skills/tanstack-query/references/typescript-patterns.md +36 -0
- package/catalog/agent/skills/tanstack-query/rules/tanstack-query.md +41 -0
- package/catalog/agent/skills/tanstack-query/templates/custom-hooks-pattern.tsx +26 -0
- package/catalog/agent/skills/tanstack-query/templates/devtools-setup.tsx +13 -0
- package/catalog/agent/skills/tanstack-query/templates/error-boundary.tsx +52 -0
- package/catalog/agent/skills/tanstack-query/templates/package.json +24 -0
- package/catalog/agent/skills/tanstack-query/templates/provider-setup.tsx +19 -0
- package/catalog/agent/skills/tanstack-query/templates/query-client-config.ts +43 -0
- package/catalog/agent/skills/tanstack-query/templates/use-infinite-query.tsx +61 -0
- package/catalog/agent/skills/tanstack-query/templates/use-mutation-basic.tsx +52 -0
- package/catalog/agent/skills/tanstack-query/templates/use-mutation-optimistic.tsx +48 -0
- package/catalog/agent/skills/tanstack-query/templates/use-query-basic.tsx +77 -0
- package/catalog/agent/skills/tech-debt/SKILL.md +79 -0
- package/catalog/agent/skills/test-driven-development/SKILL.md +403 -0
- package/catalog/agent/skills/test-driven-development/testing-anti-patterns.md +317 -0
- package/catalog/agent/skills/testing-philosophy/SKILL.md +530 -0
- package/catalog/agent/skills/third-party-manifest.json +30 -0
- package/catalog/agent/skills/vercel-react-best-practices/AGENTS.md +2672 -0
- package/catalog/agent/skills/vercel-react-best-practices/README.md +127 -0
- package/catalog/agent/skills/vercel-react-best-practices/SKILL.md +212 -0
- package/catalog/agent/skills/vercel-react-best-practices/metadata.json +15 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/_sections.md +46 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/_template.md +28 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/advanced-event-handler-refs.md +55 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/advanced-use-latest.md +39 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/async-api-routes.md +35 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/async-defer-await.md +80 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/async-dependencies.md +48 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/async-parallel.md +24 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/async-suspense-boundaries.md +99 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/bundle-barrel-imports.md +59 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/bundle-conditional.md +37 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/bundle-defer-third-party.md +48 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/bundle-dynamic-imports.md +34 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/bundle-preload.md +44 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/client-event-listeners.md +78 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/client-localstorage-schema.md +74 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/client-passive-event-listeners.md +48 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/client-swr-dedup.md +56 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/js-batch-dom-css.md +110 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/js-cache-function-results.md +80 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/js-cache-property-access.md +28 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/js-cache-storage.md +68 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/js-combine-iterations.md +32 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/js-early-exit.md +50 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/js-hoist-regexp.md +45 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/js-index-maps.md +37 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/js-length-check-first.md +50 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/js-min-max-loop.md +82 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/js-set-map-lookups.md +24 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/js-tosorted-immutable.md +57 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/rendering-activity.md +26 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/rendering-animate-svg-wrapper.md +38 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/rendering-conditional-render.md +32 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/rendering-content-visibility.md +38 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/rendering-hoist-jsx.md +36 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/rendering-hydration-no-flicker.md +72 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/rendering-svg-precision.md +28 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/rendering-usetransition-loading.md +75 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/rerender-defer-reads.md +39 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/rerender-dependencies.md +45 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/rerender-derived-state.md +29 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/rerender-functional-setstate.md +77 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/rerender-lazy-state-init.md +56 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/rerender-memo-with-default-value.md +36 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/rerender-memo.md +44 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/rerender-simple-expression-in-memo.md +35 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/rerender-transitions.md +40 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/server-after-nonblocking.md +73 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/server-auth-actions.md +96 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/server-cache-lru.md +41 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/server-cache-react.md +76 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/server-dedup-props.md +65 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/server-parallel-fetching.md +83 -0
- package/catalog/agent/skills/vercel-react-best-practices/rules/server-serialization.md +38 -0
- package/catalog/agent/skills/verify/SKILL.md +133 -0
- package/catalog/agent/skills/web-design-guidelines/SKILL.md +53 -0
- package/catalog/agent/workflows/README.md +20 -0
- package/catalog/agent/workflows/conf.md +18 -0
- package/catalog/agent/workflows/debug.md +20 -0
- package/catalog/agent/workflows/docs.md +9 -0
- package/catalog/agent/workflows/execute-plan.md +15 -0
- package/catalog/agent/workflows/fix-all-md-warnings.md +13 -0
- package/catalog/agent/workflows/test.md +14 -0
- package/catalog/agent/workflows/write-plan.md +16 -0
- package/catalog/base-kit/.actrc.tmpl +2 -0
- package/catalog/base-kit/.editorconfig.tmpl +23 -0
- package/catalog/base-kit/.github/workflows/ci.webpresso.yml.tmpl +66 -0
- package/catalog/base-kit/.gitignore.tmpl +82 -0
- package/catalog/base-kit/.husky/commit-msg.tmpl +7 -0
- package/catalog/base-kit/.husky/pre-commit.tmpl +10 -0
- package/catalog/base-kit/.secretlintrc.json.tmpl +5 -0
- package/catalog/base-kit/commitlint.config.ts.tmpl +7 -0
- package/catalog/base-kit/e2e/.gitkeep.tmpl +0 -0
- package/catalog/base-kit/pnpm-workspace.yaml.tmpl +49 -0
- package/catalog/base-kit/scripts/audit-secret-provider-quarantine.ts.tmpl +91 -0
- package/catalog/base-kit/scripts/check-no-dev-vars.ts.tmpl +56 -0
- package/catalog/base-kit/test/.gitkeep.tmpl +0 -0
- package/catalog/blueprints/archived/.gitkeep +0 -0
- package/catalog/blueprints/completed/.gitkeep +0 -0
- package/catalog/blueprints/in-progress/.gitkeep +0 -0
- package/catalog/blueprints/parked/.gitkeep +0 -0
- package/catalog/blueprints/planned/.gitkeep +0 -0
- package/catalog/docs/templates/adr.md +38 -0
- package/catalog/docs/templates/blueprint.md +149 -0
- package/catalog/docs/templates/blueprint.yaml +110 -0
- package/catalog/docs/templates/core-doc.yaml +28 -0
- package/catalog/docs/templates/guide.md +31 -0
- package/catalog/docs/templates/guide.yaml +31 -0
- package/catalog/docs/templates/postmortem.md +60 -0
- package/catalog/docs/templates/research.md +37 -0
- package/catalog/docs/templates/runbook.md +39 -0
- package/catalog/docs/templates/system.md +44 -0
- package/catalog/docs/templates/tech-debt.md +78 -0
- package/catalog/vision/VISION.md.tmpl +33 -0
- package/commands/audit.md +13 -0
- package/commands/blueprint.md +28 -0
- package/commands/qa.md +4 -0
- package/commands/test.md +4 -0
- package/dist/esm/ai-memory/checkpoint/saver.d.ts +14 -0
- package/dist/esm/ai-memory/checkpoint/saver.js +28 -0
- package/dist/esm/ai-memory/checkpoint/types.d.ts +75 -0
- package/dist/esm/ai-memory/checkpoint/types.js +2 -0
- package/dist/esm/ai-memory/facts/consolidator.d.ts +23 -0
- package/dist/esm/ai-memory/facts/consolidator.js +134 -0
- package/dist/esm/ai-memory/facts/extractor.d.ts +28 -0
- package/dist/esm/ai-memory/facts/extractor.js +119 -0
- package/dist/esm/ai-memory/facts/types.d.ts +61 -0
- package/dist/esm/ai-memory/facts/types.js +2 -0
- package/dist/esm/ai-memory/hierarchy/retriever.d.ts +47 -0
- package/dist/esm/ai-memory/hierarchy/retriever.js +139 -0
- package/dist/esm/ai-memory/index.d.ts +11 -0
- package/dist/esm/ai-memory/index.js +6 -0
- package/dist/esm/ai-memory/store/sqlite-store.d.ts +28 -0
- package/dist/esm/ai-memory/store/sqlite-store.js +213 -0
- package/dist/esm/ai-prompts/business-canvas.d.ts +52 -0
- package/dist/esm/ai-prompts/business-canvas.js +292 -0
- package/dist/esm/ai-prompts/circuit-breaker.d.ts +35 -0
- package/dist/esm/ai-prompts/circuit-breaker.js +171 -0
- package/dist/esm/ai-prompts/experiment-draft.d.ts +86 -0
- package/dist/esm/ai-prompts/experiment-draft.js +188 -0
- package/dist/esm/ai-prompts/index.d.ts +12 -0
- package/dist/esm/ai-prompts/index.js +11 -0
- package/dist/esm/ai-prompts/persona-context.d.ts +70 -0
- package/dist/esm/ai-prompts/persona-context.js +158 -0
- package/dist/esm/ai-prompts/persona-debate.d.ts +67 -0
- package/dist/esm/ai-prompts/persona-debate.js +172 -0
- package/dist/esm/ai-prompts/persona-tools.d.ts +26 -0
- package/dist/esm/ai-prompts/persona-tools.js +172 -0
- package/dist/esm/ai-prompts/personas.d.ts +16 -0
- package/dist/esm/ai-prompts/personas.js +492 -0
- package/dist/esm/ai-prompts/rachel-planning.d.ts +28 -0
- package/dist/esm/ai-prompts/rachel-planning.js +217 -0
- package/dist/esm/ai-prompts/task-analysis.d.ts +49 -0
- package/dist/esm/ai-prompts/task-analysis.js +434 -0
- package/dist/esm/ai-prompts/types.d.ts +3 -0
- package/dist/esm/ai-prompts/types.js +2 -0
- package/dist/esm/ai-tools/index.d.ts +7 -0
- package/dist/esm/ai-tools/index.js +6 -0
- package/dist/esm/ai-tools/list-files.d.ts +3 -0
- package/dist/esm/ai-tools/list-files.js +93 -0
- package/dist/esm/ai-tools/read-file.d.ts +3 -0
- package/dist/esm/ai-tools/read-file.js +108 -0
- package/dist/esm/ai-tools/search-files.d.ts +3 -0
- package/dist/esm/ai-tools/search-files.js +166 -0
- package/dist/esm/ai-tools/shared/validate-path.d.ts +11 -0
- package/dist/esm/ai-tools/shared/validate-path.js +25 -0
- package/dist/esm/ai-tools/types.d.ts +370 -0
- package/dist/esm/ai-tools/types.js +2 -0
- package/dist/esm/ai-tools/write-file.d.ts +3 -0
- package/dist/esm/ai-tools/write-file.js +165 -0
- package/dist/esm/audit/_budgets.d.ts +28 -0
- package/dist/esm/audit/_budgets.js +60 -0
- package/dist/esm/audit/absolute-path-policy.d.ts +5 -0
- package/dist/esm/audit/absolute-path-policy.js +97 -0
- package/dist/esm/audit/agent-cost.d.ts +3 -0
- package/dist/esm/audit/agent-cost.js +111 -0
- package/dist/esm/audit/agents.d.ts +3 -0
- package/dist/esm/audit/agents.js +331 -0
- package/dist/esm/audit/ai-contracts.d.ts +3 -0
- package/dist/esm/audit/ai-contracts.js +238 -0
- package/dist/esm/audit/architecture-drift.d.ts +33 -0
- package/dist/esm/audit/architecture-drift.js +364 -0
- package/dist/esm/audit/audit-mutation-score.d.ts +43 -0
- package/dist/esm/audit/audit-mutation-score.js +92 -0
- package/dist/esm/audit/audit-no-ambient-root.d.ts +29 -0
- package/dist/esm/audit/audit-no-ambient-root.js +83 -0
- package/dist/esm/audit/audit-tph-detect.d.ts +49 -0
- package/dist/esm/audit/audit-tph-detect.js +248 -0
- package/dist/esm/audit/audit-tph-e2e-detect.d.ts +27 -0
- package/dist/esm/audit/audit-tph-e2e-detect.js +84 -0
- package/dist/esm/audit/audit-tph-e2e-runner.d.ts +8 -0
- package/dist/esm/audit/audit-tph-e2e-runner.js +106 -0
- package/dist/esm/audit/audit-tph-e2e.d.ts +16 -0
- package/dist/esm/audit/audit-tph-e2e.js +17 -0
- package/dist/esm/audit/audit-tph-runner.d.ts +10 -0
- package/dist/esm/audit/audit-tph-runner.js +115 -0
- package/dist/esm/audit/audit-tph.d.ts +17 -0
- package/dist/esm/audit/audit-tph.js +38 -0
- package/dist/esm/audit/blueprint-db-consistency.d.ts +15 -0
- package/dist/esm/audit/blueprint-db-consistency.js +109 -0
- package/dist/esm/audit/blueprint-lifecycle-sql.d.ts +17 -0
- package/dist/esm/audit/blueprint-lifecycle-sql.js +136 -0
- package/dist/esm/audit/broken-refs.d.ts +26 -0
- package/dist/esm/audit/broken-refs.js +181 -0
- package/dist/esm/audit/bucket-boundary.d.ts +21 -0
- package/dist/esm/audit/bucket-boundary.js +330 -0
- package/dist/esm/audit/commit-message-lore.d.ts +41 -0
- package/dist/esm/audit/commit-message-lore.js +113 -0
- package/dist/esm/audit/compile-drift.d.ts +3 -0
- package/dist/esm/audit/compile-drift.js +42 -0
- package/dist/esm/audit/cross-repo-correlation.d.ts +14 -0
- package/dist/esm/audit/cross-repo-correlation.js +50 -0
- package/dist/esm/audit/gitignore-agent-surfaces.d.ts +3 -0
- package/dist/esm/audit/gitignore-agent-surfaces.js +68 -0
- package/dist/esm/audit/hook-surface.d.ts +82 -0
- package/dist/esm/audit/hook-surface.js +251 -0
- package/dist/esm/audit/memory-rotation.d.ts +31 -0
- package/dist/esm/audit/memory-rotation.js +137 -0
- package/dist/esm/audit/memory-unified.d.ts +3 -0
- package/dist/esm/audit/memory-unified.js +46 -0
- package/dist/esm/audit/open-source-licenses.d.ts +4 -0
- package/dist/esm/audit/open-source-licenses.js +224 -0
- package/dist/esm/audit/package-surface.d.ts +7 -0
- package/dist/esm/audit/package-surface.js +674 -0
- package/dist/esm/audit/repo-guardrails.d.ts +89 -0
- package/dist/esm/audit/repo-guardrails.js +875 -0
- package/dist/esm/audit/roadmap-links.d.ts +7 -0
- package/dist/esm/audit/roadmap-links.js +235 -0
- package/dist/esm/audit/run-stryker.d.ts +9 -0
- package/dist/esm/audit/run-stryker.js +24 -0
- package/dist/esm/audit/shell.d.ts +17 -0
- package/dist/esm/audit/shell.js +32 -0
- package/dist/esm/audit/skill-sizes.d.ts +25 -0
- package/dist/esm/audit/skill-sizes.js +153 -0
- package/dist/esm/audit/tech-debt-cadence.d.ts +16 -0
- package/dist/esm/audit/tech-debt-cadence.js +101 -0
- package/dist/esm/audit/tech-debt.d.ts +9 -0
- package/dist/esm/audit/tech-debt.js +107 -0
- package/dist/esm/audit/vision-doc.d.ts +21 -0
- package/dist/esm/audit/vision-doc.js +136 -0
- package/dist/esm/blueprint/aggregate.d.ts +146 -0
- package/dist/esm/blueprint/aggregate.js +217 -0
- package/dist/esm/blueprint/context.d.ts +70 -0
- package/dist/esm/blueprint/context.js +301 -0
- package/dist/esm/blueprint/core/parser.d.ts +53 -0
- package/dist/esm/blueprint/core/parser.js +281 -0
- package/dist/esm/blueprint/core/schema.d.ts +163 -0
- package/dist/esm/blueprint/core/schema.js +98 -0
- package/dist/esm/blueprint/core/types.d.ts +13 -0
- package/dist/esm/blueprint/core/types.js +5 -0
- package/dist/esm/blueprint/core/validation/criteria.d.ts +6 -0
- package/dist/esm/blueprint/core/validation/criteria.js +15 -0
- package/dist/esm/blueprint/core/validation/dependencies.d.ts +19 -0
- package/dist/esm/blueprint/core/validation/dependencies.js +113 -0
- package/dist/esm/blueprint/core/validation/index.d.ts +13 -0
- package/dist/esm/blueprint/core/validation/index.js +11 -0
- package/dist/esm/blueprint/core/validation/links.d.ts +18 -0
- package/dist/esm/blueprint/core/validation/links.js +47 -0
- package/dist/esm/blueprint/core/validation/phases.d.ts +12 -0
- package/dist/esm/blueprint/core/validation/phases.js +18 -0
- package/dist/esm/blueprint/core/validation/state.d.ts +9 -0
- package/dist/esm/blueprint/core/validation/state.js +123 -0
- package/dist/esm/blueprint/core/validation/task-blocks.d.ts +27 -0
- package/dist/esm/blueprint/core/validation/task-blocks.js +48 -0
- package/dist/esm/blueprint/core/validation/task-sections.d.ts +14 -0
- package/dist/esm/blueprint/core/validation/task-sections.js +60 -0
- package/dist/esm/blueprint/core/validation/template.d.ts +9 -0
- package/dist/esm/blueprint/core/validation/template.js +65 -0
- package/dist/esm/blueprint/cross-repo/allowlist.d.ts +28 -0
- package/dist/esm/blueprint/cross-repo/allowlist.js +87 -0
- package/dist/esm/blueprint/cross-repo/audit.d.ts +49 -0
- package/dist/esm/blueprint/cross-repo/audit.js +161 -0
- package/dist/esm/blueprint/cross-repo/resolver.d.ts +28 -0
- package/dist/esm/blueprint/cross-repo/resolver.js +32 -0
- package/dist/esm/blueprint/dag/cycle-detector.d.ts +12 -0
- package/dist/esm/blueprint/dag/cycle-detector.js +46 -0
- package/dist/esm/blueprint/dag/executor.d.ts +140 -0
- package/dist/esm/blueprint/dag/executor.js +292 -0
- package/dist/esm/blueprint/dag/index.d.ts +20 -0
- package/dist/esm/blueprint/dag/index.js +17 -0
- package/dist/esm/blueprint/dag/interfaces.d.ts +56 -0
- package/dist/esm/blueprint/dag/interfaces.js +13 -0
- package/dist/esm/blueprint/dag/local/independence.d.ts +107 -0
- package/dist/esm/blueprint/dag/local/independence.js +231 -0
- package/dist/esm/blueprint/dag/local/index.d.ts +14 -0
- package/dist/esm/blueprint/dag/local/index.js +14 -0
- package/dist/esm/blueprint/dag/local/package-graph.d.ts +66 -0
- package/dist/esm/blueprint/dag/local/package-graph.js +148 -0
- package/dist/esm/blueprint/dag/plan-parser.d.ts +54 -0
- package/dist/esm/blueprint/dag/plan-parser.js +236 -0
- package/dist/esm/blueprint/dag/task-graph-algorithms.d.ts +13 -0
- package/dist/esm/blueprint/dag/task-graph-algorithms.js +236 -0
- package/dist/esm/blueprint/dag/task-graph.d.ts +171 -0
- package/dist/esm/blueprint/dag/task-graph.js +370 -0
- package/dist/esm/blueprint/dag/types.d.ts +17 -0
- package/dist/esm/blueprint/dag/types.js +2 -0
- package/dist/esm/blueprint/db/cold-start.d.ts +8 -0
- package/dist/esm/blueprint/db/cold-start.js +45 -0
- package/dist/esm/blueprint/db/connection.d.ts +8 -0
- package/dist/esm/blueprint/db/connection.js +45 -0
- package/dist/esm/blueprint/db/enums.d.ts +76 -0
- package/dist/esm/blueprint/db/enums.js +37 -0
- package/dist/esm/blueprint/db/ingester.d.ts +25 -0
- package/dist/esm/blueprint/db/ingester.js +307 -0
- package/dist/esm/blueprint/db/legacy-migration.d.ts +41 -0
- package/dist/esm/blueprint/db/legacy-migration.js +122 -0
- package/dist/esm/blueprint/db/migrations/run.d.ts +3 -0
- package/dist/esm/blueprint/db/migrations/run.js +53 -0
- package/dist/esm/blueprint/db/parser/blueprint-db-parser.d.ts +69 -0
- package/dist/esm/blueprint/db/parser/blueprint-db-parser.js +408 -0
- package/dist/esm/blueprint/db/parser/tech-debt-db-parser.d.ts +33 -0
- package/dist/esm/blueprint/db/parser/tech-debt-db-parser.js +134 -0
- package/dist/esm/blueprint/db/paths.d.ts +104 -0
- package/dist/esm/blueprint/db/paths.js +192 -0
- package/dist/esm/blueprint/db/sqlite.d.ts +32 -0
- package/dist/esm/blueprint/db/sqlite.js +46 -0
- package/dist/esm/blueprint/db/template-runner.d.ts +8 -0
- package/dist/esm/blueprint/db/template-runner.js +65 -0
- package/dist/esm/blueprint/db/templates.d.ts +11 -0
- package/dist/esm/blueprint/db/templates.js +226 -0
- package/dist/esm/blueprint/db/workspace-config.d.ts +38 -0
- package/dist/esm/blueprint/db/workspace-config.js +150 -0
- package/dist/esm/blueprint/evidence.d.ts +140 -0
- package/dist/esm/blueprint/evidence.js +152 -0
- package/dist/esm/blueprint/execution/artifacts.d.ts +9 -0
- package/dist/esm/blueprint/execution/artifacts.js +45 -0
- package/dist/esm/blueprint/execution/metadata.d.ts +11 -0
- package/dist/esm/blueprint/execution/metadata.js +46 -0
- package/dist/esm/blueprint/execution/progress-bridge.d.ts +117 -0
- package/dist/esm/blueprint/execution/progress-bridge.js +302 -0
- package/dist/esm/blueprint/execution/types.d.ts +233 -0
- package/dist/esm/blueprint/execution/types.js +99 -0
- package/dist/esm/blueprint/export/spec-kit/_field-map.d.ts +12 -0
- package/dist/esm/blueprint/export/spec-kit/_field-map.js +33 -0
- package/dist/esm/blueprint/export/spec-kit/constitution.d.ts +7 -0
- package/dist/esm/blueprint/export/spec-kit/constitution.js +61 -0
- package/dist/esm/blueprint/export/spec-kit/index.d.ts +13 -0
- package/dist/esm/blueprint/export/spec-kit/index.js +17 -0
- package/dist/esm/blueprint/export/spec-kit/plan.d.ts +7 -0
- package/dist/esm/blueprint/export/spec-kit/plan.js +43 -0
- package/dist/esm/blueprint/export/spec-kit/spec.d.ts +7 -0
- package/dist/esm/blueprint/export/spec-kit/spec.js +35 -0
- package/dist/esm/blueprint/export/spec-kit/tasks.d.ts +3 -0
- package/dist/esm/blueprint/export/spec-kit/tasks.js +32 -0
- package/dist/esm/blueprint/freshness.d.ts +78 -0
- package/dist/esm/blueprint/freshness.js +127 -0
- package/dist/esm/blueprint/graph/index.d.ts +5 -0
- package/dist/esm/blueprint/graph/index.js +5 -0
- package/dist/esm/blueprint/graph/mermaid-parser.d.ts +3 -0
- package/dist/esm/blueprint/graph/mermaid-parser.js +93 -0
- package/dist/esm/blueprint/graph/mermaid-serializer.d.ts +3 -0
- package/dist/esm/blueprint/graph/mermaid-serializer.js +20 -0
- package/dist/esm/blueprint/graph/schema.d.ts +89 -0
- package/dist/esm/blueprint/graph/schema.js +104 -0
- package/dist/esm/blueprint/graph/task-graph-adapter.d.ts +6 -0
- package/dist/esm/blueprint/graph/task-graph-adapter.js +30 -0
- package/dist/esm/blueprint/history/diff.d.ts +36 -0
- package/dist/esm/blueprint/history/diff.js +122 -0
- package/dist/esm/blueprint/index.d.ts +37 -0
- package/dist/esm/blueprint/index.js +46 -0
- package/dist/esm/blueprint/lifecycle/audit.d.ts +17 -0
- package/dist/esm/blueprint/lifecycle/audit.js +423 -0
- package/dist/esm/blueprint/lifecycle/engine.d.ts +38 -0
- package/dist/esm/blueprint/lifecycle/engine.js +157 -0
- package/dist/esm/blueprint/lifecycle/local.d.ts +15 -0
- package/dist/esm/blueprint/lifecycle/local.js +92 -0
- package/dist/esm/blueprint/local.d.ts +21 -0
- package/dist/esm/blueprint/local.js +25 -0
- package/dist/esm/blueprint/markdown/helpers.d.ts +17 -0
- package/dist/esm/blueprint/markdown/helpers.js +92 -0
- package/dist/esm/blueprint/markdown/task-heading.d.ts +8 -0
- package/dist/esm/blueprint/markdown/task-heading.js +19 -0
- package/dist/esm/blueprint/next-action.d.ts +27 -0
- package/dist/esm/blueprint/next-action.js +45 -0
- package/dist/esm/blueprint/project-resolver.d.ts +31 -0
- package/dist/esm/blueprint/project-resolver.js +142 -0
- package/dist/esm/blueprint/projection-ready.d.ts +3 -0
- package/dist/esm/blueprint/projection-ready.js +29 -0
- package/dist/esm/blueprint/projects.d.ts +96 -0
- package/dist/esm/blueprint/projects.js +383 -0
- package/dist/esm/blueprint/query/types.d.ts +53 -0
- package/dist/esm/blueprint/query/types.js +16 -0
- package/dist/esm/blueprint/roadmap.d.ts +24 -0
- package/dist/esm/blueprint/roadmap.js +82 -0
- package/dist/esm/blueprint/service/BlueprintCreationService.d.ts +47 -0
- package/dist/esm/blueprint/service/BlueprintCreationService.js +260 -0
- package/dist/esm/blueprint/service/BlueprintService.d.ts +70 -0
- package/dist/esm/blueprint/service/BlueprintService.js +190 -0
- package/dist/esm/blueprint/service/TechDebtService.d.ts +102 -0
- package/dist/esm/blueprint/service/TechDebtService.js +337 -0
- package/dist/esm/blueprint/service/TrackedDocumentService.d.ts +198 -0
- package/dist/esm/blueprint/service/TrackedDocumentService.js +162 -0
- package/dist/esm/blueprint/service/blueprint-records.d.ts +8 -0
- package/dist/esm/blueprint/service/blueprint-records.js +124 -0
- package/dist/esm/blueprint/service/blueprint-tech-debt-links.d.ts +3 -0
- package/dist/esm/blueprint/service/blueprint-tech-debt-links.js +35 -0
- package/dist/esm/blueprint/service/priority-scoring.d.ts +21 -0
- package/dist/esm/blueprint/service/priority-scoring.js +85 -0
- package/dist/esm/blueprint/service/scanner.d.ts +56 -0
- package/dist/esm/blueprint/service/scanner.js +212 -0
- package/dist/esm/blueprint/sync/auth.d.ts +27 -0
- package/dist/esm/blueprint/sync/auth.js +59 -0
- package/dist/esm/blueprint/sync/client.d.ts +64 -0
- package/dist/esm/blueprint/sync/client.js +232 -0
- package/dist/esm/blueprint/sync/replica.d.ts +55 -0
- package/dist/esm/blueprint/sync/replica.js +139 -0
- package/dist/esm/blueprint/sync/types.d.ts +178 -0
- package/dist/esm/blueprint/sync/types.js +18 -0
- package/dist/esm/blueprint/tech-debt/index.d.ts +9 -0
- package/dist/esm/blueprint/tech-debt/index.js +9 -0
- package/dist/esm/blueprint/tech-debt/parser.d.ts +56 -0
- package/dist/esm/blueprint/tech-debt/parser.js +133 -0
- package/dist/esm/blueprint/tech-debt/query-types.d.ts +130 -0
- package/dist/esm/blueprint/tech-debt/query-types.js +37 -0
- package/dist/esm/blueprint/tech-debt/schema.d.ts +151 -0
- package/dist/esm/blueprint/tech-debt/schema.js +145 -0
- package/dist/esm/blueprint/test-utils/blueprint-mocks.d.ts +31 -0
- package/dist/esm/blueprint/test-utils/blueprint-mocks.js +63 -0
- package/dist/esm/blueprint/tracked-document/index.d.ts +11 -0
- package/dist/esm/blueprint/tracked-document/index.js +11 -0
- package/dist/esm/blueprint/tracked-document/parser.d.ts +113 -0
- package/dist/esm/blueprint/tracked-document/parser.js +197 -0
- package/dist/esm/blueprint/tracked-document/query-types.d.ts +43 -0
- package/dist/esm/blueprint/tracked-document/query-types.js +8 -0
- package/dist/esm/blueprint/tracked-document/schema.d.ts +80 -0
- package/dist/esm/blueprint/tracked-document/schema.js +89 -0
- package/dist/esm/blueprint/types/execution-backend.d.ts +17 -0
- package/dist/esm/blueprint/types/execution-backend.js +16 -0
- package/dist/esm/blueprint/utils/archive.d.ts +69 -0
- package/dist/esm/blueprint/utils/archive.js +209 -0
- package/dist/esm/blueprint/utils/blueprint-root.d.ts +9 -0
- package/dist/esm/blueprint/utils/blueprint-root.js +77 -0
- package/dist/esm/blueprint/utils/conflict.d.ts +125 -0
- package/dist/esm/blueprint/utils/conflict.js +111 -0
- package/dist/esm/blueprint/utils/decision-trace-artifacts.d.ts +16 -0
- package/dist/esm/blueprint/utils/decision-trace-artifacts.js +37 -0
- package/dist/esm/blueprint/utils/errors.d.ts +14 -0
- package/dist/esm/blueprint/utils/errors.js +44 -0
- package/dist/esm/blueprint/utils/freshness.d.ts +21 -0
- package/dist/esm/blueprint/utils/freshness.js +66 -0
- package/dist/esm/blueprint/utils/package-assets.d.ts +6 -0
- package/dist/esm/blueprint/utils/package-assets.js +20 -0
- package/dist/esm/blueprint/utils/string.d.ts +8 -0
- package/dist/esm/blueprint/utils/string.js +10 -0
- package/dist/esm/blueprint/utils/tech-debt-root.d.ts +4 -0
- package/dist/esm/blueprint/utils/tech-debt-root.js +18 -0
- package/dist/esm/blueprint/verification.d.ts +116 -0
- package/dist/esm/blueprint/verification.js +246 -0
- package/dist/esm/build/generate-skills-dir.d.ts +14 -0
- package/dist/esm/build/generate-skills-dir.js +56 -0
- package/dist/esm/ci/act-helper.d.ts +29 -0
- package/dist/esm/ci/act-helper.js +106 -0
- package/dist/esm/ci/act-runner.d.ts +24 -0
- package/dist/esm/ci/act-runner.js +71 -0
- package/dist/esm/cli/auto-update/detect-pm.d.ts +76 -0
- package/dist/esm/cli/auto-update/detect-pm.js +237 -0
- package/dist/esm/cli/auto-update/installer.d.ts +65 -0
- package/dist/esm/cli/auto-update/installer.js +171 -0
- package/dist/esm/cli/auto-update/log.d.ts +46 -0
- package/dist/esm/cli/auto-update/log.js +107 -0
- package/dist/esm/cli/auto-update/run.d.ts +23 -0
- package/dist/esm/cli/auto-update/run.js +116 -0
- package/dist/esm/cli/auto-update/skip.d.ts +34 -0
- package/dist/esm/cli/auto-update/skip.js +84 -0
- package/dist/esm/cli/bootstrap.d.ts +28 -0
- package/dist/esm/cli/bootstrap.js +55 -0
- package/dist/esm/cli/cli.d.ts +11 -0
- package/dist/esm/cli/cli.js +310 -0
- package/dist/esm/cli/commands/audit-core.d.ts +61 -0
- package/dist/esm/cli/commands/audit-core.js +87 -0
- package/dist/esm/cli/commands/audit.d.ts +10 -0
- package/dist/esm/cli/commands/audit.js +273 -0
- package/dist/esm/cli/commands/bench/index.d.ts +6 -0
- package/dist/esm/cli/commands/bench/index.js +54 -0
- package/dist/esm/cli/commands/bench/session-memory.d.ts +129 -0
- package/dist/esm/cli/commands/bench/session-memory.js +242 -0
- package/dist/esm/cli/commands/blueprint/db-commands.d.ts +60 -0
- package/dist/esm/cli/commands/blueprint/db-commands.js +244 -0
- package/dist/esm/cli/commands/blueprint/execution-io.d.ts +80 -0
- package/dist/esm/cli/commands/blueprint/execution-io.js +78 -0
- package/dist/esm/cli/commands/blueprint/execution-spec.d.ts +45 -0
- package/dist/esm/cli/commands/blueprint/execution-spec.js +177 -0
- package/dist/esm/cli/commands/blueprint/execution-state.d.ts +17 -0
- package/dist/esm/cli/commands/blueprint/execution-state.js +38 -0
- package/dist/esm/cli/commands/blueprint/execution.d.ts +74 -0
- package/dist/esm/cli/commands/blueprint/execution.js +256 -0
- package/dist/esm/cli/commands/blueprint/mutations.d.ts +109 -0
- package/dist/esm/cli/commands/blueprint/mutations.js +357 -0
- package/dist/esm/cli/commands/blueprint/router-dispatch.d.ts +50 -0
- package/dist/esm/cli/commands/blueprint/router-dispatch.js +358 -0
- package/dist/esm/cli/commands/blueprint/router-output.d.ts +25 -0
- package/dist/esm/cli/commands/blueprint/router-output.js +190 -0
- package/dist/esm/cli/commands/blueprint/router.d.ts +117 -0
- package/dist/esm/cli/commands/blueprint/router.js +480 -0
- package/dist/esm/cli/commands/blueprint/template-resolver.d.ts +19 -0
- package/dist/esm/cli/commands/blueprint/template-resolver.js +55 -0
- package/dist/esm/cli/commands/ci.d.ts +31 -0
- package/dist/esm/cli/commands/ci.js +76 -0
- package/dist/esm/cli/commands/compile.d.ts +21 -0
- package/dist/esm/cli/commands/compile.js +329 -0
- package/dist/esm/cli/commands/config.d.ts +55 -0
- package/dist/esm/cli/commands/config.js +272 -0
- package/dist/esm/cli/commands/dev.d.ts +17 -0
- package/dist/esm/cli/commands/dev.js +56 -0
- package/dist/esm/cli/commands/docs-core.d.ts +26 -0
- package/dist/esm/cli/commands/docs-core.js +88 -0
- package/dist/esm/cli/commands/docs.d.ts +9 -0
- package/dist/esm/cli/commands/docs.js +46 -0
- package/dist/esm/cli/commands/doctor.d.ts +10 -0
- package/dist/esm/cli/commands/doctor.js +53 -0
- package/dist/esm/cli/commands/e2e.d.ts +22 -0
- package/dist/esm/cli/commands/e2e.js +99 -0
- package/dist/esm/cli/commands/err.d.ts +11 -0
- package/dist/esm/cli/commands/err.js +73 -0
- package/dist/esm/cli/commands/format.d.ts +4 -0
- package/dist/esm/cli/commands/format.js +48 -0
- package/dist/esm/cli/commands/gain/index.d.ts +10 -0
- package/dist/esm/cli/commands/gain/index.js +83 -0
- package/dist/esm/cli/commands/hooks.d.ts +3 -0
- package/dist/esm/cli/commands/hooks.js +21 -0
- package/dist/esm/cli/commands/init/config.d.ts +36 -0
- package/dist/esm/cli/commands/init/config.js +116 -0
- package/dist/esm/cli/commands/init/detect-consumer.d.ts +49 -0
- package/dist/esm/cli/commands/init/detect-consumer.js +279 -0
- package/dist/esm/cli/commands/init/gitignore-patcher.d.ts +9 -0
- package/dist/esm/cli/commands/init/gitignore-patcher.js +133 -0
- package/dist/esm/cli/commands/init/host-visibility.d.ts +37 -0
- package/dist/esm/cli/commands/init/host-visibility.js +105 -0
- package/dist/esm/cli/commands/init/index.d.ts +23 -0
- package/dist/esm/cli/commands/init/index.js +751 -0
- package/dist/esm/cli/commands/init/merge.d.ts +33 -0
- package/dist/esm/cli/commands/init/merge.js +111 -0
- package/dist/esm/cli/commands/init/preflight.d.ts +15 -0
- package/dist/esm/cli/commands/init/preflight.js +87 -0
- package/dist/esm/cli/commands/init/prompts.d.ts +24 -0
- package/dist/esm/cli/commands/init/prompts.js +126 -0
- package/dist/esm/cli/commands/init/scaffold-agent-rules.d.ts +11 -0
- package/dist/esm/cli/commands/init/scaffold-agent-rules.js +58 -0
- package/dist/esm/cli/commands/init/scaffold-agent-skills.d.ts +11 -0
- package/dist/esm/cli/commands/init/scaffold-agent-skills.js +58 -0
- package/dist/esm/cli/commands/init/scaffold-agent.d.ts +15 -0
- package/dist/esm/cli/commands/init/scaffold-agent.js +63 -0
- package/dist/esm/cli/commands/init/scaffold-agents-md.d.ts +16 -0
- package/dist/esm/cli/commands/init/scaffold-agents-md.js +182 -0
- package/dist/esm/cli/commands/init/scaffold-base-kit.d.ts +9 -0
- package/dist/esm/cli/commands/init/scaffold-base-kit.js +183 -0
- package/dist/esm/cli/commands/init/scaffold-blueprints.d.ts +8 -0
- package/dist/esm/cli/commands/init/scaffold-blueprints.js +84 -0
- package/dist/esm/cli/commands/init/scaffold-catalog-ignore.d.ts +14 -0
- package/dist/esm/cli/commands/init/scaffold-catalog-ignore.js +48 -0
- package/dist/esm/cli/commands/init/scaffold-docs.d.ts +8 -0
- package/dist/esm/cli/commands/init/scaffold-docs.js +15 -0
- package/dist/esm/cli/commands/init/scaffold-monorepo-nav.d.ts +19 -0
- package/dist/esm/cli/commands/init/scaffold-monorepo-nav.js +101 -0
- package/dist/esm/cli/commands/init/scaffolders/agent-hooks/codex-global-normalize.d.ts +20 -0
- package/dist/esm/cli/commands/init/scaffolders/agent-hooks/codex-global-normalize.js +258 -0
- package/dist/esm/cli/commands/init/scaffolders/agent-hooks/codex-global-ownership.d.ts +3 -0
- package/dist/esm/cli/commands/init/scaffolders/agent-hooks/codex-global-ownership.js +36 -0
- package/dist/esm/cli/commands/init/scaffolders/agent-hooks/codex-ownership.d.ts +11 -0
- package/dist/esm/cli/commands/init/scaffolders/agent-hooks/codex-ownership.js +62 -0
- package/dist/esm/cli/commands/init/scaffolders/agent-hooks/codex-trust-sync.d.ts +24 -0
- package/dist/esm/cli/commands/init/scaffolders/agent-hooks/codex-trust-sync.js +101 -0
- package/dist/esm/cli/commands/init/scaffolders/agent-hooks/index.d.ts +68 -0
- package/dist/esm/cli/commands/init/scaffolders/agent-hooks/index.js +585 -0
- package/dist/esm/cli/commands/init/scaffolders/agent-hooks/skill-hooks.d.ts +21 -0
- package/dist/esm/cli/commands/init/scaffolders/agent-hooks/skill-hooks.js +123 -0
- package/dist/esm/cli/commands/init/scaffolders/audit-hooks/index.d.ts +16 -0
- package/dist/esm/cli/commands/init/scaffolders/audit-hooks/index.js +65 -0
- package/dist/esm/cli/commands/init/scaffolders/claude-plugin/index.d.ts +33 -0
- package/dist/esm/cli/commands/init/scaffolders/claude-plugin/index.js +67 -0
- package/dist/esm/cli/commands/init/scaffolders/claude-rules/index.d.ts +7 -0
- package/dist/esm/cli/commands/init/scaffolders/claude-rules/index.js +127 -0
- package/dist/esm/cli/commands/init/scaffolders/codex-cli/index.d.ts +17 -0
- package/dist/esm/cli/commands/init/scaffolders/codex-cli/index.js +27 -0
- package/dist/esm/cli/commands/init/scaffolders/codex-mcp/index.d.ts +79 -0
- package/dist/esm/cli/commands/init/scaffolders/codex-mcp/index.js +189 -0
- package/dist/esm/cli/commands/init/scaffolders/context-mode/index.d.ts +24 -0
- package/dist/esm/cli/commands/init/scaffolders/context-mode/index.js +165 -0
- package/dist/esm/cli/commands/init/scaffolders/example-skill/index.d.ts +15 -0
- package/dist/esm/cli/commands/init/scaffolders/example-skill/index.js +31 -0
- package/dist/esm/cli/commands/init/scaffolders/gstack/index.d.ts +92 -0
- package/dist/esm/cli/commands/init/scaffolders/gstack/index.js +228 -0
- package/dist/esm/cli/commands/init/scaffolders/lore-commits/index.d.ts +12 -0
- package/dist/esm/cli/commands/init/scaffolders/lore-commits/index.js +24 -0
- package/dist/esm/cli/commands/init/scaffolders/omc/index.d.ts +41 -0
- package/dist/esm/cli/commands/init/scaffolders/omc/index.js +54 -0
- package/dist/esm/cli/commands/init/scaffolders/omx/index.d.ts +63 -0
- package/dist/esm/cli/commands/init/scaffolders/omx/index.js +251 -0
- package/dist/esm/cli/commands/init/scaffolders/opencode-plugin/index.d.ts +9 -0
- package/dist/esm/cli/commands/init/scaffolders/opencode-plugin/index.js +86 -0
- package/dist/esm/cli/commands/init/scaffolders/rtk/index.d.ts +25 -0
- package/dist/esm/cli/commands/init/scaffolders/rtk/index.js +55 -0
- package/dist/esm/cli/commands/init/scaffolders/runtime-check/index.d.ts +15 -0
- package/dist/esm/cli/commands/init/scaffolders/runtime-check/index.js +37 -0
- package/dist/esm/cli/commands/init/scaffolders/spinner.d.ts +23 -0
- package/dist/esm/cli/commands/init/scaffolders/spinner.js +32 -0
- package/dist/esm/cli/commands/init/scaffolders/subagents/index.d.ts +7 -0
- package/dist/esm/cli/commands/init/scaffolders/subagents/index.js +88 -0
- package/dist/esm/cli/commands/init/scaffolders/version-pin.d.ts +19 -0
- package/dist/esm/cli/commands/init/scaffolders/version-pin.js +95 -0
- package/dist/esm/cli/commands/init/scaffolders/vision/index.d.ts +10 -0
- package/dist/esm/cli/commands/init/scaffolders/vision/index.js +67 -0
- package/dist/esm/cli/commands/init/scaffolders/vision/interview.d.ts +22 -0
- package/dist/esm/cli/commands/init/scaffolders/vision/interview.js +73 -0
- package/dist/esm/cli/commands/init/scaffolders/workspace-config/index.d.ts +28 -0
- package/dist/esm/cli/commands/init/scaffolders/workspace-config/index.js +40 -0
- package/dist/esm/cli/commands/lint.d.ts +4 -0
- package/dist/esm/cli/commands/lint.js +40 -0
- package/dist/esm/cli/commands/mcp.d.ts +4 -0
- package/dist/esm/cli/commands/mcp.js +18 -0
- package/dist/esm/cli/commands/roadmap.d.ts +7 -0
- package/dist/esm/cli/commands/roadmap.js +79 -0
- package/dist/esm/cli/commands/rule.d.ts +8 -0
- package/dist/esm/cli/commands/rule.js +59 -0
- package/dist/esm/cli/commands/skill.d.ts +20 -0
- package/dist/esm/cli/commands/skill.js +160 -0
- package/dist/esm/cli/commands/sync.d.ts +14 -0
- package/dist/esm/cli/commands/sync.js +132 -0
- package/dist/esm/cli/commands/tech-debt/index.d.ts +5 -0
- package/dist/esm/cli/commands/tech-debt/index.js +5 -0
- package/dist/esm/cli/commands/tech-debt/router-dispatch.d.ts +22 -0
- package/dist/esm/cli/commands/tech-debt/router-dispatch.js +436 -0
- package/dist/esm/cli/commands/tech-debt/router.d.ts +10 -0
- package/dist/esm/cli/commands/tech-debt/router.js +30 -0
- package/dist/esm/cli/commands/test.d.ts +12 -0
- package/dist/esm/cli/commands/test.js +88 -0
- package/dist/esm/cli/commands/typecheck.d.ts +18 -0
- package/dist/esm/cli/commands/typecheck.js +57 -0
- package/dist/esm/cli/commands/worktree/router-dispatch.d.ts +39 -0
- package/dist/esm/cli/commands/worktree/router-dispatch.js +217 -0
- package/dist/esm/cli/commands/worktree/router.d.ts +10 -0
- package/dist/esm/cli/commands/worktree/router.js +34 -0
- package/dist/esm/cli/utils.d.ts +45 -0
- package/dist/esm/cli/utils.js +156 -0
- package/dist/esm/codex/app-server/client.d.ts +50 -0
- package/dist/esm/codex/app-server/client.js +202 -0
- package/dist/esm/codex/app-server/types.d.ts +240 -0
- package/dist/esm/codex/app-server/types.js +103 -0
- package/dist/esm/compiler/flatten.d.ts +10 -0
- package/dist/esm/compiler/flatten.js +71 -0
- package/dist/esm/compiler/manifests/_versions.d.ts +7 -0
- package/dist/esm/compiler/manifests/_versions.js +7 -0
- package/dist/esm/compiler/manifests/claude.d.ts +9 -0
- package/dist/esm/compiler/manifests/claude.js +36 -0
- package/dist/esm/compiler/manifests/codex.d.ts +9 -0
- package/dist/esm/compiler/manifests/codex.js +23 -0
- package/dist/esm/compiler/manifests/cursor.d.ts +9 -0
- package/dist/esm/compiler/manifests/cursor.js +28 -0
- package/dist/esm/compiler/manifests/gemini.d.ts +9 -0
- package/dist/esm/compiler/manifests/gemini.js +20 -0
- package/dist/esm/compiler/memory/directives.d.ts +23 -0
- package/dist/esm/compiler/memory/directives.js +108 -0
- package/dist/esm/compiler/memory/directives.schema.d.ts +55 -0
- package/dist/esm/compiler/memory/directives.schema.js +32 -0
- package/dist/esm/compiler/memory/merger.d.ts +17 -0
- package/dist/esm/compiler/memory/merger.js +122 -0
- package/dist/esm/compiler/memory/precedence.d.ts +15 -0
- package/dist/esm/compiler/memory/precedence.js +40 -0
- package/dist/esm/compiler/memory/provenance.d.ts +13 -0
- package/dist/esm/compiler/memory/provenance.js +8 -0
- package/dist/esm/compiler/orphans.d.ts +8 -0
- package/dist/esm/compiler/orphans.js +58 -0
- package/dist/esm/compiler/schema.d.ts +47 -0
- package/dist/esm/compiler/schema.js +49 -0
- package/dist/esm/config/docs-lint/cli/check-internal-links.d.ts +13 -0
- package/dist/esm/config/docs-lint/cli/check-internal-links.js +161 -0
- package/dist/esm/config/docs-lint/cli/check-refs.d.ts +9 -0
- package/dist/esm/config/docs-lint/cli/check-refs.js +165 -0
- package/dist/esm/config/docs-lint/cli/check-stale.d.ts +9 -0
- package/dist/esm/config/docs-lint/cli/check-stale.js +116 -0
- package/dist/esm/config/docs-lint/cli/commands/migrate-command.d.ts +22 -0
- package/dist/esm/config/docs-lint/cli/commands/migrate-command.js +254 -0
- package/dist/esm/config/docs-lint/cli/commands/validate-command.d.ts +28 -0
- package/dist/esm/config/docs-lint/cli/commands/validate-command.js +363 -0
- package/dist/esm/config/docs-lint/cli/factories.d.ts +54 -0
- package/dist/esm/config/docs-lint/cli/factories.js +85 -0
- package/dist/esm/config/docs-lint/cli/fixers/code-language.d.ts +34 -0
- package/dist/esm/config/docs-lint/cli/fixers/code-language.js +277 -0
- package/dist/esm/config/docs-lint/cli/interfaces.d.ts +55 -0
- package/dist/esm/config/docs-lint/cli/interfaces.js +6 -0
- package/dist/esm/config/docs-lint/cli/migrate.d.ts +3 -0
- package/dist/esm/config/docs-lint/cli/migrate.js +53 -0
- package/dist/esm/config/docs-lint/cli/planning-path.d.ts +2 -0
- package/dist/esm/config/docs-lint/cli/planning-path.js +29 -0
- package/dist/esm/config/docs-lint/cli/validate.d.ts +3 -0
- package/dist/esm/config/docs-lint/cli/validate.js +47 -0
- package/dist/esm/config/docs-lint/cli/validators/code-density.d.ts +7 -0
- package/dist/esm/config/docs-lint/cli/validators/code-density.js +15 -0
- package/dist/esm/config/docs-lint/cli/validators/command-safety.d.ts +19 -0
- package/dist/esm/config/docs-lint/cli/validators/command-safety.js +195 -0
- package/dist/esm/config/docs-lint/cli/validators/context-limits.d.ts +58 -0
- package/dist/esm/config/docs-lint/cli/validators/context-limits.js +212 -0
- package/dist/esm/config/docs-lint/cli/validators/deprecated-commands.d.ts +9 -0
- package/dist/esm/config/docs-lint/cli/validators/deprecated-commands.js +112 -0
- package/dist/esm/config/docs-lint/cli/validators/filename.d.ts +12 -0
- package/dist/esm/config/docs-lint/cli/validators/filename.js +128 -0
- package/dist/esm/config/docs-lint/cli/validators/imports.d.ts +30 -0
- package/dist/esm/config/docs-lint/cli/validators/imports.js +163 -0
- package/dist/esm/config/docs-lint/cli/validators/index.d.ts +8 -0
- package/dist/esm/config/docs-lint/cli/validators/index.js +8 -0
- package/dist/esm/config/docs-lint/cli/validators/links.d.ts +30 -0
- package/dist/esm/config/docs-lint/cli/validators/links.js +134 -0
- package/dist/esm/config/docs-lint/cli/validators/markdownlint.d.ts +11 -0
- package/dist/esm/config/docs-lint/cli/validators/markdownlint.js +17 -0
- package/dist/esm/config/docs-lint/cli/validators/structure.d.ts +10 -0
- package/dist/esm/config/docs-lint/cli/validators/structure.js +75 -0
- package/dist/esm/config/docs-lint/generator/frontmatter-validator.d.ts +6 -0
- package/dist/esm/config/docs-lint/generator/frontmatter-validator.js +72 -0
- package/dist/esm/config/docs-lint/generator/index.d.ts +11 -0
- package/dist/esm/config/docs-lint/generator/index.js +10 -0
- package/dist/esm/config/docs-lint/generator/markdown-generator.d.ts +6 -0
- package/dist/esm/config/docs-lint/generator/markdown-generator.js +78 -0
- package/dist/esm/config/docs-lint/generator/template-loader.d.ts +18 -0
- package/dist/esm/config/docs-lint/generator/template-loader.js +66 -0
- package/dist/esm/config/docs-lint/generator/types.d.ts +100 -0
- package/dist/esm/config/docs-lint/generator/types.js +2 -0
- package/dist/esm/config/docs-lint/index.d.ts +34 -0
- package/dist/esm/config/docs-lint/index.js +3 -0
- package/dist/esm/config/docs-lint/parsers/bold-metadata.d.ts +28 -0
- package/dist/esm/config/docs-lint/parsers/bold-metadata.js +176 -0
- package/dist/esm/config/docs-lint/parsers/frontmatter.d.ts +20 -0
- package/dist/esm/config/docs-lint/parsers/frontmatter.js +67 -0
- package/dist/esm/config/docs-lint/parsers/index.d.ts +3 -0
- package/dist/esm/config/docs-lint/parsers/index.js +3 -0
- package/dist/esm/config/docs-lint/schemas/adaptation.d.ts +28 -0
- package/dist/esm/config/docs-lint/schemas/adaptation.js +18 -0
- package/dist/esm/config/docs-lint/schemas/agents.d.ts +76 -0
- package/dist/esm/config/docs-lint/schemas/agents.js +29 -0
- package/dist/esm/config/docs-lint/schemas/audit.d.ts +52 -0
- package/dist/esm/config/docs-lint/schemas/audit.js +20 -0
- package/dist/esm/config/docs-lint/schemas/common.d.ts +68 -0
- package/dist/esm/config/docs-lint/schemas/common.js +73 -0
- package/dist/esm/config/docs-lint/schemas/cookbook.d.ts +48 -0
- package/dist/esm/config/docs-lint/schemas/cookbook.js +21 -0
- package/dist/esm/config/docs-lint/schemas/core.d.ts +189 -0
- package/dist/esm/config/docs-lint/schemas/core.js +54 -0
- package/dist/esm/config/docs-lint/schemas/decision.d.ts +18 -0
- package/dist/esm/config/docs-lint/schemas/decision.js +9 -0
- package/dist/esm/config/docs-lint/schemas/draft.d.ts +36 -0
- package/dist/esm/config/docs-lint/schemas/draft.js +35 -0
- package/dist/esm/config/docs-lint/schemas/evaluation.d.ts +43 -0
- package/dist/esm/config/docs-lint/schemas/evaluation.js +22 -0
- package/dist/esm/config/docs-lint/schemas/implementation-plan.d.ts +62 -0
- package/dist/esm/config/docs-lint/schemas/implementation-plan.js +34 -0
- package/dist/esm/config/docs-lint/schemas/index.d.ts +51 -0
- package/dist/esm/config/docs-lint/schemas/index.js +109 -0
- package/dist/esm/config/docs-lint/schemas/ongoing-initiative.d.ts +99 -0
- package/dist/esm/config/docs-lint/schemas/ongoing-initiative.js +31 -0
- package/dist/esm/config/docs-lint/schemas/parent-roadmap.d.ts +39 -0
- package/dist/esm/config/docs-lint/schemas/parent-roadmap.js +24 -0
- package/dist/esm/config/docs-lint/schemas/research.d.ts +26 -0
- package/dist/esm/config/docs-lint/schemas/research.js +20 -0
- package/dist/esm/config/docs-lint/schemas/rule.d.ts +48 -0
- package/dist/esm/config/docs-lint/schemas/rule.js +12 -0
- package/dist/esm/config/e2e-preset/index.d.ts +17 -0
- package/dist/esm/config/e2e-preset/index.js +29 -0
- package/dist/esm/config/e2e-preset/playwright.d.ts +17 -0
- package/dist/esm/config/e2e-preset/playwright.js +12 -0
- package/dist/esm/config/launch/contracts.d.ts +100 -0
- package/dist/esm/config/launch/contracts.js +13 -0
- package/dist/esm/config/launch/dev-contracts.d.ts +47 -0
- package/dist/esm/config/launch/dev-contracts.js +8 -0
- package/dist/esm/config/launch/dev-manifest.d.ts +42 -0
- package/dist/esm/config/launch/dev-manifest.js +196 -0
- package/dist/esm/config/launch/index.d.ts +14 -0
- package/dist/esm/config/launch/index.js +12 -0
- package/dist/esm/config/launch/launch-profile.d.ts +47 -0
- package/dist/esm/config/launch/launch-profile.js +39 -0
- package/dist/esm/config/launch/provision-stack.d.ts +64 -0
- package/dist/esm/config/launch/provision-stack.js +45 -0
- package/dist/esm/config/oxlint/code-safety.d.ts +19 -0
- package/dist/esm/config/oxlint/code-safety.js +90 -0
- package/dist/esm/config/oxlint/foundation-purity.d.ts +22 -0
- package/dist/esm/config/oxlint/foundation-purity.js +53 -0
- package/dist/esm/config/oxlint/graphql-conventions.d.ts +24 -0
- package/dist/esm/config/oxlint/graphql-conventions.js +204 -0
- package/dist/esm/config/oxlint/import-hygiene.d.ts +35 -0
- package/dist/esm/config/oxlint/import-hygiene.js +208 -0
- package/dist/esm/config/oxlint/index.d.ts +23 -0
- package/dist/esm/config/oxlint/index.js +29 -0
- package/dist/esm/config/oxlint/monorepo-paths.d.ts +19 -0
- package/dist/esm/config/oxlint/monorepo-paths.js +129 -0
- package/dist/esm/config/oxlint/oxlint-config.fixture.d.ts +3 -0
- package/dist/esm/config/oxlint/oxlint-config.fixture.js +5 -0
- package/dist/esm/config/oxlint/query-patterns.d.ts +25 -0
- package/dist/esm/config/oxlint/query-patterns.js +126 -0
- package/dist/esm/config/oxlint/testing-quality.d.ts +36 -0
- package/dist/esm/config/oxlint/testing-quality.js +187 -0
- package/dist/esm/config/oxlint/tier-boundaries.d.ts +36 -0
- package/dist/esm/config/oxlint/tier-boundaries.js +134 -0
- package/dist/esm/config/stryker/index.d.ts +44 -0
- package/dist/esm/config/stryker/index.js +79 -0
- package/dist/esm/config/test-preset/index.d.ts +2 -0
- package/dist/esm/config/test-preset/index.js +2 -0
- package/dist/esm/config/test-preset/vitest.d.ts +26 -0
- package/dist/esm/config/test-preset/vitest.js +31 -0
- package/dist/esm/config/tsconfig/base.json +37 -0
- package/dist/esm/config/tsconfig/cloudflare.json +10 -0
- package/dist/esm/config/tsconfig/library.json +16 -0
- package/dist/esm/config/tsconfig/react-library.json +9 -0
- package/dist/esm/config/tsconfig/react-router.json +10 -0
- package/dist/esm/config/vitest/bun-sqlite-shim.d.ts +14 -0
- package/dist/esm/config/vitest/bun-sqlite-shim.js +14 -0
- package/dist/esm/config/vitest/consumer-package.d.ts +4 -0
- package/dist/esm/config/vitest/consumer-package.js +63 -0
- package/dist/esm/config/vitest/flakiness-reporter.d.ts +7 -0
- package/dist/esm/config/vitest/flakiness-reporter.js +53 -0
- package/dist/esm/config/vitest/generated-runtime-aliases.d.ts +6 -0
- package/dist/esm/config/vitest/generated-runtime-aliases.js +3 -0
- package/dist/esm/config/vitest/node-setup.d.ts +6 -0
- package/dist/esm/config/vitest/node-setup.js +16 -0
- package/dist/esm/config/vitest/node.d.ts +43 -0
- package/dist/esm/config/vitest/node.js +180 -0
- package/dist/esm/config/vitest/pool-defaults.d.ts +11 -0
- package/dist/esm/config/vitest/pool-defaults.js +43 -0
- package/dist/esm/config/vitest/react-router.d.ts +22 -0
- package/dist/esm/config/vitest/react-router.js +83 -0
- package/dist/esm/config/vitest/react-setup.d.ts +13 -0
- package/dist/esm/config/vitest/react-setup.js +27 -0
- package/dist/esm/config/vitest/react.d.ts +22 -0
- package/dist/esm/config/vitest/react.js +85 -0
- package/dist/esm/config/vitest/version-guard.d.ts +7 -0
- package/dist/esm/config/vitest/version-guard.js +42 -0
- package/dist/esm/config/vitest/workers.d.ts +28 -0
- package/dist/esm/config/vitest/workers.js +44 -0
- package/dist/esm/config/workers-test/cloudflare-types.d.ts +30 -0
- package/dist/esm/config/workers-test/cloudflare-types.js +2 -0
- package/dist/esm/config/workers-test/durable-objects.d.ts +60 -0
- package/dist/esm/config/workers-test/durable-objects.js +73 -0
- package/dist/esm/config/workers-test/env.d.ts +58 -0
- package/dist/esm/config/workers-test/env.js +74 -0
- package/dist/esm/config/workers-test/execution-context.d.ts +21 -0
- package/dist/esm/config/workers-test/execution-context.js +22 -0
- package/dist/esm/config/workers-test/index.d.ts +16 -0
- package/dist/esm/config/workers-test/index.js +15 -0
- package/dist/esm/config/workers-test/requests.d.ts +44 -0
- package/dist/esm/config/workers-test/requests.js +71 -0
- package/dist/esm/config/workers-test/setup.d.ts +63 -0
- package/dist/esm/config/workers-test/setup.js +86 -0
- package/dist/esm/content/audit.d.ts +20 -0
- package/dist/esm/content/audit.js +164 -0
- package/dist/esm/content/dispatch.d.ts +32 -0
- package/dist/esm/content/dispatch.js +204 -0
- package/dist/esm/content/loader.d.ts +50 -0
- package/dist/esm/content/loader.js +166 -0
- package/dist/esm/content/schema.d.ts +123 -0
- package/dist/esm/content/schema.js +125 -0
- package/dist/esm/dev/dev-link-state.d.ts +22 -0
- package/dist/esm/dev/dev-link-state.js +51 -0
- package/dist/esm/dev/index.d.ts +2 -0
- package/dist/esm/dev/index.js +2 -0
- package/dist/esm/dev/load-manifest.d.ts +35 -0
- package/dist/esm/dev/load-manifest.js +182 -0
- package/dist/esm/dev/restore-dev-links/index.d.ts +30 -0
- package/dist/esm/dev/restore-dev-links/index.js +103 -0
- package/dist/esm/docs-linter/blueprint-plan.d.ts +80 -0
- package/dist/esm/docs-linter/blueprint-plan.js +427 -0
- package/dist/esm/docs-linter/index.d.ts +8 -0
- package/dist/esm/docs-linter/index.js +7 -0
- package/dist/esm/docs-linter/types.d.ts +16 -0
- package/dist/esm/docs-linter/types.js +8 -0
- package/dist/esm/e2e/command-builder.d.ts +3 -0
- package/dist/esm/e2e/command-builder.js +98 -0
- package/dist/esm/e2e/command-host-adapter.d.ts +30 -0
- package/dist/esm/e2e/command-host-adapter.js +70 -0
- package/dist/esm/e2e/config.d.ts +26 -0
- package/dist/esm/e2e/config.js +39 -0
- package/dist/esm/e2e/execution.d.ts +14 -0
- package/dist/esm/e2e/execution.js +148 -0
- package/dist/esm/e2e/host-adapter.d.ts +6 -0
- package/dist/esm/e2e/host-adapter.js +22 -0
- package/dist/esm/e2e/index.d.ts +9 -0
- package/dist/esm/e2e/index.js +8 -0
- package/dist/esm/e2e/load-host-adapter.d.ts +43 -0
- package/dist/esm/e2e/load-host-adapter.js +150 -0
- package/dist/esm/e2e/run-planner.d.ts +11 -0
- package/dist/esm/e2e/run-planner.js +186 -0
- package/dist/esm/e2e/suite-registry.d.ts +9 -0
- package/dist/esm/e2e/suite-registry.js +30 -0
- package/dist/esm/e2e/types.d.ts +81 -0
- package/dist/esm/e2e/types.js +2 -0
- package/dist/esm/format/errors.d.ts +2 -0
- package/dist/esm/format/errors.js +15 -0
- package/dist/esm/format/format.d.ts +2 -0
- package/dist/esm/format/format.js +16 -0
- package/dist/esm/format/index.d.ts +35 -0
- package/dist/esm/format/index.js +67 -0
- package/dist/esm/hooks/check-dev-link/index.d.ts +19 -0
- package/dist/esm/hooks/check-dev-link/index.js +87 -0
- package/dist/esm/hooks/doctor.d.ts +34 -0
- package/dist/esm/hooks/doctor.js +699 -0
- package/dist/esm/hooks/guard-switch/index.d.ts +3 -0
- package/dist/esm/hooks/guard-switch/index.js +18 -0
- package/dist/esm/hooks/guard-switch/state.d.ts +4 -0
- package/dist/esm/hooks/guard-switch/state.js +30 -0
- package/dist/esm/hooks/post-tool/lint-after-edit.d.ts +17 -0
- package/dist/esm/hooks/post-tool/lint-after-edit.js +57 -0
- package/dist/esm/hooks/pretool-guard/dev-routing.d.ts +21 -0
- package/dist/esm/hooks/pretool-guard/dev-routing.js +658 -0
- package/dist/esm/hooks/pretool-guard/index.d.ts +5 -0
- package/dist/esm/hooks/pretool-guard/index.js +11 -0
- package/dist/esm/hooks/pretool-guard/logger.d.ts +32 -0
- package/dist/esm/hooks/pretool-guard/logger.js +82 -0
- package/dist/esm/hooks/pretool-guard/runner.d.ts +16 -0
- package/dist/esm/hooks/pretool-guard/runner.js +149 -0
- package/dist/esm/hooks/pretool-guard/validators/blueprint.d.ts +3 -0
- package/dist/esm/hooks/pretool-guard/validators/blueprint.js +16 -0
- package/dist/esm/hooks/pretool-guard/validators/command-file.d.ts +3 -0
- package/dist/esm/hooks/pretool-guard/validators/command-file.js +36 -0
- package/dist/esm/hooks/pretool-guard/validators/complexity.d.ts +3 -0
- package/dist/esm/hooks/pretool-guard/validators/complexity.js +24 -0
- package/dist/esm/hooks/pretool-guard/validators/dangerous-commands.d.ts +4 -0
- package/dist/esm/hooks/pretool-guard/validators/dangerous-commands.js +60 -0
- package/dist/esm/hooks/pretool-guard/validators/docs-governance.d.ts +2 -0
- package/dist/esm/hooks/pretool-guard/validators/docs-governance.js +2 -0
- package/dist/esm/hooks/pretool-guard/validators/file-conventions.d.ts +3 -0
- package/dist/esm/hooks/pretool-guard/validators/file-conventions.js +67 -0
- package/dist/esm/hooks/pretool-guard/validators/forbidden-commands.d.ts +66 -0
- package/dist/esm/hooks/pretool-guard/validators/forbidden-commands.js +439 -0
- package/dist/esm/hooks/pretool-guard/validators/index.d.ts +14 -0
- package/dist/esm/hooks/pretool-guard/validators/index.js +26 -0
- package/dist/esm/hooks/pretool-guard/validators/mcp-redirect.d.ts +16 -0
- package/dist/esm/hooks/pretool-guard/validators/mcp-redirect.js +50 -0
- package/dist/esm/hooks/pretool-guard/validators/package-imports.d.ts +10 -0
- package/dist/esm/hooks/pretool-guard/validators/package-imports.js +36 -0
- package/dist/esm/hooks/pretool-guard/validators/package-imports.types.d.ts +8 -0
- package/dist/esm/hooks/pretool-guard/validators/package-imports.types.js +2 -0
- package/dist/esm/hooks/pretool-guard/validators/path-contract.d.ts +15 -0
- package/dist/esm/hooks/pretool-guard/validators/path-contract.js +105 -0
- package/dist/esm/hooks/pretool-guard/validators/plan-frontmatter.d.ts +13 -0
- package/dist/esm/hooks/pretool-guard/validators/plan-frontmatter.js +121 -0
- package/dist/esm/hooks/pretool-guard/validators/skip-result.d.ts +3 -0
- package/dist/esm/hooks/pretool-guard/validators/skip-result.js +4 -0
- package/dist/esm/hooks/pretool-guard/validators/test-quality.d.ts +22 -0
- package/dist/esm/hooks/pretool-guard/validators/test-quality.js +218 -0
- package/dist/esm/hooks/pretool-guard/validators/ux-quality.d.ts +3 -0
- package/dist/esm/hooks/pretool-guard/validators/ux-quality.js +80 -0
- package/dist/esm/hooks/sessionstart/index.d.ts +16 -0
- package/dist/esm/hooks/sessionstart/index.js +122 -0
- package/dist/esm/hooks/sessionstart/update-banner.d.ts +2 -0
- package/dist/esm/hooks/sessionstart/update-banner.js +66 -0
- package/dist/esm/hooks/shared/hook-bootstrap.d.ts +28 -0
- package/dist/esm/hooks/shared/hook-bootstrap.js +62 -0
- package/dist/esm/hooks/shared/mcp-sentinel.d.ts +10 -0
- package/dist/esm/hooks/shared/mcp-sentinel.js +106 -0
- package/dist/esm/hooks/shared/routing-block.d.ts +8 -0
- package/dist/esm/hooks/shared/routing-block.js +140 -0
- package/dist/esm/hooks/shared/types.d.ts +24 -0
- package/dist/esm/hooks/shared/types.js +48 -0
- package/dist/esm/hooks/shared/validators/blueprint.d.ts +17 -0
- package/dist/esm/hooks/shared/validators/blueprint.js +98 -0
- package/dist/esm/hooks/shared/validators/docs-governance.d.ts +3 -0
- package/dist/esm/hooks/shared/validators/docs-governance.js +30 -0
- package/dist/esm/hooks/shared/worktree-root.d.ts +2 -0
- package/dist/esm/hooks/shared/worktree-root.js +46 -0
- package/dist/esm/hooks/stop/qa-changed-files.d.ts +14 -0
- package/dist/esm/hooks/stop/qa-changed-files.js +96 -0
- package/dist/esm/hooks/test-quality-check.d.ts +5 -0
- package/dist/esm/hooks/test-quality-check.js +61 -0
- package/dist/esm/index.d.ts +13 -0
- package/dist/esm/index.js +11 -0
- package/dist/esm/lint/index.d.ts +53 -0
- package/dist/esm/lint/index.js +115 -0
- package/dist/esm/local.d.ts +19 -0
- package/dist/esm/local.js +14 -0
- package/dist/esm/mcp/_tail-hints.d.ts +31 -0
- package/dist/esm/mcp/_tail-hints.js +86 -0
- package/dist/esm/mcp/auto-discover.d.ts +65 -0
- package/dist/esm/mcp/auto-discover.js +108 -0
- package/dist/esm/mcp/blueprint-server.d.ts +137 -0
- package/dist/esm/mcp/blueprint-server.js +2131 -0
- package/dist/esm/mcp/blueprint-server.platform-first.test-harness.d.ts +31 -0
- package/dist/esm/mcp/blueprint-server.platform-first.test-harness.js +216 -0
- package/dist/esm/mcp/blueprint-server.test-harness.d.ts +49 -0
- package/dist/esm/mcp/blueprint-server.test-harness.js +195 -0
- package/dist/esm/mcp/cli.d.ts +10 -0
- package/dist/esm/mcp/cli.js +48 -0
- package/dist/esm/mcp/runners/test.d.ts +36 -0
- package/dist/esm/mcp/runners/test.js +330 -0
- package/dist/esm/mcp/server.d.ts +24 -0
- package/dist/esm/mcp/server.js +142 -0
- package/dist/esm/mcp/tools/_shared/project-root.d.ts +29 -0
- package/dist/esm/mcp/tools/_shared/project-root.js +61 -0
- package/dist/esm/mcp/tools/_shared/redact.d.ts +2 -0
- package/dist/esm/mcp/tools/_shared/redact.js +29 -0
- package/dist/esm/mcp/tools/_shared/result.d.ts +79 -0
- package/dist/esm/mcp/tools/_shared/result.js +85 -0
- package/dist/esm/mcp/tools/_shared/run-command.d.ts +37 -0
- package/dist/esm/mcp/tools/_shared/run-command.js +122 -0
- package/dist/esm/mcp/tools/_shared/test-budget-contract.d.ts +18 -0
- package/dist/esm/mcp/tools/_shared/test-budget-contract.js +24 -0
- package/dist/esm/mcp/tools/_shared/ui-detection.d.ts +2 -0
- package/dist/esm/mcp/tools/_shared/ui-detection.js +19 -0
- package/dist/esm/mcp/tools/audit.d.ts +45 -0
- package/dist/esm/mcp/tools/audit.js +345 -0
- package/dist/esm/mcp/tools/ci-act.d.ts +4 -0
- package/dist/esm/mcp/tools/ci-act.js +91 -0
- package/dist/esm/mcp/tools/e2e.d.ts +31 -0
- package/dist/esm/mcp/tools/e2e.js +116 -0
- package/dist/esm/mcp/tools/format.d.ts +27 -0
- package/dist/esm/mcp/tools/format.js +107 -0
- package/dist/esm/mcp/tools/lint.d.ts +26 -0
- package/dist/esm/mcp/tools/lint.js +229 -0
- package/dist/esm/mcp/tools/qa.d.ts +39 -0
- package/dist/esm/mcp/tools/qa.js +218 -0
- package/dist/esm/mcp/tools/test.d.ts +25 -0
- package/dist/esm/mcp/tools/test.js +112 -0
- package/dist/esm/mcp/tools/typecheck.d.ts +27 -0
- package/dist/esm/mcp/tools/typecheck.js +186 -0
- package/dist/esm/mcp/tools/worker-tail.d.ts +4 -0
- package/dist/esm/mcp/tools/worker-tail.js +121 -0
- package/dist/esm/output-transforms/generic.d.ts +3 -0
- package/dist/esm/output-transforms/generic.js +20 -0
- package/dist/esm/output-transforms/index.d.ts +34 -0
- package/dist/esm/output-transforms/index.js +41 -0
- package/dist/esm/output-transforms/metadata.d.ts +8 -0
- package/dist/esm/output-transforms/metadata.js +24 -0
- package/dist/esm/output-transforms/oxlint.d.ts +3 -0
- package/dist/esm/output-transforms/oxlint.js +85 -0
- package/dist/esm/output-transforms/passthrough.d.ts +3 -0
- package/dist/esm/output-transforms/passthrough.js +11 -0
- package/dist/esm/output-transforms/rulesync.d.ts +3 -0
- package/dist/esm/output-transforms/rulesync.js +80 -0
- package/dist/esm/output-transforms/should-compact.d.ts +7 -0
- package/dist/esm/output-transforms/should-compact.js +14 -0
- package/dist/esm/output-transforms/tsc.d.ts +3 -0
- package/dist/esm/output-transforms/tsc.js +45 -0
- package/dist/esm/output-transforms/vitest.d.ts +3 -0
- package/dist/esm/output-transforms/vitest.js +120 -0
- package/dist/esm/package.json +92 -0
- package/dist/esm/paths/state-root.d.ts +23 -0
- package/dist/esm/paths/state-root.js +121 -0
- package/dist/esm/quality-engine/command-builder.d.ts +141 -0
- package/dist/esm/quality-engine/command-builder.js +285 -0
- package/dist/esm/quality-engine/index.d.ts +15 -0
- package/dist/esm/quality-engine/index.js +16 -0
- package/dist/esm/quality-engine/log-paths.d.ts +44 -0
- package/dist/esm/quality-engine/log-paths.js +73 -0
- package/dist/esm/quality-engine/package-import-rules.d.ts +69 -0
- package/dist/esm/quality-engine/package-import-rules.js +491 -0
- package/dist/esm/quality-engine/target-resolver.d.ts +187 -0
- package/dist/esm/quality-engine/target-resolver.js +552 -0
- package/dist/esm/quality-engine/test-classification.d.ts +7 -0
- package/dist/esm/quality-engine/test-classification.js +85 -0
- package/dist/esm/quality-engine/workspace-config.d.ts +68 -0
- package/dist/esm/quality-engine/workspace-config.js +131 -0
- package/dist/esm/runners/claude-subagent/index.d.ts +11 -0
- package/dist/esm/runners/claude-subagent/index.js +114 -0
- package/dist/esm/runners/claude-subagent/types.d.ts +7 -0
- package/dist/esm/runners/claude-subagent/types.js +5 -0
- package/dist/esm/runners/codex-exec/index.d.ts +16 -0
- package/dist/esm/runners/codex-exec/index.js +105 -0
- package/dist/esm/runners/index.d.ts +3 -0
- package/dist/esm/runners/index.js +2 -0
- package/dist/esm/runners/local-worktree/index.d.ts +19 -0
- package/dist/esm/runners/local-worktree/index.js +85 -0
- package/dist/esm/runners/local-worktree/path.d.ts +10 -0
- package/dist/esm/runners/local-worktree/path.js +14 -0
- package/dist/esm/runners/select.d.ts +12 -0
- package/dist/esm/runners/select.js +38 -0
- package/dist/esm/runners/types.d.ts +70 -0
- package/dist/esm/runners/types.js +62 -0
- package/dist/esm/secret-gate/runner.d.ts +25 -0
- package/dist/esm/secret-gate/runner.js +106 -0
- package/dist/esm/session-memory/fetch-index.d.ts +13 -0
- package/dist/esm/session-memory/fetch-index.js +80 -0
- package/dist/esm/session-memory/repo-hash.d.ts +3 -0
- package/dist/esm/session-memory/repo-hash.js +20 -0
- package/dist/esm/session-memory/session.d.ts +10 -0
- package/dist/esm/session-memory/session.js +105 -0
- package/dist/esm/session-memory/store.d.ts +17 -0
- package/dist/esm/session-memory/store.js +168 -0
- package/dist/esm/session-memory/types.d.ts +58 -0
- package/dist/esm/session-memory/types.js +2 -0
- package/dist/esm/symlinker/consumers.d.ts +97 -0
- package/dist/esm/symlinker/consumers.js +87 -0
- package/dist/esm/symlinker/frontmatter.d.ts +15 -0
- package/dist/esm/symlinker/frontmatter.js +20 -0
- package/dist/esm/symlinker/index.d.ts +84 -0
- package/dist/esm/symlinker/index.js +496 -0
- package/dist/esm/symlinker/test-utils/assert-symlink-resolves.d.ts +12 -0
- package/dist/esm/symlinker/test-utils/assert-symlink-resolves.js +24 -0
- package/dist/esm/symlinker/toml.d.ts +11 -0
- package/dist/esm/symlinker/toml.js +16 -0
- package/dist/esm/symlinker/unified-sync.d.ts +64 -0
- package/dist/esm/symlinker/unified-sync.js +362 -0
- package/dist/esm/telemetry/_endpoint.d.ts +3 -0
- package/dist/esm/telemetry/_endpoint.js +4 -0
- package/dist/esm/telemetry/setup-tthw.d.ts +10 -0
- package/dist/esm/telemetry/setup-tthw.js +34 -0
- package/dist/esm/test/command-builder.d.ts +25 -0
- package/dist/esm/test/command-builder.js +98 -0
- package/dist/esm/test/index.d.ts +3 -0
- package/dist/esm/test/index.js +3 -0
- package/dist/esm/test/target-resolver.d.ts +13 -0
- package/dist/esm/test/target-resolver.js +53 -0
- package/dist/esm/typecheck/index.d.ts +52 -0
- package/dist/esm/typecheck/index.js +135 -0
- package/dist/esm/vite/bundle-budget.d.ts +37 -0
- package/dist/esm/vite/bundle-budget.js +151 -0
- package/dist/esm/vite/chunk-load-recovery.d.ts +18 -0
- package/dist/esm/vite/chunk-load-recovery.js +62 -0
- package/dist/esm/vite/index.d.ts +3 -0
- package/dist/esm/vite/index.js +3 -0
- package/dist/esm/vite/local.d.ts +16 -0
- package/dist/esm/vite/local.js +164 -0
- package/just/dev-kit.just +24 -0
- package/just/e2e-kit.just +13 -0
- package/just/test-kit.just +10 -0
- package/package.json +675 -0
- package/skills/better-auth-best-practices/SKILL.md +212 -0
- package/skills/deep-research/SKILL.md +240 -0
- package/skills/fix/SKILL.md +120 -0
- package/skills/frontend-design/LICENSE.txt +177 -0
- package/skills/frontend-design/SKILL.md +189 -0
- package/skills/hooks-doctor/SKILL.md +77 -0
- package/skills/logging-best-practices/SKILL.md +145 -0
- package/skills/lore-protocol/SKILL.md +93 -0
- package/skills/plan-refine/SKILL.md +645 -0
- package/skills/pll/SKILL.md +85 -0
- package/skills/react-doctor/SKILL.md +54 -0
- package/skills/systematic-debugging/SKILL.md +322 -0
- package/skills/tanstack-query/SKILL.md +175 -0
- package/skills/tech-debt/SKILL.md +79 -0
- package/skills/test-driven-development/SKILL.md +403 -0
- package/skills/testing-philosophy/SKILL.md +530 -0
- package/skills/vercel-react-best-practices/SKILL.md +212 -0
- package/skills/verify/SKILL.md +133 -0
- package/skills/web-design-guidelines/SKILL.md +53 -0
- package/tsconfig/base.json +37 -0
- package/tsconfig/cloudflare.json +10 -0
- package/tsconfig/library.json +16 -0
- package/tsconfig/react-library.json +9 -0
- package/tsconfig/react-router.json +10 -0
|
@@ -0,0 +1,464 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: rule
|
|
3
|
+
slug: agent-guide
|
|
4
|
+
title: Agent Rules
|
|
5
|
+
status: active
|
|
6
|
+
scope: repo
|
|
7
|
+
applies_to: [agents]
|
|
8
|
+
related: []
|
|
9
|
+
created: '2026-05-07'
|
|
10
|
+
last_reviewed: '2026-05-07'
|
|
11
|
+
paths:
|
|
12
|
+
- 'schema/**/*.yaml'
|
|
13
|
+
- '**/*.ts'
|
|
14
|
+
- '**/*.tsx'
|
|
15
|
+
- 'legacy task-runner file'
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
# Agent Rules
|
|
19
|
+
|
|
20
|
+
> Generic agent rules for a monorepo using webpresso. Cross-platform rules live
|
|
21
|
+
> in `AGENTS.md` (auto-loaded).
|
|
22
|
+
|
|
23
|
+
## Entity / Schema System (YAML SSOT)
|
|
24
|
+
|
|
25
|
+
If your project uses a YAML-declared entity / schema system:
|
|
26
|
+
|
|
27
|
+
- **Source of truth**: `schema/*.yaml` (or `entities/*.yaml`)
|
|
28
|
+
- **Entity name = filename** (e.g., `agent_tasks.yaml` → `entity: agent_tasks`)
|
|
29
|
+
- **DB table preserved** via an explicit `database.table` field
|
|
30
|
+
- **Leading `_` = external** (skipped in compilation)
|
|
31
|
+
- **Never edit compiled metadata** directly
|
|
32
|
+
|
|
33
|
+
## Before Modifying Entities
|
|
34
|
+
|
|
35
|
+
- Validate with your repo's schema-check recipe (runs static + runtime checks)
|
|
36
|
+
- Dry-run compile before apply
|
|
37
|
+
|
|
38
|
+
## Field Types (Typical)
|
|
39
|
+
|
|
40
|
+
`text`, `text[]`, `integer`, `bigint`, `boolean`, `timestamp`, `date`, `jsonb`,
|
|
41
|
+
`numeric`, `uuid`
|
|
42
|
+
|
|
43
|
+
## Reference Format
|
|
44
|
+
|
|
45
|
+
```yaml
|
|
46
|
+
references:
|
|
47
|
+
table: projects
|
|
48
|
+
column: id
|
|
49
|
+
onDelete: cascade
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
## Naming Convention
|
|
53
|
+
|
|
54
|
+
Entity / table prefixes carve out domains. Typical examples:
|
|
55
|
+
|
|
56
|
+
| Prefix | Domain |
|
|
57
|
+
| ---------------- | ----------------------------------------------- |
|
|
58
|
+
| `agent_*` | AI Agent personas, scheduling, suggestions |
|
|
59
|
+
| `ai_*` | AI Agent sessions and usage tracking |
|
|
60
|
+
| `billing_*` | Billing, invoices, and ledger |
|
|
61
|
+
| `blueprint_*` | Blueprint definitions and execution |
|
|
62
|
+
| `deployment_*` | Deployment management |
|
|
63
|
+
| `meta_*` | Platform metadata (entities, fields, roles) |
|
|
64
|
+
| `notification_*` | Notification system and preferences |
|
|
65
|
+
| `project_*` | Project-level resources and configuration |
|
|
66
|
+
| `task_*` | Task tracking, labels, and analysis |
|
|
67
|
+
| `user_*` | User profiles, activity, and preferences |
|
|
68
|
+
| `workflow_*` | Workflow definitions, execution, and scheduling |
|
|
69
|
+
|
|
70
|
+
Adapt the prefix list to your domain; the rule that matters is that the
|
|
71
|
+
prefix → domain mapping is stable and checked in.
|
|
72
|
+
|
|
73
|
+
## Import Aliases (`#`)
|
|
74
|
+
|
|
75
|
+
**Universal `#` import aliases are configured across the monorepo.**
|
|
76
|
+
|
|
77
|
+
### Rules
|
|
78
|
+
|
|
79
|
+
- **Use `#` for all cross-directory imports** within a package.
|
|
80
|
+
- **`#` maps to `src/`** for packages, `app/` for pages apps.
|
|
81
|
+
- **Keep `./` for same-directory imports** (e.g., `from './types'`).
|
|
82
|
+
- **Never use `../` for imports** within `src/` — always use `#`.
|
|
83
|
+
- **Never use `../src/` in imports** — this is always wrong; use `#` instead.
|
|
84
|
+
- **`vi.mock()` paths must use `#`** — never use relative `../` paths in
|
|
85
|
+
`vi.mock()` calls. Relative mock paths break when vitest projects use
|
|
86
|
+
`extends: false` or when test files are at different directory depths.
|
|
87
|
+
Always match the source code's import style.
|
|
88
|
+
|
|
89
|
+
### Why `#` Instead of `~/`?
|
|
90
|
+
|
|
91
|
+
**The Problem**: TypeScript `paths` (`~/`) resolve relative to the tsconfig
|
|
92
|
+
doing the typechecking. In monorepos with source exports, when package A
|
|
93
|
+
typechecks package B's source, `~/` resolves against package A's tsconfig,
|
|
94
|
+
causing `Cannot find module '~/...'` errors.
|
|
95
|
+
|
|
96
|
+
**The Solution**: Node.js **subpath imports** (`#`) are package-scoped. They
|
|
97
|
+
resolve via the **declaring package's** `package.json` `imports` field,
|
|
98
|
+
regardless of which package is typechecking.
|
|
99
|
+
|
|
100
|
+
### Configuration Required
|
|
101
|
+
|
|
102
|
+
**Every package** using `#` imports MUST have BOTH:
|
|
103
|
+
|
|
104
|
+
1. **`package.json`** `imports` field (for Node.js runtime + cross-package
|
|
105
|
+
typechecking):
|
|
106
|
+
|
|
107
|
+
```json
|
|
108
|
+
{
|
|
109
|
+
"imports": {
|
|
110
|
+
"#*": "./src/*.ts"
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
2. **`tsconfig.json`** `paths` field (for TypeScript within the package):
|
|
116
|
+
|
|
117
|
+
```json
|
|
118
|
+
{
|
|
119
|
+
"compilerOptions": {
|
|
120
|
+
"paths": {
|
|
121
|
+
"#*": ["./src/*"]
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
**Both are required.** The `package.json` field enables cross-package
|
|
128
|
+
resolution; the `tsconfig.json` paths enable within-package typechecking.
|
|
129
|
+
|
|
130
|
+
### Examples
|
|
131
|
+
|
|
132
|
+
```typescript
|
|
133
|
+
// ✅ Cross-directory imports with #
|
|
134
|
+
import { foo } from '#lib/utils'
|
|
135
|
+
import { bar } from '#services/auth'
|
|
136
|
+
import { baz } from '#database/schema'
|
|
137
|
+
|
|
138
|
+
// ✅ Same-directory imports with ./
|
|
139
|
+
import { helpers } from './helpers'
|
|
140
|
+
import type { User } from './types'
|
|
141
|
+
|
|
142
|
+
// ❌ Wrong - relative parent imports
|
|
143
|
+
import { bar } from '../../services/auth'
|
|
144
|
+
|
|
145
|
+
// ✅ vi.mock with # alias (matches source imports)
|
|
146
|
+
vi.mock('#services/auth', () => ({ /* ... */ }))
|
|
147
|
+
vi.mock('#database', () => ({ /* ... */ }))
|
|
148
|
+
|
|
149
|
+
// ❌ Wrong - relative vi.mock paths (may not match resolved module ID)
|
|
150
|
+
vi.mock('../../services/auth', () => ({ /* ... */ }))
|
|
151
|
+
vi.mock('../src/database', () => ({ /* ... */ }))
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
### Infrastructure
|
|
155
|
+
|
|
156
|
+
- `vite-tsconfig-paths` plugin configured in vitest and vite for runtime `#`
|
|
157
|
+
resolution.
|
|
158
|
+
- All packages use `paths` with relative values in `tsconfig.json` (no
|
|
159
|
+
`baseUrl` — removed for TS7 / tsgo compatibility).
|
|
160
|
+
- All packages export source directly (`exports` pointing to `./src/*.ts`),
|
|
161
|
+
making `#` the only viable solution for cross-package typechecking.
|
|
162
|
+
|
|
163
|
+
## Isolated Validation for Structural Changes
|
|
164
|
+
|
|
165
|
+
**Before modifying infrastructure, bundler config, or cross-package resolution
|
|
166
|
+
in production packages**, validate the change in the smallest affected
|
|
167
|
+
package first.
|
|
168
|
+
|
|
169
|
+
- **Use a narrow scope**: prefer the smallest package that exercises the
|
|
170
|
+
target behavior.
|
|
171
|
+
- **Use it to**: test build-tool upgrades, plugin compatibility, module
|
|
172
|
+
resolution changes, new export conditions, and `#` alias behavior in
|
|
173
|
+
isolation.
|
|
174
|
+
- **Why**: production packages have large module graphs and long startup
|
|
175
|
+
times, so isolating the change first keeps debugging cost bounded.
|
|
176
|
+
|
|
177
|
+
## Repo Restrictions
|
|
178
|
+
|
|
179
|
+
See [repo-restrictions.md](repo-restrictions.md) for the complete enforcement
|
|
180
|
+
guide — how to add new restrictions via linter plugins, hooks, and agent
|
|
181
|
+
instructions.
|
|
182
|
+
|
|
183
|
+
## Deterministic External Boundaries
|
|
184
|
+
|
|
185
|
+
When code talks to an external boundary — subprocesses, sockets, workers, HTTP
|
|
186
|
+
services, WebSocket handshakes, file-system locks, or polling-based readiness
|
|
187
|
+
checks — the behavior must be deterministic.
|
|
188
|
+
|
|
189
|
+
### Rules
|
|
190
|
+
|
|
191
|
+
- **Every external async boundary must have an explicit deadline or bounded
|
|
192
|
+
polling policy.**
|
|
193
|
+
- **Timeout ownership belongs to the caller or config layer**, not hidden
|
|
194
|
+
transport internals.
|
|
195
|
+
- **Prefer shared helpers** such as `withDeadline` and `pollUntil` from your
|
|
196
|
+
shared utilities package over ad hoc `Promise.race(...)`,
|
|
197
|
+
`Date.now() + timeoutMs`, or local timeout wrappers.
|
|
198
|
+
- **Use fake timers for timeout unit tests** and attach rejection handlers
|
|
199
|
+
before advancing timers.
|
|
200
|
+
- **Use real timers only for runtime integration tests** where the goal is to
|
|
201
|
+
prove actual subprocess, socket, or network behavior.
|
|
202
|
+
|
|
203
|
+
### Anti-patterns
|
|
204
|
+
|
|
205
|
+
- Inline `Promise.race([work, timeoutPromise])` helpers duplicated per package
|
|
206
|
+
- Unbounded `while (...)` polling loops driven by `Date.now()` arithmetic
|
|
207
|
+
- Environment-variable-only timeout policy for library code
|
|
208
|
+
- Timeout tests that rely on wall-clock sleeps when fake timers would prove
|
|
209
|
+
the same behavior faster and more reliably
|
|
210
|
+
|
|
211
|
+
### Hook and discovery-specific requirements
|
|
212
|
+
|
|
213
|
+
- **Generated hook runtimes must be path-stable.** If setup or scaffolding
|
|
214
|
+
writes executable hook commands, prefer absolute binary paths or a
|
|
215
|
+
repo-controlled absolute anchor. Do not depend on the host PATH inside Codex,
|
|
216
|
+
Claude, CI, or other sanitized hook environments.
|
|
217
|
+
- **Repair generated runtime state at the source.** If a generated hook surface
|
|
218
|
+
is broken or duplicated, fix the owning scaffolder/setup path and add a
|
|
219
|
+
regression test. Do not treat hand-editing generated `.codex/`, `.claude/`,
|
|
220
|
+
or user-home runtime files as the durable solution.
|
|
221
|
+
- **Discovery paths must degrade, not hang.** MCP roots fetches, git probes,
|
|
222
|
+
and project/worktree discovery must have explicit budgets and return partial
|
|
223
|
+
structured results with warnings when a dependency is slow or unavailable.
|
|
224
|
+
- **Contract requirement:** discovery tool lanes (`wp_blueprint_projects`,
|
|
225
|
+
`wp_blueprint_list`, `wp_blueprint_get` aggregate scope) must return partial
|
|
226
|
+
results and warning signals instead of blocking on any single slow external
|
|
227
|
+
dependency. No workflow is allowed to “fix” this by raising global MCP/tool
|
|
228
|
+
deadlines alone.
|
|
229
|
+
|
|
230
|
+
## Network Resilience
|
|
231
|
+
|
|
232
|
+
Retry logic belongs in the **HTTP / data-access layer**, not in React hooks
|
|
233
|
+
or components.
|
|
234
|
+
|
|
235
|
+
- Put retries in the function that makes the network call, not in
|
|
236
|
+
`useCallback` or `useEffect`.
|
|
237
|
+
- Stacking retries at multiple layers creates cascading delay budgets and
|
|
238
|
+
uncoordinated retry storms.
|
|
239
|
+
- Use `sleep` and `isRetryableError` (or equivalent) from your shared
|
|
240
|
+
utilities — never roll a raw
|
|
241
|
+
`new Promise(resolve => setTimeout(resolve, ms))`.
|
|
242
|
+
- Retry only idempotent, retryable error codes (ECONNREFUSED, ETIMEDOUT,
|
|
243
|
+
ECONNRESET). Non-retryable errors (4xx, auth) must break immediately.
|
|
244
|
+
|
|
245
|
+
## Environment Variables & Secret Injection
|
|
246
|
+
|
|
247
|
+
Runtime environment variables and secrets are **never** stored in `.dev.vars`,
|
|
248
|
+
`.env` files, or any file on disk. They are resolved at runtime by the
|
|
249
|
+
repo's secret manager wrapper (e.g. Doppler, 1Password, AWS Secrets Manager).
|
|
250
|
+
|
|
251
|
+
### Rules
|
|
252
|
+
|
|
253
|
+
- **Never suggest creating `.dev.vars`** — it is not part of this workflow.
|
|
254
|
+
- **Never suggest creating `.env` files** for secrets.
|
|
255
|
+
- **Always use the repo's secret-bearing command wrapper** when a command
|
|
256
|
+
needs repo-managed environment injection.
|
|
257
|
+
- **Prefer a dedicated recipe over an escape-hatch wrapper** when the workflow
|
|
258
|
+
is repo-owned and repeatable.
|
|
259
|
+
- **Do not ask the user to manually export** `DATABASE_URL` or other secret
|
|
260
|
+
env vars for normal repo commands.
|
|
261
|
+
- If required env vars are missing at runtime, the fix is: ensure the command
|
|
262
|
+
runs through the secret-bearing wrapper, **not** to create config files.
|
|
263
|
+
- Secret manager setup is manager-driven and should go through the repo
|
|
264
|
+
workflow first. Treat the active secret manager as one implementation under
|
|
265
|
+
an abstraction, not a hardcoded repo-wide assumption.
|
|
266
|
+
- Do not tell the user to paste secrets onto disk or create local
|
|
267
|
+
`.env` / `.dev.vars` fallbacks.
|
|
268
|
+
- **Never cache credentials to disk for performance.** Source-of-truth tools
|
|
269
|
+
(`gh auth token`, `op read`, `doppler secrets get`, `aws sts ...`) are fast
|
|
270
|
+
enough; if a per-shell fork is too slow, the fix is upstream (lazy resolve,
|
|
271
|
+
daemon), not a plaintext cache file. User-level paths (`~/.cache/`,
|
|
272
|
+
`~/.config/<tool>/`, `/tmp/`) are still disk — same rule applies.
|
|
273
|
+
|
|
274
|
+
## File & Path Rules
|
|
275
|
+
|
|
276
|
+
### Scripts Location
|
|
277
|
+
|
|
278
|
+
- **Never** create a root-level `/scripts/` folder if the repo has a
|
|
279
|
+
dedicated command/runtime surface (e.g. `src/ci/`, `src/audit/`, or a
|
|
280
|
+
repo-owned scripts package).
|
|
281
|
+
- All scripts go in the dedicated scripts package.
|
|
282
|
+
- Run with the repo's script-runner recipe.
|
|
283
|
+
|
|
284
|
+
### Executable Path Anchors
|
|
285
|
+
|
|
286
|
+
- **Never** use `resolve(import.meta.dirname, '../..')`, `join(__dirname, './x')`,
|
|
287
|
+
`new URL('../x', import.meta.url)`, or any other hardcoded relative
|
|
288
|
+
filesystem path in executable code or config.
|
|
289
|
+
- **Always** use a repo-provided helper or runtime-provided absolute base path
|
|
290
|
+
as the anchor.
|
|
291
|
+
- When available, enforce this through the shared `wp audit absolute-path-policy`
|
|
292
|
+
surface rather than a repo-local duplicate scanner.
|
|
293
|
+
- Packages live at varying depths — hardcoded relative paths break when files
|
|
294
|
+
move.
|
|
295
|
+
|
|
296
|
+
## Commit messages
|
|
297
|
+
|
|
298
|
+
Prefer subjects that name area and intent (see `AGENTS.md`); avoid opaque
|
|
299
|
+
one-word subjects for platform-wide changes.
|
|
300
|
+
|
|
301
|
+
## E2E Coverage Contract
|
|
302
|
+
|
|
303
|
+
When changing or adding a user-facing feature, agents must classify browser
|
|
304
|
+
coverage explicitly instead of treating all Playwright tests as
|
|
305
|
+
interchangeable.
|
|
306
|
+
|
|
307
|
+
### Suites
|
|
308
|
+
|
|
309
|
+
- a real critical-path journey suite (or equivalent): persisted user
|
|
310
|
+
workflows.
|
|
311
|
+
- a smoke/canary suite: route health, accessibility canaries, quarantined
|
|
312
|
+
flows, and non-persistent checks.
|
|
313
|
+
- Sibling feature suites (e.g. `admin/`, `notifications/`): domain-specific
|
|
314
|
+
browser coverage that still must follow the same realism rules.
|
|
315
|
+
|
|
316
|
+
### When a new feature needs a journey test
|
|
317
|
+
|
|
318
|
+
Add or extend a journey-grade E2E test when the change affects any of these:
|
|
319
|
+
|
|
320
|
+
- creation, update, delete, or role/permission changes
|
|
321
|
+
- multi-step wizards or workflows
|
|
322
|
+
- persistence after reload or re-entry
|
|
323
|
+
- list-to-detail-to-save flows
|
|
324
|
+
- auth, session, consent, analytics, or redirect behavior
|
|
325
|
+
- user-visible error recovery on a critical path
|
|
326
|
+
|
|
327
|
+
### When smoke coverage is enough
|
|
328
|
+
|
|
329
|
+
Smoke-only coverage is acceptable for:
|
|
330
|
+
|
|
331
|
+
- route availability
|
|
332
|
+
- access control canaries
|
|
333
|
+
- accessibility checks without mutation
|
|
334
|
+
- temporary quarantine coverage for product paths that are not yet viable as
|
|
335
|
+
real journeys
|
|
336
|
+
|
|
337
|
+
Smoke coverage must not be counted as equivalent to journey coverage.
|
|
338
|
+
|
|
339
|
+
### Journey rules
|
|
340
|
+
|
|
341
|
+
- use real browser login and Playwright `storageState`; do not use cookie or
|
|
342
|
+
session injection
|
|
343
|
+
- reach pages through visible UI navigation when that is part of the real path
|
|
344
|
+
- mutate state through the UI or real browser-origin requests only
|
|
345
|
+
- verify persistence after reload, revisit, or downstream navigation
|
|
346
|
+
- fail on visible backend errors instead of treating them as alternate success
|
|
347
|
+
- do not use in-test `skip` for required seed data
|
|
348
|
+
- do not claim an E2E feature is complete until focused checks and the full
|
|
349
|
+
`journeys` plus `smoke` suites are green through the repo's task runner
|
|
350
|
+
|
|
351
|
+
### Forbidden shortcuts for browser tests
|
|
352
|
+
|
|
353
|
+
- synthetic analytics or DB inserts for the behavior under test
|
|
354
|
+
- direct-detail URL bypass when a visible list or CTA is the real path
|
|
355
|
+
- API or database cleanup standing in for the action being tested
|
|
356
|
+
- assertions that only prove a modal opened, a request fired, or a placeholder
|
|
357
|
+
rendered
|
|
358
|
+
|
|
359
|
+
### Manual verification is not a deliverable
|
|
360
|
+
|
|
361
|
+
A blueprint task whose acceptance criteria says "manually verify in the
|
|
362
|
+
browser", "open the page and confirm", or equivalent is **incomplete**. Human
|
|
363
|
+
click-through verification degrades immediately: it is not repeatable, not
|
|
364
|
+
regression-safe, and cannot be run in CI.
|
|
365
|
+
|
|
366
|
+
**Rule**: if the only way to verify a task is to open a browser and look at
|
|
367
|
+
the page, write a Playwright E2E test instead. The test becomes the
|
|
368
|
+
acceptance evidence.
|
|
369
|
+
|
|
370
|
+
When you encounter this during blueprint execution:
|
|
371
|
+
|
|
372
|
+
1. Identify the page, route, or user interaction the manual step describes.
|
|
373
|
+
2. Write a `journeys/` or `smoke/` spec that automates that check.
|
|
374
|
+
3. Replace the manual acceptance item with a reference to the new spec file.
|
|
375
|
+
4. Mark the task done only after the spec is committed.
|
|
376
|
+
|
|
377
|
+
This also applies retroactively: if a blueprint task already marked `done`
|
|
378
|
+
has only manual evidence, raise it as a gap and add the missing spec.
|
|
379
|
+
|
|
380
|
+
### Coverage audit checklist
|
|
381
|
+
|
|
382
|
+
Before adding or reviewing browser coverage for a feature, verify these in
|
|
383
|
+
order:
|
|
384
|
+
|
|
385
|
+
- identify the real browser entrypoint from visible shell navigation, header
|
|
386
|
+
CTAs, or in-product links
|
|
387
|
+
- confirm whether the surface uses real backend state or only local/mock data
|
|
388
|
+
- classify the surface as `journey`, `smoke`, or `not-yet-journeyable`
|
|
389
|
+
- if the route is backed by mock data or local-only state, do not fake a
|
|
390
|
+
persisted journey; prefer integration tests and document the product gap
|
|
391
|
+
- if the route is read-only and already covered by adjacent journeys, prefer
|
|
392
|
+
smoke or route-health coverage over shallow duplicated journeys
|
|
393
|
+
|
|
394
|
+
### Verification for shared E2E changes
|
|
395
|
+
|
|
396
|
+
If you touch shared E2E auth, setup, runtime-state wiring, or other
|
|
397
|
+
cross-suite infra, do not stop at a focused spec.
|
|
398
|
+
|
|
399
|
+
- run the focused spec you changed
|
|
400
|
+
- run the full `journeys` suite
|
|
401
|
+
- run the full `smoke` suite
|
|
402
|
+
- run the relevant typecheck or targeted test command for touched app
|
|
403
|
+
packages
|
|
404
|
+
|
|
405
|
+
## Test Organization (Colocated Pattern)
|
|
406
|
+
|
|
407
|
+
**Policy**: All test files use the **colocated pattern** — tests live next to
|
|
408
|
+
the source files they test.
|
|
409
|
+
|
|
410
|
+
### Rules
|
|
411
|
+
|
|
412
|
+
- **Test files next to source**: `src/auth.ts` + `src/auth.test.ts`
|
|
413
|
+
- **No `__tests__/` directories** — prohibited by policy
|
|
414
|
+
- **Fixtures allowed**: `src/__fixtures__/` for test data
|
|
415
|
+
- **Helpers allowed**: `src/test-helpers/` for test utilities
|
|
416
|
+
|
|
417
|
+
### Naming Conventions
|
|
418
|
+
|
|
419
|
+
| Test Type | Pattern | Example |
|
|
420
|
+
| ----------------- | ----------------------- | ------------------------ |
|
|
421
|
+
| Unit tests | `*.test.ts` | `auth.test.ts` |
|
|
422
|
+
| Integration tests | `*.integration.test.ts` | `db.integration.test.ts` |
|
|
423
|
+
| E2E tests | `*.e2e.ts` | `graphql-auth.e2e.ts` |
|
|
424
|
+
| Playwright specs | `*.spec.ts` | `login.spec.ts` |
|
|
425
|
+
|
|
426
|
+
### Enforcement
|
|
427
|
+
|
|
428
|
+
- Pre-commit hook prevents new `__tests__/` directories.
|
|
429
|
+
- Policy documented alongside this file.
|
|
430
|
+
- Vitest automatically discovers colocated tests via `**/*.test.{ts,tsx}`.
|
|
431
|
+
|
|
432
|
+
## Stryker mutation dry-run exclusions
|
|
433
|
+
|
|
434
|
+
Integration tests that spawn heavyweight subprocesses (cold-start bun + TypeScript
|
|
435
|
+
transpilation, long-lived MCP server processes, etc.) must be excluded from
|
|
436
|
+
`vitest.stryker.config.ts`. They are covered by the regular `test` job; running
|
|
437
|
+
them inside Stryker's forks pool pushes them past the 10 s unit-test timeout.
|
|
438
|
+
|
|
439
|
+
**When to add an exclusion:**
|
|
440
|
+
|
|
441
|
+
- The test calls `spawnSync('bun', [someSourceFile.ts, ...])` — bun cold-start
|
|
442
|
+
is ~5–11 s depending on the module graph.
|
|
443
|
+
- The test spawns a long-lived child process (e.g. MCP server over JSON-RPC).
|
|
444
|
+
- The test file is `*.integration.test.ts` or `*.e2e.test.ts` **and** it
|
|
445
|
+
spawns any external process that loads a significant module tree.
|
|
446
|
+
|
|
447
|
+
**How to add one** (in `vitest.stryker.config.ts`):
|
|
448
|
+
|
|
449
|
+
```ts
|
|
450
|
+
exclude: [
|
|
451
|
+
...,
|
|
452
|
+
// <one-line reason>
|
|
453
|
+
'src/path/to/heavy.integration.test.ts',
|
|
454
|
+
]
|
|
455
|
+
```
|
|
456
|
+
|
|
457
|
+
**Current exclusions:** `init.e2e.test.ts`, `runner.test.ts`,
|
|
458
|
+
`rtk/integration.test.ts`, `mcp/server.integration.test.ts`.
|
|
459
|
+
|
|
460
|
+
After adding an exclusion, verify the Stryker suite still passes:
|
|
461
|
+
|
|
462
|
+
```bash
|
|
463
|
+
vp exec vitest run --config vitest.stryker.config.ts
|
|
464
|
+
```
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: rule
|
|
3
|
+
slug: blueprint-scoping
|
|
4
|
+
title: Blueprint scoping — product-wedge anchor required
|
|
5
|
+
status: active
|
|
6
|
+
scope: repo
|
|
7
|
+
applies_to: [agents]
|
|
8
|
+
related: []
|
|
9
|
+
created: '2026-05-07'
|
|
10
|
+
last_reviewed: '2026-05-07'
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Blueprint scoping — product-wedge anchor required
|
|
14
|
+
|
|
15
|
+
New blueprints that extend or replace enabling-layer infrastructure (runtime,
|
|
16
|
+
schema engine, agent fabric, session storage, policy engine, workflow runner)
|
|
17
|
+
MUST name a product-wedge in the current roadmap stage that directly consumes
|
|
18
|
+
the new capability. Blueprints without that anchor stay in `draft/` or move to
|
|
19
|
+
`archived/`.
|
|
20
|
+
|
|
21
|
+
## Why
|
|
22
|
+
|
|
23
|
+
Infra-only blueprints that lack a product-wedge anchor tend to hit the same
|
|
24
|
+
failure mode — substantial infra scope, no direct consumer pull, and a large
|
|
25
|
+
share of the actual value lands via other paths. The findings are worth
|
|
26
|
+
preserving; the blueprints themselves over-scoped.
|
|
27
|
+
|
|
28
|
+
The fix is simple: before investing in infra, name the product surface that
|
|
29
|
+
will use it in the same cycle.
|
|
30
|
+
|
|
31
|
+
## How to apply
|
|
32
|
+
|
|
33
|
+
During `wp blueprint new` / refinement, the blueprint `_overview.md` must
|
|
34
|
+
include a **Product wedge anchor** subsection at the top of the summary. The
|
|
35
|
+
anchor must name:
|
|
36
|
+
|
|
37
|
+
1. The concrete roadmap outcome this work unblocks (cite the vision or
|
|
38
|
+
roadmap document and the specific outcome).
|
|
39
|
+
2. The user-facing surface (route, UI component, CLI verb) that consumes the
|
|
40
|
+
new capability **in the same blueprint or an already-in-progress one**.
|
|
41
|
+
3. What the product user can do after this lands that they cannot do today.
|
|
42
|
+
|
|
43
|
+
### Template
|
|
44
|
+
|
|
45
|
+
```markdown
|
|
46
|
+
## Product wedge anchor
|
|
47
|
+
|
|
48
|
+
- **Stage outcome:** <cite roadmap section + specific outcome>
|
|
49
|
+
- **Consuming surface:** <route / component / verb + path>
|
|
50
|
+
- **New user-visible capability:** <one sentence>
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
If you cannot fill all three, the blueprint is premature. Convert it to a
|
|
54
|
+
fact-check document under `blueprints/draft/` with a note that it blocks on a
|
|
55
|
+
product-wedge anchor, or mine its findings into a narrower blueprint that has
|
|
56
|
+
one.
|
|
57
|
+
|
|
58
|
+
## What counts as a product wedge
|
|
59
|
+
|
|
60
|
+
A wedge is something a roadmap-stage user can see or touch:
|
|
61
|
+
|
|
62
|
+
- An app they launched
|
|
63
|
+
- A live deployment flow they triggered
|
|
64
|
+
- A user they acquired via an acquisition loop
|
|
65
|
+
- A KPI signal they read off a dashboard
|
|
66
|
+
- A review decision they approved in the UI
|
|
67
|
+
|
|
68
|
+
Pure-infra wedges ("cleaner runtime", "simpler fabric") do not qualify on
|
|
69
|
+
their own. They qualify only when paired with one of the above.
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: rule
|
|
3
|
+
slug: changeset-release
|
|
4
|
+
title: Changesets Release Workflow
|
|
5
|
+
status: active
|
|
6
|
+
scope: repo
|
|
7
|
+
applies_to: [agents]
|
|
8
|
+
related: []
|
|
9
|
+
created: '2026-05-07'
|
|
10
|
+
last_reviewed: '2026-05-28'
|
|
11
|
+
paths:
|
|
12
|
+
- '.changeset/**'
|
|
13
|
+
- '.github/workflows/*.yml'
|
|
14
|
+
- 'package.json'
|
|
15
|
+
- 'CHANGELOG.md'
|
|
16
|
+
- 'src/**'
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
# Changesets Release Workflow
|
|
20
|
+
|
|
21
|
+
This repository uses **Changesets** for version management and publishing.
|
|
22
|
+
The active package identity here is `@webpresso/agent-kit` and the publish
|
|
23
|
+
target is the public npm registry (`https://registry.npmjs.org/`).
|
|
24
|
+
|
|
25
|
+
## Never do these
|
|
26
|
+
|
|
27
|
+
- **Never** push `v*` tags manually for release purposes.
|
|
28
|
+
- **Never** bump `package.json#version` by hand.
|
|
29
|
+
- **Never** run `git tag v<X.Y.Z>` to trigger a publish.
|
|
30
|
+
- **Never** run `vp run changeset publish` (or `changeset version`) without
|
|
31
|
+
committing the results first. `changeset version` modifies `package.json`,
|
|
32
|
+
`CHANGELOG.md`, and `.changeset/` — all three must be committed before
|
|
33
|
+
publishing. Unpublished version bumps in the working tree produce a valid
|
|
34
|
+
tarball but leave git history incoherent.
|
|
35
|
+
- **Never** publish from a dirty working tree. Run `git status` first; commit
|
|
36
|
+
or stash everything before `changeset publish`.
|
|
37
|
+
- **Never** treat `webpresso` (unscoped) as this repo's canonical release
|
|
38
|
+
package. This repo ships `@webpresso/agent-kit`.
|
|
39
|
+
|
|
40
|
+
## Commit sequence — mandatory every release
|
|
41
|
+
|
|
42
|
+
```
|
|
43
|
+
1. Implement changes + commit code
|
|
44
|
+
2. vp run changeset # creates .changeset/<slug>.md
|
|
45
|
+
3. git add .changeset/<slug>.md && git commit -m "chore: add changeset"
|
|
46
|
+
4. Merge to main # CI runs version bump + public npm publish automatically
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
Steps 2-3 happen on the feature branch alongside the code change. There is
|
|
50
|
+
no manual `vp run changeset version` or `vp run changeset publish` step in the
|
|
51
|
+
normal path — CI owns those for this repository.
|
|
52
|
+
|
|
53
|
+
## How releases work (CI-driven, direct-publish on push to `main`)
|
|
54
|
+
|
|
55
|
+
**This repo uses a direct-publish flow — there is no \"Version Packages\" PR.**
|
|
56
|
+
|
|
57
|
+
When a feature branch with a `.changeset/<slug>.md` file merges to `main`,
|
|
58
|
+
`release.yml` runs the following sequence automatically:
|
|
59
|
+
|
|
60
|
+
1. `vp run version` — runs `changeset version &&
|
|
61
|
+
vp run sync-marketplace-version`. This bumps `package.json`, updates
|
|
62
|
+
`CHANGELOG.md`, removes the consumed `.changeset/<slug>.md` files, and
|
|
63
|
+
syncs `.claude-plugin/marketplace.json` to match the new version.
|
|
64
|
+
2. `git push` — commits the version bump directly to `main`.
|
|
65
|
+
3. `pnpm publish --no-git-checks` — publishes `@webpresso/agent-kit` to the
|
|
66
|
+
public npm registry using the workflow-owned publish path.
|
|
67
|
+
4. CI creates a `release/v<version>` branch with compiled `dist/` committed
|
|
68
|
+
for Claude Code marketplace consumers.
|
|
69
|
+
|
|
70
|
+
The workflow supports a manual dry-run trigger:
|
|
71
|
+
```bash
|
|
72
|
+
gh workflow run release.yml -f dry-run=true
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
## First-time setup — new extracted repos
|
|
76
|
+
|
|
77
|
+
For a freshly bootstrapped repo that has never been published:
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
# 1. Ensure @changesets/cli is in devDependencies
|
|
81
|
+
grep -q '@changesets/cli' package.json || vp install -D @changesets/cli
|
|
82
|
+
|
|
83
|
+
# 2. Initialise changeset
|
|
84
|
+
vp run changeset init # creates .changeset/config.json + README
|
|
85
|
+
|
|
86
|
+
# 3. Enter prerelease mode (for alpha/beta dist-tags)
|
|
87
|
+
vp run changeset pre enter alpha # creates .changeset/pre.json
|
|
88
|
+
|
|
89
|
+
# 4. Create the initial changeset and commit it
|
|
90
|
+
cat > .changeset/initial-release.md << 'EOF'
|
|
91
|
+
---
|
|
92
|
+
"@webpresso/agent-kit": minor
|
|
93
|
+
---
|
|
94
|
+
|
|
95
|
+
Initial release for @webpresso/agent-kit.
|
|
96
|
+
EOF
|
|
97
|
+
git add .changeset/ && git commit -m "chore: add initial changeset"
|
|
98
|
+
|
|
99
|
+
# 5. Merge to main — CI runs version bump + publish automatically
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
**Do NOT run `vp run changeset version` or `vp run changeset publish` manually**
|
|
103
|
+
for established repos — CI owns both steps. Manual execution bypasses the
|
|
104
|
+
`sync-marketplace-version` script and the release branch flow.
|
|
105
|
+
|
|
106
|
+
## Release workflow (self-contained Changesets)
|
|
107
|
+
|
|
108
|
+
The active pattern is a self-contained `release.yml` in this repository that
|
|
109
|
+
handles versioning and publish end-to-end. Do not reintroduce legacy
|
|
110
|
+
reusable-release workflow templates here.
|
|
111
|
+
|
|
112
|
+
## Required repo files
|
|
113
|
+
|
|
114
|
+
This repository must have:
|
|
115
|
+
```
|
|
116
|
+
.npmrc # public npm registry defaults only; no GitHub Packages remap
|
|
117
|
+
.changeset/config.json # baseBranch: "main"
|
|
118
|
+
@changesets/cli # in devDependencies
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
Without `@changesets/cli` in `devDependencies`, `vp run changeset` is
|
|
122
|
+
unavailable in CI.
|
|
123
|
+
|
|
124
|
+
## Changeset config
|
|
125
|
+
|
|
126
|
+
`.changeset/config.json` in each repo:
|
|
127
|
+
- `baseBranch: "main"`.
|
|
128
|
+
- `updateInternalDependencies: "patch"`.
|
|
129
|
+
|
|
130
|
+
For the first scoped public npm release, the effective publish path must set
|
|
131
|
+
public visibility (for example via `package.json#publishConfig.access` or an
|
|
132
|
+
explicit workflow flag). Do not leave the release contract depending on a
|
|
133
|
+
restricted/private default.
|
|
134
|
+
|
|
135
|
+
## Marketplace specifics
|
|
136
|
+
|
|
137
|
+
After publishing, CI creates a `release/v<version>` branch with `dist/`
|
|
138
|
+
committed. Claude Code marketplace consumers **must** pin to
|
|
139
|
+
`release/v<version>` — never to `main`, which has no `dist/`.
|
|
140
|
+
|
|
141
|
+
```jsonc
|
|
142
|
+
// marketplace.json consumer reference
|
|
143
|
+
{ "source": { "repo": "OWNER/REPO", "ref": "release/v0.2.0" } }
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
### marketplace.json version sync (automated)
|
|
147
|
+
|
|
148
|
+
`.claude-plugin/marketplace.json` must always mirror `package.json#version`.
|
|
149
|
+
This is automated: the `version` npm script runs `changeset version &&
|
|
150
|
+
vp run sync-marketplace-version`, so the version bump that CI commits to
|
|
151
|
+
`main` already includes the updated manifest.
|
|
152
|
+
|
|
153
|
+
**Never manually edit `marketplace.json#version`** — let the release script
|
|
154
|
+
do it. If you see a drift (e.g. after a hotfix that bypasses the script), run:
|
|
155
|
+
|
|
156
|
+
```bash
|
|
157
|
+
bun scripts/sync-marketplace-version.ts
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
The drift gate in `src/build/validate-marketplace.test.ts` catches any
|
|
161
|
+
desync during the regular test run.
|