@aperant/framework 0.6.2 → 0.6.3
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/CHANGELOG.md +595 -0
- package/README.md +6 -11
- package/package.json +7 -3
- package/CONTRIBUTING.md +0 -128
- package/dist/__tests__/agent-runtime.test.d.ts +0 -7
- package/dist/__tests__/agent-runtime.test.d.ts.map +0 -1
- package/dist/__tests__/agent-runtime.test.js +0 -28
- package/dist/__tests__/agent-runtime.test.js.map +0 -1
- package/dist/__tests__/aperant-mapper.test.d.ts +0 -2
- package/dist/__tests__/aperant-mapper.test.d.ts.map +0 -1
- package/dist/__tests__/aperant-mapper.test.js +0 -124
- package/dist/__tests__/aperant-mapper.test.js.map +0 -1
- package/dist/__tests__/apt-author-skill-skill-structure.test.d.ts +0 -12
- package/dist/__tests__/apt-author-skill-skill-structure.test.d.ts.map +0 -1
- package/dist/__tests__/apt-author-skill-skill-structure.test.js +0 -55
- package/dist/__tests__/apt-author-skill-skill-structure.test.js.map +0 -1
- package/dist/__tests__/apt-close-task-skill-structure.test.d.ts +0 -8
- package/dist/__tests__/apt-close-task-skill-structure.test.d.ts.map +0 -1
- package/dist/__tests__/apt-close-task-skill-structure.test.js +0 -47
- package/dist/__tests__/apt-close-task-skill-structure.test.js.map +0 -1
- package/dist/__tests__/apt-design-skill-structure.test.d.ts +0 -17
- package/dist/__tests__/apt-design-skill-structure.test.d.ts.map +0 -1
- package/dist/__tests__/apt-design-skill-structure.test.js +0 -120
- package/dist/__tests__/apt-design-skill-structure.test.js.map +0 -1
- package/dist/__tests__/apt-mockup-skill-structure.test.d.ts +0 -13
- package/dist/__tests__/apt-mockup-skill-structure.test.d.ts.map +0 -1
- package/dist/__tests__/apt-mockup-skill-structure.test.js +0 -86
- package/dist/__tests__/apt-mockup-skill-structure.test.js.map +0 -1
- package/dist/__tests__/apt-review-pass6-structure.test.d.ts +0 -6
- package/dist/__tests__/apt-review-pass6-structure.test.d.ts.map +0 -1
- package/dist/__tests__/apt-review-pass6-structure.test.js +0 -44
- package/dist/__tests__/apt-review-pass6-structure.test.js.map +0 -1
- package/dist/__tests__/apt-setup-batch7-structure.test.d.ts +0 -6
- package/dist/__tests__/apt-setup-batch7-structure.test.d.ts.map +0 -1
- package/dist/__tests__/apt-setup-batch7-structure.test.js +0 -38
- package/dist/__tests__/apt-setup-batch7-structure.test.js.map +0 -1
- package/dist/__tests__/args.test.d.ts +0 -2
- package/dist/__tests__/args.test.d.ts.map +0 -1
- package/dist/__tests__/args.test.js +0 -31
- package/dist/__tests__/args.test.js.map +0 -1
- package/dist/__tests__/artifacts-classification.test.d.ts +0 -18
- package/dist/__tests__/artifacts-classification.test.d.ts.map +0 -1
- package/dist/__tests__/artifacts-classification.test.js +0 -266
- package/dist/__tests__/artifacts-classification.test.js.map +0 -1
- package/dist/__tests__/artifacts-self-stage.test.d.ts +0 -15
- package/dist/__tests__/artifacts-self-stage.test.d.ts.map +0 -1
- package/dist/__tests__/artifacts-self-stage.test.js +0 -159
- package/dist/__tests__/artifacts-self-stage.test.js.map +0 -1
- package/dist/__tests__/atomic-text.test.d.ts +0 -14
- package/dist/__tests__/atomic-text.test.d.ts.map +0 -1
- package/dist/__tests__/atomic-text.test.js +0 -76
- package/dist/__tests__/atomic-text.test.js.map +0 -1
- package/dist/__tests__/atomic-write.test.d.ts +0 -14
- package/dist/__tests__/atomic-write.test.d.ts.map +0 -1
- package/dist/__tests__/atomic-write.test.js +0 -134
- package/dist/__tests__/atomic-write.test.js.map +0 -1
- package/dist/__tests__/audit-pending-artifacts.test.d.ts +0 -16
- package/dist/__tests__/audit-pending-artifacts.test.d.ts.map +0 -1
- package/dist/__tests__/audit-pending-artifacts.test.js +0 -153
- package/dist/__tests__/audit-pending-artifacts.test.js.map +0 -1
- package/dist/__tests__/audit-privacy.test.d.ts +0 -18
- package/dist/__tests__/audit-privacy.test.d.ts.map +0 -1
- package/dist/__tests__/audit-privacy.test.js +0 -152
- package/dist/__tests__/audit-privacy.test.js.map +0 -1
- package/dist/__tests__/bin-path-resolve.test.d.ts +0 -9
- package/dist/__tests__/bin-path-resolve.test.d.ts.map +0 -1
- package/dist/__tests__/bin-path-resolve.test.js +0 -76
- package/dist/__tests__/bin-path-resolve.test.js.map +0 -1
- package/dist/__tests__/bootstrap-cli.test.d.ts +0 -11
- package/dist/__tests__/bootstrap-cli.test.d.ts.map +0 -1
- package/dist/__tests__/bootstrap-cli.test.js +0 -181
- package/dist/__tests__/bootstrap-cli.test.js.map +0 -1
- package/dist/__tests__/bootstrap-detect-mode.test.d.ts +0 -9
- package/dist/__tests__/bootstrap-detect-mode.test.d.ts.map +0 -1
- package/dist/__tests__/bootstrap-detect-mode.test.js +0 -113
- package/dist/__tests__/bootstrap-detect-mode.test.js.map +0 -1
- package/dist/__tests__/bootstrap-product-context-sidecar.test.d.ts +0 -11
- package/dist/__tests__/bootstrap-product-context-sidecar.test.d.ts.map +0 -1
- package/dist/__tests__/bootstrap-product-context-sidecar.test.js +0 -145
- package/dist/__tests__/bootstrap-product-context-sidecar.test.js.map +0 -1
- package/dist/__tests__/bootstrap-recon.test.d.ts +0 -11
- package/dist/__tests__/bootstrap-recon.test.d.ts.map +0 -1
- package/dist/__tests__/bootstrap-recon.test.js +0 -136
- package/dist/__tests__/bootstrap-recon.test.js.map +0 -1
- package/dist/__tests__/build-progress-sync.test.d.ts +0 -11
- package/dist/__tests__/build-progress-sync.test.d.ts.map +0 -1
- package/dist/__tests__/build-progress-sync.test.js +0 -275
- package/dist/__tests__/build-progress-sync.test.js.map +0 -1
- package/dist/__tests__/c28-cutover.test.d.ts +0 -9
- package/dist/__tests__/c28-cutover.test.d.ts.map +0 -1
- package/dist/__tests__/c28-cutover.test.js +0 -98
- package/dist/__tests__/c28-cutover.test.js.map +0 -1
- package/dist/__tests__/check-command.test.d.ts +0 -8
- package/dist/__tests__/check-command.test.d.ts.map +0 -1
- package/dist/__tests__/check-command.test.js +0 -116
- package/dist/__tests__/check-command.test.js.map +0 -1
- package/dist/__tests__/check-version-drift.test.d.ts +0 -13
- package/dist/__tests__/check-version-drift.test.d.ts.map +0 -1
- package/dist/__tests__/check-version-drift.test.js +0 -82
- package/dist/__tests__/check-version-drift.test.js.map +0 -1
- package/dist/__tests__/check-version-header.test.d.ts +0 -13
- package/dist/__tests__/check-version-header.test.d.ts.map +0 -1
- package/dist/__tests__/check-version-header.test.js +0 -112
- package/dist/__tests__/check-version-header.test.js.map +0 -1
- package/dist/__tests__/cli-contract-argv.test.d.ts +0 -10
- package/dist/__tests__/cli-contract-argv.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-argv.test.js +0 -25
- package/dist/__tests__/cli-contract-argv.test.js.map +0 -1
- package/dist/__tests__/cli-contract-author-skill.test.d.ts +0 -15
- package/dist/__tests__/cli-contract-author-skill.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-author-skill.test.js +0 -86
- package/dist/__tests__/cli-contract-author-skill.test.js.map +0 -1
- package/dist/__tests__/cli-contract-bootstrap.test.d.ts +0 -12
- package/dist/__tests__/cli-contract-bootstrap.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-bootstrap.test.js +0 -68
- package/dist/__tests__/cli-contract-bootstrap.test.js.map +0 -1
- package/dist/__tests__/cli-contract-coverage-check.test.d.ts +0 -10
- package/dist/__tests__/cli-contract-coverage-check.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-coverage-check.test.js +0 -153
- package/dist/__tests__/cli-contract-coverage-check.test.js.map +0 -1
- package/dist/__tests__/cli-contract-create-docs.test.d.ts +0 -11
- package/dist/__tests__/cli-contract-create-docs.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-create-docs.test.js +0 -75
- package/dist/__tests__/cli-contract-create-docs.test.js.map +0 -1
- package/dist/__tests__/cli-contract-design-lint.test.d.ts +0 -11
- package/dist/__tests__/cli-contract-design-lint.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-design-lint.test.js +0 -48
- package/dist/__tests__/cli-contract-design-lint.test.js.map +0 -1
- package/dist/__tests__/cli-contract-design-scan.test.d.ts +0 -11
- package/dist/__tests__/cli-contract-design-scan.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-design-scan.test.js +0 -41
- package/dist/__tests__/cli-contract-design-scan.test.js.map +0 -1
- package/dist/__tests__/cli-contract-design-synthesize.test.d.ts +0 -23
- package/dist/__tests__/cli-contract-design-synthesize.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-design-synthesize.test.js +0 -234
- package/dist/__tests__/cli-contract-design-synthesize.test.js.map +0 -1
- package/dist/__tests__/cli-contract-design-template.test.d.ts +0 -23
- package/dist/__tests__/cli-contract-design-template.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-design-template.test.js +0 -204
- package/dist/__tests__/cli-contract-design-template.test.js.map +0 -1
- package/dist/__tests__/cli-contract-design-validate.test.d.ts +0 -12
- package/dist/__tests__/cli-contract-design-validate.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-design-validate.test.js +0 -98
- package/dist/__tests__/cli-contract-design-validate.test.js.map +0 -1
- package/dist/__tests__/cli-contract-docs-audit.test.d.ts +0 -11
- package/dist/__tests__/cli-contract-docs-audit.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-docs-audit.test.js +0 -30
- package/dist/__tests__/cli-contract-docs-audit.test.js.map +0 -1
- package/dist/__tests__/cli-contract-docs-coherence.test.d.ts +0 -19
- package/dist/__tests__/cli-contract-docs-coherence.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-docs-coherence.test.js +0 -174
- package/dist/__tests__/cli-contract-docs-coherence.test.js.map +0 -1
- package/dist/__tests__/cli-contract-drift.test.d.ts +0 -16
- package/dist/__tests__/cli-contract-drift.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-drift.test.js +0 -41
- package/dist/__tests__/cli-contract-drift.test.js.map +0 -1
- package/dist/__tests__/cli-contract-effects.test.d.ts +0 -6
- package/dist/__tests__/cli-contract-effects.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-effects.test.js +0 -92
- package/dist/__tests__/cli-contract-effects.test.js.map +0 -1
- package/dist/__tests__/cli-contract-exit-codes.test.d.ts +0 -21
- package/dist/__tests__/cli-contract-exit-codes.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-exit-codes.test.js +0 -73
- package/dist/__tests__/cli-contract-exit-codes.test.js.map +0 -1
- package/dist/__tests__/cli-contract-features-audit.test.d.ts +0 -6
- package/dist/__tests__/cli-contract-features-audit.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-features-audit.test.js +0 -77
- package/dist/__tests__/cli-contract-features-audit.test.js.map +0 -1
- package/dist/__tests__/cli-contract-gate.test.d.ts +0 -18
- package/dist/__tests__/cli-contract-gate.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-gate.test.js +0 -36
- package/dist/__tests__/cli-contract-gate.test.js.map +0 -1
- package/dist/__tests__/cli-contract-help.test.d.ts +0 -10
- package/dist/__tests__/cli-contract-help.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-help.test.js +0 -30
- package/dist/__tests__/cli-contract-help.test.js.map +0 -1
- package/dist/__tests__/cli-contract-host.test.d.ts +0 -19
- package/dist/__tests__/cli-contract-host.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-host.test.js +0 -36
- package/dist/__tests__/cli-contract-host.test.js.map +0 -1
- package/dist/__tests__/cli-contract-personas.test.d.ts +0 -14
- package/dist/__tests__/cli-contract-personas.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-personas.test.js +0 -87
- package/dist/__tests__/cli-contract-personas.test.js.map +0 -1
- package/dist/__tests__/cli-contract-pr-review-audit-fixer.test.d.ts +0 -12
- package/dist/__tests__/cli-contract-pr-review-audit-fixer.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-pr-review-audit-fixer.test.js +0 -424
- package/dist/__tests__/cli-contract-pr-review-audit-fixer.test.js.map +0 -1
- package/dist/__tests__/cli-contract-pr-review.test.d.ts +0 -18
- package/dist/__tests__/cli-contract-pr-review.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-pr-review.test.js +0 -69
- package/dist/__tests__/cli-contract-pr-review.test.js.map +0 -1
- package/dist/__tests__/cli-contract-product-context.test.d.ts +0 -11
- package/dist/__tests__/cli-contract-product-context.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-product-context.test.js +0 -64
- package/dist/__tests__/cli-contract-product-context.test.js.map +0 -1
- package/dist/__tests__/cli-contract-profile.test.d.ts +0 -12
- package/dist/__tests__/cli-contract-profile.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-profile.test.js +0 -51
- package/dist/__tests__/cli-contract-profile.test.js.map +0 -1
- package/dist/__tests__/cli-contract-roadmap.test.d.ts +0 -6
- package/dist/__tests__/cli-contract-roadmap.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-roadmap.test.js +0 -89
- package/dist/__tests__/cli-contract-roadmap.test.js.map +0 -1
- package/dist/__tests__/cli-contract-route.test.d.ts +0 -11
- package/dist/__tests__/cli-contract-route.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-route.test.js +0 -41
- package/dist/__tests__/cli-contract-route.test.js.map +0 -1
- package/dist/__tests__/cli-contract-seed.test.d.ts +0 -10
- package/dist/__tests__/cli-contract-seed.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-seed.test.js +0 -50
- package/dist/__tests__/cli-contract-seed.test.js.map +0 -1
- package/dist/__tests__/cli-contract-standards.test.d.ts +0 -12
- package/dist/__tests__/cli-contract-standards.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-standards.test.js +0 -95
- package/dist/__tests__/cli-contract-standards.test.js.map +0 -1
- package/dist/__tests__/cli-contract-statusline.test.d.ts +0 -13
- package/dist/__tests__/cli-contract-statusline.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-statusline.test.js +0 -61
- package/dist/__tests__/cli-contract-statusline.test.js.map +0 -1
- package/dist/__tests__/cli-contract-task.test.d.ts +0 -19
- package/dist/__tests__/cli-contract-task.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-task.test.js +0 -38
- package/dist/__tests__/cli-contract-task.test.js.map +0 -1
- package/dist/__tests__/cli-contract-taste-infer.test.d.ts +0 -13
- package/dist/__tests__/cli-contract-taste-infer.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-taste-infer.test.js +0 -85
- package/dist/__tests__/cli-contract-taste-infer.test.js.map +0 -1
- package/dist/__tests__/cli-contract-team.test.d.ts +0 -6
- package/dist/__tests__/cli-contract-team.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-team.test.js +0 -61
- package/dist/__tests__/cli-contract-team.test.js.map +0 -1
- package/dist/__tests__/cli-contract-terminal.test.d.ts +0 -15
- package/dist/__tests__/cli-contract-terminal.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-terminal.test.js +0 -127
- package/dist/__tests__/cli-contract-terminal.test.js.map +0 -1
- package/dist/__tests__/cli-contract-tokens.test.d.ts +0 -6
- package/dist/__tests__/cli-contract-tokens.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-tokens.test.js +0 -92
- package/dist/__tests__/cli-contract-tokens.test.js.map +0 -1
- package/dist/__tests__/cli-contract-uninstall.test.d.ts +0 -8
- package/dist/__tests__/cli-contract-uninstall.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-uninstall.test.js +0 -58
- package/dist/__tests__/cli-contract-uninstall.test.js.map +0 -1
- package/dist/__tests__/cli-contract-validate-evidence.test.d.ts +0 -11
- package/dist/__tests__/cli-contract-validate-evidence.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-validate-evidence.test.js +0 -75
- package/dist/__tests__/cli-contract-validate-evidence.test.js.map +0 -1
- package/dist/__tests__/cli-contract-variant-gallery.test.d.ts +0 -12
- package/dist/__tests__/cli-contract-variant-gallery.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-variant-gallery.test.js +0 -60
- package/dist/__tests__/cli-contract-variant-gallery.test.js.map +0 -1
- package/dist/__tests__/cli-contract-variant-pick.test.d.ts +0 -12
- package/dist/__tests__/cli-contract-variant-pick.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-variant-pick.test.js +0 -57
- package/dist/__tests__/cli-contract-variant-pick.test.js.map +0 -1
- package/dist/__tests__/cli-contract-variant-pool.test.d.ts +0 -10
- package/dist/__tests__/cli-contract-variant-pool.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-variant-pool.test.js +0 -33
- package/dist/__tests__/cli-contract-variant-pool.test.js.map +0 -1
- package/dist/__tests__/cli-contract-version.test.d.ts +0 -9
- package/dist/__tests__/cli-contract-version.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-version.test.js +0 -29
- package/dist/__tests__/cli-contract-version.test.js.map +0 -1
- package/dist/__tests__/cli-contract-wfrun.test.d.ts +0 -15
- package/dist/__tests__/cli-contract-wfrun.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-wfrun.test.js +0 -54
- package/dist/__tests__/cli-contract-wfrun.test.js.map +0 -1
- package/dist/__tests__/cli-contract-worktree-install.test.d.ts +0 -7
- package/dist/__tests__/cli-contract-worktree-install.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-worktree-install.test.js +0 -40
- package/dist/__tests__/cli-contract-worktree-install.test.js.map +0 -1
- package/dist/__tests__/cli-contract-worktree.test.d.ts +0 -6
- package/dist/__tests__/cli-contract-worktree.test.d.ts.map +0 -1
- package/dist/__tests__/cli-contract-worktree.test.js +0 -59
- package/dist/__tests__/cli-contract-worktree.test.js.map +0 -1
- package/dist/__tests__/cli-fs-lock.test.d.ts +0 -5
- package/dist/__tests__/cli-fs-lock.test.d.ts.map +0 -1
- package/dist/__tests__/cli-fs-lock.test.js +0 -51
- package/dist/__tests__/cli-fs-lock.test.js.map +0 -1
- package/dist/__tests__/cli-graph-depends-on.test.d.ts +0 -6
- package/dist/__tests__/cli-graph-depends-on.test.d.ts.map +0 -1
- package/dist/__tests__/cli-graph-depends-on.test.js +0 -119
- package/dist/__tests__/cli-graph-depends-on.test.js.map +0 -1
- package/dist/__tests__/cli-graph-task-ref.test.d.ts +0 -5
- package/dist/__tests__/cli-graph-task-ref.test.d.ts.map +0 -1
- package/dist/__tests__/cli-graph-task-ref.test.js +0 -65
- package/dist/__tests__/cli-graph-task-ref.test.js.map +0 -1
- package/dist/__tests__/cli-risk-globs.test.d.ts +0 -5
- package/dist/__tests__/cli-risk-globs.test.d.ts.map +0 -1
- package/dist/__tests__/cli-risk-globs.test.js +0 -96
- package/dist/__tests__/cli-risk-globs.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/audit.test.d.ts +0 -5
- package/dist/__tests__/cmd-pure/audit.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/audit.test.js +0 -47
- package/dist/__tests__/cmd-pure/audit.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/author-skill.test.d.ts +0 -5
- package/dist/__tests__/cmd-pure/author-skill.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/author-skill.test.js +0 -38
- package/dist/__tests__/cmd-pure/author-skill.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/bootstrap.test.d.ts +0 -5
- package/dist/__tests__/cmd-pure/bootstrap.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/bootstrap.test.js +0 -66
- package/dist/__tests__/cmd-pure/bootstrap.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/check-version.test.d.ts +0 -6
- package/dist/__tests__/cmd-pure/check-version.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/check-version.test.js +0 -29
- package/dist/__tests__/cmd-pure/check-version.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/check.test.d.ts +0 -5
- package/dist/__tests__/cmd-pure/check.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/check.test.js +0 -25
- package/dist/__tests__/cmd-pure/check.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/config.test.d.ts +0 -5
- package/dist/__tests__/cmd-pure/config.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/config.test.js +0 -37
- package/dist/__tests__/cmd-pure/config.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/consistency.test.d.ts +0 -9
- package/dist/__tests__/cmd-pure/consistency.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/consistency.test.js +0 -100
- package/dist/__tests__/cmd-pure/consistency.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/constitution.test.d.ts +0 -6
- package/dist/__tests__/cmd-pure/constitution.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/constitution.test.js +0 -94
- package/dist/__tests__/cmd-pure/constitution.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/coverage-check.test.d.ts +0 -6
- package/dist/__tests__/cmd-pure/coverage-check.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/coverage-check.test.js +0 -49
- package/dist/__tests__/cmd-pure/coverage-check.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/create-docs.test.d.ts +0 -6
- package/dist/__tests__/cmd-pure/create-docs.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/create-docs.test.js +0 -92
- package/dist/__tests__/cmd-pure/create-docs.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/design-lint.test.d.ts +0 -6
- package/dist/__tests__/cmd-pure/design-lint.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/design-lint.test.js +0 -45
- package/dist/__tests__/cmd-pure/design-lint.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/design-scan.test.d.ts +0 -6
- package/dist/__tests__/cmd-pure/design-scan.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/design-scan.test.js +0 -32
- package/dist/__tests__/cmd-pure/design-scan.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/design-template.test.d.ts +0 -6
- package/dist/__tests__/cmd-pure/design-template.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/design-template.test.js +0 -56
- package/dist/__tests__/cmd-pure/design-template.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/design-validate.test.d.ts +0 -6
- package/dist/__tests__/cmd-pure/design-validate.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/design-validate.test.js +0 -44
- package/dist/__tests__/cmd-pure/design-validate.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/detect-project.test.d.ts +0 -6
- package/dist/__tests__/cmd-pure/detect-project.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/detect-project.test.js +0 -38
- package/dist/__tests__/cmd-pure/detect-project.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/docs-audit.test.d.ts +0 -10
- package/dist/__tests__/cmd-pure/docs-audit.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/docs-audit.test.js +0 -63
- package/dist/__tests__/cmd-pure/docs-audit.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/effects.test.d.ts +0 -5
- package/dist/__tests__/cmd-pure/effects.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/effects.test.js +0 -44
- package/dist/__tests__/cmd-pure/effects.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/event.test.d.ts +0 -5
- package/dist/__tests__/cmd-pure/event.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/event.test.js +0 -44
- package/dist/__tests__/cmd-pure/event.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/features-audit.test.d.ts +0 -5
- package/dist/__tests__/cmd-pure/features-audit.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/features-audit.test.js +0 -37
- package/dist/__tests__/cmd-pure/features-audit.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/gate.test.d.ts +0 -9
- package/dist/__tests__/cmd-pure/gate.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/gate.test.js +0 -106
- package/dist/__tests__/cmd-pure/gate.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/health-check.test.d.ts +0 -10
- package/dist/__tests__/cmd-pure/health-check.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/health-check.test.js +0 -44
- package/dist/__tests__/cmd-pure/health-check.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/host-detect.test.d.ts +0 -10
- package/dist/__tests__/cmd-pure/host-detect.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/host-detect.test.js +0 -106
- package/dist/__tests__/cmd-pure/host-detect.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/init.test.d.ts +0 -9
- package/dist/__tests__/cmd-pure/init.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/init.test.js +0 -34
- package/dist/__tests__/cmd-pure/init.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/lock.test.d.ts +0 -5
- package/dist/__tests__/cmd-pure/lock.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/lock.test.js +0 -46
- package/dist/__tests__/cmd-pure/lock.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/personas.test.d.ts +0 -5
- package/dist/__tests__/cmd-pure/personas.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/personas.test.js +0 -60
- package/dist/__tests__/cmd-pure/personas.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/plan-approval.test.d.ts +0 -5
- package/dist/__tests__/cmd-pure/plan-approval.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/plan-approval.test.js +0 -82
- package/dist/__tests__/cmd-pure/plan-approval.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/pr-review-audit-fixer.test.d.ts +0 -6
- package/dist/__tests__/cmd-pure/pr-review-audit-fixer.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/pr-review-audit-fixer.test.js +0 -49
- package/dist/__tests__/cmd-pure/pr-review-audit-fixer.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/pr-review.test.d.ts +0 -11
- package/dist/__tests__/cmd-pure/pr-review.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/pr-review.test.js +0 -156
- package/dist/__tests__/cmd-pure/pr-review.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/product-context.test.d.ts +0 -5
- package/dist/__tests__/cmd-pure/product-context.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/product-context.test.js +0 -33
- package/dist/__tests__/cmd-pure/product-context.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/profile.test.d.ts +0 -6
- package/dist/__tests__/cmd-pure/profile.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/profile.test.js +0 -83
- package/dist/__tests__/cmd-pure/profile.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/risk-check.test.d.ts +0 -5
- package/dist/__tests__/cmd-pure/risk-check.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/risk-check.test.js +0 -38
- package/dist/__tests__/cmd-pure/risk-check.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/roadmap.test.d.ts +0 -9
- package/dist/__tests__/cmd-pure/roadmap.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/roadmap.test.js +0 -82
- package/dist/__tests__/cmd-pure/roadmap.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/route.test.d.ts +0 -10
- package/dist/__tests__/cmd-pure/route.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/route.test.js +0 -106
- package/dist/__tests__/cmd-pure/route.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/seed.test.d.ts +0 -5
- package/dist/__tests__/cmd-pure/seed.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/seed.test.js +0 -59
- package/dist/__tests__/cmd-pure/seed.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/standards.test.d.ts +0 -5
- package/dist/__tests__/cmd-pure/standards.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/standards.test.js +0 -45
- package/dist/__tests__/cmd-pure/standards.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/state-artifacts.test.d.ts +0 -5
- package/dist/__tests__/cmd-pure/state-artifacts.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/state-artifacts.test.js +0 -47
- package/dist/__tests__/cmd-pure/state-artifacts.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/state-update.test.d.ts +0 -5
- package/dist/__tests__/cmd-pure/state-update.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/state-update.test.js +0 -55
- package/dist/__tests__/cmd-pure/state-update.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/state.test.d.ts +0 -7
- package/dist/__tests__/cmd-pure/state.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/state.test.js +0 -48
- package/dist/__tests__/cmd-pure/state.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/statusline.test.d.ts +0 -5
- package/dist/__tests__/cmd-pure/statusline.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/statusline.test.js +0 -47
- package/dist/__tests__/cmd-pure/statusline.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/task.test.d.ts +0 -10
- package/dist/__tests__/cmd-pure/task.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/task.test.js +0 -246
- package/dist/__tests__/cmd-pure/task.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/taste-infer.test.d.ts +0 -9
- package/dist/__tests__/cmd-pure/taste-infer.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/taste-infer.test.js +0 -50
- package/dist/__tests__/cmd-pure/taste-infer.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/team.test.d.ts +0 -5
- package/dist/__tests__/cmd-pure/team.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/team.test.js +0 -43
- package/dist/__tests__/cmd-pure/team.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/terminal.test.d.ts +0 -9
- package/dist/__tests__/cmd-pure/terminal.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/terminal.test.js +0 -44
- package/dist/__tests__/cmd-pure/terminal.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/tokens.test.d.ts +0 -5
- package/dist/__tests__/cmd-pure/tokens.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/tokens.test.js +0 -64
- package/dist/__tests__/cmd-pure/tokens.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/uninstall.test.d.ts +0 -6
- package/dist/__tests__/cmd-pure/uninstall.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/uninstall.test.js +0 -38
- package/dist/__tests__/cmd-pure/uninstall.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/validate-evidence.test.d.ts +0 -12
- package/dist/__tests__/cmd-pure/validate-evidence.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/validate-evidence.test.js +0 -120
- package/dist/__tests__/cmd-pure/validate-evidence.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/variant-gallery.test.d.ts +0 -6
- package/dist/__tests__/cmd-pure/variant-gallery.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/variant-gallery.test.js +0 -20
- package/dist/__tests__/cmd-pure/variant-gallery.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/variant-pick.test.d.ts +0 -5
- package/dist/__tests__/cmd-pure/variant-pick.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/variant-pick.test.js +0 -24
- package/dist/__tests__/cmd-pure/variant-pick.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/variant-pool.test.d.ts +0 -5
- package/dist/__tests__/cmd-pure/variant-pool.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/variant-pool.test.js +0 -19
- package/dist/__tests__/cmd-pure/variant-pool.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/wave.test.d.ts +0 -5
- package/dist/__tests__/cmd-pure/wave.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/wave.test.js +0 -46
- package/dist/__tests__/cmd-pure/wave.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/wfrun.test.d.ts +0 -6
- package/dist/__tests__/cmd-pure/wfrun.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/wfrun.test.js +0 -33
- package/dist/__tests__/cmd-pure/wfrun.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/workflow.test.d.ts +0 -6
- package/dist/__tests__/cmd-pure/workflow.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/workflow.test.js +0 -105
- package/dist/__tests__/cmd-pure/workflow.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/worktree-install.test.d.ts +0 -10
- package/dist/__tests__/cmd-pure/worktree-install.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/worktree-install.test.js +0 -58
- package/dist/__tests__/cmd-pure/worktree-install.test.js.map +0 -1
- package/dist/__tests__/cmd-pure/worktree.test.d.ts +0 -10
- package/dist/__tests__/cmd-pure/worktree.test.d.ts.map +0 -1
- package/dist/__tests__/cmd-pure/worktree.test.js +0 -77
- package/dist/__tests__/cmd-pure/worktree.test.js.map +0 -1
- package/dist/__tests__/command-coverage.test.d.ts +0 -15
- package/dist/__tests__/command-coverage.test.d.ts.map +0 -1
- package/dist/__tests__/command-coverage.test.js +0 -138
- package/dist/__tests__/command-coverage.test.js.map +0 -1
- package/dist/__tests__/config-guard.test.d.ts +0 -12
- package/dist/__tests__/config-guard.test.d.ts.map +0 -1
- package/dist/__tests__/config-guard.test.js +0 -55
- package/dist/__tests__/config-guard.test.js.map +0 -1
- package/dist/__tests__/config-tdd-shape.test.d.ts +0 -10
- package/dist/__tests__/config-tdd-shape.test.d.ts.map +0 -1
- package/dist/__tests__/config-tdd-shape.test.js +0 -69
- package/dist/__tests__/config-tdd-shape.test.js.map +0 -1
- package/dist/__tests__/consistency-check.test.d.ts +0 -5
- package/dist/__tests__/consistency-check.test.d.ts.map +0 -1
- package/dist/__tests__/consistency-check.test.js +0 -72
- package/dist/__tests__/consistency-check.test.js.map +0 -1
- package/dist/__tests__/consistency-cli.test.d.ts +0 -5
- package/dist/__tests__/consistency-cli.test.d.ts.map +0 -1
- package/dist/__tests__/consistency-cli.test.js +0 -116
- package/dist/__tests__/consistency-cli.test.js.map +0 -1
- package/dist/__tests__/consistency-gate.test.d.ts +0 -5
- package/dist/__tests__/consistency-gate.test.d.ts.map +0 -1
- package/dist/__tests__/consistency-gate.test.js +0 -57
- package/dist/__tests__/consistency-gate.test.js.map +0 -1
- package/dist/__tests__/consistency-parse-plan.test.d.ts +0 -5
- package/dist/__tests__/consistency-parse-plan.test.d.ts.map +0 -1
- package/dist/__tests__/consistency-parse-plan.test.js +0 -66
- package/dist/__tests__/consistency-parse-plan.test.js.map +0 -1
- package/dist/__tests__/consistency-parse-qa.test.d.ts +0 -5
- package/dist/__tests__/consistency-parse-qa.test.d.ts.map +0 -1
- package/dist/__tests__/consistency-parse-qa.test.js +0 -50
- package/dist/__tests__/consistency-parse-qa.test.js.map +0 -1
- package/dist/__tests__/consistency-parse-review.test.d.ts +0 -5
- package/dist/__tests__/consistency-parse-review.test.d.ts.map +0 -1
- package/dist/__tests__/consistency-parse-review.test.js +0 -61
- package/dist/__tests__/consistency-parse-review.test.js.map +0 -1
- package/dist/__tests__/consistency-parse-spec.test.d.ts +0 -5
- package/dist/__tests__/consistency-parse-spec.test.d.ts.map +0 -1
- package/dist/__tests__/consistency-parse-spec.test.js +0 -83
- package/dist/__tests__/consistency-parse-spec.test.js.map +0 -1
- package/dist/__tests__/consistency-persona-alignment-rule.test.d.ts +0 -13
- package/dist/__tests__/consistency-persona-alignment-rule.test.d.ts.map +0 -1
- package/dist/__tests__/consistency-persona-alignment-rule.test.js +0 -158
- package/dist/__tests__/consistency-persona-alignment-rule.test.js.map +0 -1
- package/dist/__tests__/consistency-r6.test.d.ts +0 -15
- package/dist/__tests__/consistency-r6.test.d.ts.map +0 -1
- package/dist/__tests__/consistency-r6.test.js +0 -126
- package/dist/__tests__/consistency-r6.test.js.map +0 -1
- package/dist/__tests__/consistency-rules.test.d.ts +0 -6
- package/dist/__tests__/consistency-rules.test.d.ts.map +0 -1
- package/dist/__tests__/consistency-rules.test.js +0 -420
- package/dist/__tests__/consistency-rules.test.js.map +0 -1
- package/dist/__tests__/constitution-cli.test.d.ts +0 -5
- package/dist/__tests__/constitution-cli.test.d.ts.map +0 -1
- package/dist/__tests__/constitution-cli.test.js +0 -102
- package/dist/__tests__/constitution-cli.test.js.map +0 -1
- package/dist/__tests__/constitution-coverage-force.test.d.ts +0 -11
- package/dist/__tests__/constitution-coverage-force.test.d.ts.map +0 -1
- package/dist/__tests__/constitution-coverage-force.test.js +0 -101
- package/dist/__tests__/constitution-coverage-force.test.js.map +0 -1
- package/dist/__tests__/constitution-coverage-gate.test.d.ts +0 -11
- package/dist/__tests__/constitution-coverage-gate.test.d.ts.map +0 -1
- package/dist/__tests__/constitution-coverage-gate.test.js +0 -94
- package/dist/__tests__/constitution-coverage-gate.test.js.map +0 -1
- package/dist/__tests__/constitution-match.test.d.ts +0 -5
- package/dist/__tests__/constitution-match.test.d.ts.map +0 -1
- package/dist/__tests__/constitution-match.test.js +0 -95
- package/dist/__tests__/constitution-match.test.js.map +0 -1
- package/dist/__tests__/constitution-parse.test.d.ts +0 -5
- package/dist/__tests__/constitution-parse.test.d.ts.map +0 -1
- package/dist/__tests__/constitution-parse.test.js +0 -134
- package/dist/__tests__/constitution-parse.test.js.map +0 -1
- package/dist/__tests__/constitution-profile.test.d.ts +0 -9
- package/dist/__tests__/constitution-profile.test.d.ts.map +0 -1
- package/dist/__tests__/constitution-profile.test.js +0 -105
- package/dist/__tests__/constitution-profile.test.js.map +0 -1
- package/dist/__tests__/constitution.test.d.ts +0 -2
- package/dist/__tests__/constitution.test.d.ts.map +0 -1
- package/dist/__tests__/constitution.test.js +0 -86
- package/dist/__tests__/constitution.test.js.map +0 -1
- package/dist/__tests__/coordination-store.test.d.ts +0 -12
- package/dist/__tests__/coordination-store.test.d.ts.map +0 -1
- package/dist/__tests__/coordination-store.test.js +0 -119
- package/dist/__tests__/coordination-store.test.js.map +0 -1
- package/dist/__tests__/cost-tracker.test.d.ts +0 -2
- package/dist/__tests__/cost-tracker.test.d.ts.map +0 -1
- package/dist/__tests__/cost-tracker.test.js +0 -142
- package/dist/__tests__/cost-tracker.test.js.map +0 -1
- package/dist/__tests__/create-docs-cli.test.d.ts +0 -15
- package/dist/__tests__/create-docs-cli.test.d.ts.map +0 -1
- package/dist/__tests__/create-docs-cli.test.js +0 -259
- package/dist/__tests__/create-docs-cli.test.js.map +0 -1
- package/dist/__tests__/create-docs-frontmatter.test.d.ts +0 -18
- package/dist/__tests__/create-docs-frontmatter.test.d.ts.map +0 -1
- package/dist/__tests__/create-docs-frontmatter.test.js +0 -106
- package/dist/__tests__/create-docs-frontmatter.test.js.map +0 -1
- package/dist/__tests__/cycle.test.d.ts +0 -2
- package/dist/__tests__/cycle.test.d.ts.map +0 -1
- package/dist/__tests__/cycle.test.js +0 -64
- package/dist/__tests__/cycle.test.js.map +0 -1
- package/dist/__tests__/design-extract.test.d.ts +0 -19
- package/dist/__tests__/design-extract.test.d.ts.map +0 -1
- package/dist/__tests__/design-extract.test.js +0 -119
- package/dist/__tests__/design-extract.test.js.map +0 -1
- package/dist/__tests__/design-lint.test.d.ts +0 -16
- package/dist/__tests__/design-lint.test.d.ts.map +0 -1
- package/dist/__tests__/design-lint.test.js +0 -224
- package/dist/__tests__/design-lint.test.js.map +0 -1
- package/dist/__tests__/design-scan.test.d.ts +0 -18
- package/dist/__tests__/design-scan.test.d.ts.map +0 -1
- package/dist/__tests__/design-scan.test.js +0 -165
- package/dist/__tests__/design-scan.test.js.map +0 -1
- package/dist/__tests__/design-synthesize-prompt.test.d.ts +0 -10
- package/dist/__tests__/design-synthesize-prompt.test.d.ts.map +0 -1
- package/dist/__tests__/design-synthesize-prompt.test.js +0 -104
- package/dist/__tests__/design-synthesize-prompt.test.js.map +0 -1
- package/dist/__tests__/design-template.test.d.ts +0 -16
- package/dist/__tests__/design-template.test.d.ts.map +0 -1
- package/dist/__tests__/design-template.test.js +0 -428
- package/dist/__tests__/design-template.test.js.map +0 -1
- package/dist/__tests__/design-validate.test.d.ts +0 -14
- package/dist/__tests__/design-validate.test.d.ts.map +0 -1
- package/dist/__tests__/design-validate.test.js +0 -231
- package/dist/__tests__/design-validate.test.js.map +0 -1
- package/dist/__tests__/detached-spawn-wrapper.test.d.ts +0 -17
- package/dist/__tests__/detached-spawn-wrapper.test.d.ts.map +0 -1
- package/dist/__tests__/detached-spawn-wrapper.test.js +0 -160
- package/dist/__tests__/detached-spawn-wrapper.test.js.map +0 -1
- package/dist/__tests__/dispatch-table.test.d.ts +0 -10
- package/dist/__tests__/dispatch-table.test.d.ts.map +0 -1
- package/dist/__tests__/dispatch-table.test.js +0 -57
- package/dist/__tests__/dispatch-table.test.js.map +0 -1
- package/dist/__tests__/dispatch-wrap.test.d.ts +0 -21
- package/dist/__tests__/dispatch-wrap.test.d.ts.map +0 -1
- package/dist/__tests__/dispatch-wrap.test.js +0 -133
- package/dist/__tests__/dispatch-wrap.test.js.map +0 -1
- package/dist/__tests__/docs-audit-drift-detection.test.d.ts +0 -10
- package/dist/__tests__/docs-audit-drift-detection.test.d.ts.map +0 -1
- package/dist/__tests__/docs-audit-drift-detection.test.js +0 -185
- package/dist/__tests__/docs-audit-drift-detection.test.js.map +0 -1
- package/dist/__tests__/docs-audit-policy.test.d.ts +0 -9
- package/dist/__tests__/docs-audit-policy.test.d.ts.map +0 -1
- package/dist/__tests__/docs-audit-policy.test.js +0 -121
- package/dist/__tests__/docs-audit-policy.test.js.map +0 -1
- package/dist/__tests__/docs-features-reader.test.d.ts +0 -10
- package/dist/__tests__/docs-features-reader.test.d.ts.map +0 -1
- package/dist/__tests__/docs-features-reader.test.js +0 -193
- package/dist/__tests__/docs-features-reader.test.js.map +0 -1
- package/dist/__tests__/docs-nav-renderer.test.d.ts +0 -11
- package/dist/__tests__/docs-nav-renderer.test.d.ts.map +0 -1
- package/dist/__tests__/docs-nav-renderer.test.js +0 -119
- package/dist/__tests__/docs-nav-renderer.test.js.map +0 -1
- package/dist/__tests__/docs-structure-planner.test.d.ts +0 -14
- package/dist/__tests__/docs-structure-planner.test.d.ts.map +0 -1
- package/dist/__tests__/docs-structure-planner.test.js +0 -234
- package/dist/__tests__/docs-structure-planner.test.js.map +0 -1
- package/dist/__tests__/duration.test.d.ts +0 -5
- package/dist/__tests__/duration.test.d.ts.map +0 -1
- package/dist/__tests__/duration.test.js +0 -64
- package/dist/__tests__/duration.test.js.map +0 -1
- package/dist/__tests__/e2e-pipeline/pr-review-lifecycle.test.d.ts +0 -19
- package/dist/__tests__/e2e-pipeline/pr-review-lifecycle.test.d.ts.map +0 -1
- package/dist/__tests__/e2e-pipeline/pr-review-lifecycle.test.js +0 -74
- package/dist/__tests__/e2e-pipeline/pr-review-lifecycle.test.js.map +0 -1
- package/dist/__tests__/e2e-pipeline/roadmap-lifecycle.test.d.ts +0 -18
- package/dist/__tests__/e2e-pipeline/roadmap-lifecycle.test.d.ts.map +0 -1
- package/dist/__tests__/e2e-pipeline/roadmap-lifecycle.test.js +0 -80
- package/dist/__tests__/e2e-pipeline/roadmap-lifecycle.test.js.map +0 -1
- package/dist/__tests__/e2e-pipeline/task-lifecycle.test.d.ts +0 -19
- package/dist/__tests__/e2e-pipeline/task-lifecycle.test.d.ts.map +0 -1
- package/dist/__tests__/e2e-pipeline/task-lifecycle.test.js +0 -86
- package/dist/__tests__/e2e-pipeline/task-lifecycle.test.js.map +0 -1
- package/dist/__tests__/event-log.test.d.ts +0 -15
- package/dist/__tests__/event-log.test.d.ts.map +0 -1
- package/dist/__tests__/event-log.test.js +0 -139
- package/dist/__tests__/event-log.test.js.map +0 -1
- package/dist/__tests__/features-registry-audit.test.d.ts +0 -6
- package/dist/__tests__/features-registry-audit.test.d.ts.map +0 -1
- package/dist/__tests__/features-registry-audit.test.js +0 -186
- package/dist/__tests__/features-registry-audit.test.js.map +0 -1
- package/dist/__tests__/file-backend.test.d.ts +0 -2
- package/dist/__tests__/file-backend.test.d.ts.map +0 -1
- package/dist/__tests__/file-backend.test.js +0 -222
- package/dist/__tests__/file-backend.test.js.map +0 -1
- package/dist/__tests__/fixtures/pr-review-audit-fixer/verified-clean/target.d.ts +0 -2
- package/dist/__tests__/fixtures/pr-review-audit-fixer/verified-clean/target.d.ts.map +0 -1
- package/dist/__tests__/fixtures/pr-review-audit-fixer/verified-clean/target.js +0 -6
- package/dist/__tests__/fixtures/pr-review-audit-fixer/verified-clean/target.js.map +0 -1
- package/dist/__tests__/fixtures/validate-evidence/other-file.d.ts +0 -4
- package/dist/__tests__/fixtures/validate-evidence/other-file.d.ts.map +0 -1
- package/dist/__tests__/fixtures/validate-evidence/other-file.js +0 -8
- package/dist/__tests__/fixtures/validate-evidence/other-file.js.map +0 -1
- package/dist/__tests__/fixtures/validate-evidence/target-file.d.ts +0 -4
- package/dist/__tests__/fixtures/validate-evidence/target-file.d.ts.map +0 -1
- package/dist/__tests__/fixtures/validate-evidence/target-file.js +0 -23
- package/dist/__tests__/fixtures/validate-evidence/target-file.js.map +0 -1
- package/dist/__tests__/gate-cache.test.d.ts +0 -14
- package/dist/__tests__/gate-cache.test.d.ts.map +0 -1
- package/dist/__tests__/gate-cache.test.js +0 -148
- package/dist/__tests__/gate-cache.test.js.map +0 -1
- package/dist/__tests__/gate-check-cli.test.d.ts +0 -11
- package/dist/__tests__/gate-check-cli.test.d.ts.map +0 -1
- package/dist/__tests__/gate-check-cli.test.js +0 -199
- package/dist/__tests__/gate-check-cli.test.js.map +0 -1
- package/dist/__tests__/gate-e2e.test.d.ts +0 -17
- package/dist/__tests__/gate-e2e.test.d.ts.map +0 -1
- package/dist/__tests__/gate-e2e.test.js +0 -110
- package/dist/__tests__/gate-e2e.test.js.map +0 -1
- package/dist/__tests__/gate-force-override.test.d.ts +0 -16
- package/dist/__tests__/gate-force-override.test.d.ts.map +0 -1
- package/dist/__tests__/gate-force-override.test.js +0 -139
- package/dist/__tests__/gate-force-override.test.js.map +0 -1
- package/dist/__tests__/gate-gates.test.d.ts +0 -5
- package/dist/__tests__/gate-gates.test.d.ts.map +0 -1
- package/dist/__tests__/gate-gates.test.js +0 -222
- package/dist/__tests__/gate-gates.test.js.map +0 -1
- package/dist/__tests__/gate-perf.test.d.ts +0 -15
- package/dist/__tests__/gate-perf.test.d.ts.map +0 -1
- package/dist/__tests__/gate-perf.test.js +0 -75
- package/dist/__tests__/gate-perf.test.js.map +0 -1
- package/dist/__tests__/gate-persona-alignment.test.d.ts +0 -16
- package/dist/__tests__/gate-persona-alignment.test.d.ts.map +0 -1
- package/dist/__tests__/gate-persona-alignment.test.js +0 -241
- package/dist/__tests__/gate-persona-alignment.test.js.map +0 -1
- package/dist/__tests__/gate-registry.test.d.ts +0 -8
- package/dist/__tests__/gate-registry.test.d.ts.map +0 -1
- package/dist/__tests__/gate-registry.test.js +0 -176
- package/dist/__tests__/gate-registry.test.js.map +0 -1
- package/dist/__tests__/gate-route-preview.test.d.ts +0 -13
- package/dist/__tests__/gate-route-preview.test.d.ts.map +0 -1
- package/dist/__tests__/gate-route-preview.test.js +0 -169
- package/dist/__tests__/gate-route-preview.test.js.map +0 -1
- package/dist/__tests__/gitignore-drift.test.d.ts +0 -14
- package/dist/__tests__/gitignore-drift.test.d.ts.map +0 -1
- package/dist/__tests__/gitignore-drift.test.js +0 -138
- package/dist/__tests__/gitignore-drift.test.js.map +0 -1
- package/dist/__tests__/gitignore-upgrade.test.d.ts +0 -15
- package/dist/__tests__/gitignore-upgrade.test.d.ts.map +0 -1
- package/dist/__tests__/gitignore-upgrade.test.js +0 -208
- package/dist/__tests__/gitignore-upgrade.test.js.map +0 -1
- package/dist/__tests__/host-detect-all-runtimes.test.d.ts +0 -14
- package/dist/__tests__/host-detect-all-runtimes.test.d.ts.map +0 -1
- package/dist/__tests__/host-detect-all-runtimes.test.js +0 -220
- package/dist/__tests__/host-detect-all-runtimes.test.js.map +0 -1
- package/dist/__tests__/host-detect.test.d.ts +0 -2
- package/dist/__tests__/host-detect.test.d.ts.map +0 -1
- package/dist/__tests__/host-detect.test.js +0 -554
- package/dist/__tests__/host-detect.test.js.map +0 -1
- package/dist/__tests__/init-bootstrap-chain.test.d.ts +0 -12
- package/dist/__tests__/init-bootstrap-chain.test.d.ts.map +0 -1
- package/dist/__tests__/init-bootstrap-chain.test.js +0 -101
- package/dist/__tests__/init-bootstrap-chain.test.js.map +0 -1
- package/dist/__tests__/init-flag-parser.test.d.ts +0 -15
- package/dist/__tests__/init-flag-parser.test.d.ts.map +0 -1
- package/dist/__tests__/init-flag-parser.test.js +0 -152
- package/dist/__tests__/init-flag-parser.test.js.map +0 -1
- package/dist/__tests__/init-hints.test.d.ts +0 -20
- package/dist/__tests__/init-hints.test.d.ts.map +0 -1
- package/dist/__tests__/init-hints.test.js +0 -147
- package/dist/__tests__/init-hints.test.js.map +0 -1
- package/dist/__tests__/init-non-tty-class-a.test.d.ts +0 -14
- package/dist/__tests__/init-non-tty-class-a.test.d.ts.map +0 -1
- package/dist/__tests__/init-non-tty-class-a.test.js +0 -141
- package/dist/__tests__/init-non-tty-class-a.test.js.map +0 -1
- package/dist/__tests__/init-seeds-stub.test.d.ts +0 -11
- package/dist/__tests__/init-seeds-stub.test.d.ts.map +0 -1
- package/dist/__tests__/init-seeds-stub.test.js +0 -89
- package/dist/__tests__/init-seeds-stub.test.js.map +0 -1
- package/dist/__tests__/init-upgrade-drift.test.d.ts +0 -16
- package/dist/__tests__/init-upgrade-drift.test.d.ts.map +0 -1
- package/dist/__tests__/init-upgrade-drift.test.js +0 -136
- package/dist/__tests__/init-upgrade-drift.test.js.map +0 -1
- package/dist/__tests__/install-no-yaml-warnings.test.d.ts +0 -25
- package/dist/__tests__/install-no-yaml-warnings.test.d.ts.map +0 -1
- package/dist/__tests__/install-no-yaml-warnings.test.js +0 -89
- package/dist/__tests__/install-no-yaml-warnings.test.js.map +0 -1
- package/dist/__tests__/install-pipeline-traversal.test.d.ts +0 -7
- package/dist/__tests__/install-pipeline-traversal.test.d.ts.map +0 -1
- package/dist/__tests__/install-pipeline-traversal.test.js +0 -62
- package/dist/__tests__/install-pipeline-traversal.test.js.map +0 -1
- package/dist/__tests__/install-pipeline.test.d.ts +0 -11
- package/dist/__tests__/install-pipeline.test.d.ts.map +0 -1
- package/dist/__tests__/install-pipeline.test.js +0 -131
- package/dist/__tests__/install-pipeline.test.js.map +0 -1
- package/dist/__tests__/integration/helpers/make-fixture-project.d.ts +0 -59
- package/dist/__tests__/integration/helpers/make-fixture-project.d.ts.map +0 -1
- package/dist/__tests__/integration/helpers/make-fixture-project.js +0 -130
- package/dist/__tests__/integration/helpers/make-fixture-project.js.map +0 -1
- package/dist/__tests__/integration/helpers/run-cli.d.ts +0 -40
- package/dist/__tests__/integration/helpers/run-cli.d.ts.map +0 -1
- package/dist/__tests__/integration/helpers/run-cli.js +0 -61
- package/dist/__tests__/integration/helpers/run-cli.js.map +0 -1
- package/dist/__tests__/integration/smoke-author-skill.test.d.ts +0 -15
- package/dist/__tests__/integration/smoke-author-skill.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-author-skill.test.js +0 -86
- package/dist/__tests__/integration/smoke-author-skill.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-bootstrap.test.d.ts +0 -12
- package/dist/__tests__/integration/smoke-bootstrap.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-bootstrap.test.js +0 -68
- package/dist/__tests__/integration/smoke-bootstrap.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-coverage-check.test.d.ts +0 -9
- package/dist/__tests__/integration/smoke-coverage-check.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-coverage-check.test.js +0 -152
- package/dist/__tests__/integration/smoke-coverage-check.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-create-docs.test.d.ts +0 -14
- package/dist/__tests__/integration/smoke-create-docs.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-create-docs.test.js +0 -142
- package/dist/__tests__/integration/smoke-create-docs.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-design-lint.test.d.ts +0 -11
- package/dist/__tests__/integration/smoke-design-lint.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-design-lint.test.js +0 -46
- package/dist/__tests__/integration/smoke-design-lint.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-design-scan.test.d.ts +0 -11
- package/dist/__tests__/integration/smoke-design-scan.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-design-scan.test.js +0 -41
- package/dist/__tests__/integration/smoke-design-scan.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-design-synthesize.test.d.ts +0 -23
- package/dist/__tests__/integration/smoke-design-synthesize.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-design-synthesize.test.js +0 -232
- package/dist/__tests__/integration/smoke-design-synthesize.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-design-template.test.d.ts +0 -23
- package/dist/__tests__/integration/smoke-design-template.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-design-template.test.js +0 -203
- package/dist/__tests__/integration/smoke-design-template.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-design-validate.test.d.ts +0 -12
- package/dist/__tests__/integration/smoke-design-validate.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-design-validate.test.js +0 -98
- package/dist/__tests__/integration/smoke-design-validate.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-docs-audit.test.d.ts +0 -5
- package/dist/__tests__/integration/smoke-docs-audit.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-docs-audit.test.js +0 -28
- package/dist/__tests__/integration/smoke-docs-audit.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-docs-coherence.test.d.ts +0 -12
- package/dist/__tests__/integration/smoke-docs-coherence.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-docs-coherence.test.js +0 -176
- package/dist/__tests__/integration/smoke-docs-coherence.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-effects.test.d.ts +0 -6
- package/dist/__tests__/integration/smoke-effects.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-effects.test.js +0 -92
- package/dist/__tests__/integration/smoke-effects.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-features-audit.test.d.ts +0 -6
- package/dist/__tests__/integration/smoke-features-audit.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-features-audit.test.js +0 -77
- package/dist/__tests__/integration/smoke-features-audit.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-gate.test.d.ts +0 -6
- package/dist/__tests__/integration/smoke-gate.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-gate.test.js +0 -120
- package/dist/__tests__/integration/smoke-gate.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-host.test.d.ts +0 -7
- package/dist/__tests__/integration/smoke-host.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-host.test.js +0 -230
- package/dist/__tests__/integration/smoke-host.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-personas.test.d.ts +0 -14
- package/dist/__tests__/integration/smoke-personas.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-personas.test.js +0 -87
- package/dist/__tests__/integration/smoke-personas.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-pr-review-audit-fixer.test.d.ts +0 -12
- package/dist/__tests__/integration/smoke-pr-review-audit-fixer.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-pr-review-audit-fixer.test.js +0 -422
- package/dist/__tests__/integration/smoke-pr-review-audit-fixer.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-pr-review.test.d.ts +0 -11
- package/dist/__tests__/integration/smoke-pr-review.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-pr-review.test.js +0 -105
- package/dist/__tests__/integration/smoke-pr-review.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-product-context.test.d.ts +0 -11
- package/dist/__tests__/integration/smoke-product-context.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-product-context.test.js +0 -64
- package/dist/__tests__/integration/smoke-product-context.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-profile.test.d.ts +0 -6
- package/dist/__tests__/integration/smoke-profile.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-profile.test.js +0 -74
- package/dist/__tests__/integration/smoke-profile.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-roadmap.test.d.ts +0 -6
- package/dist/__tests__/integration/smoke-roadmap.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-roadmap.test.js +0 -89
- package/dist/__tests__/integration/smoke-roadmap.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-route.test.d.ts +0 -8
- package/dist/__tests__/integration/smoke-route.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-route.test.js +0 -97
- package/dist/__tests__/integration/smoke-route.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-seed.test.d.ts +0 -10
- package/dist/__tests__/integration/smoke-seed.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-seed.test.js +0 -50
- package/dist/__tests__/integration/smoke-seed.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-standards.test.d.ts +0 -12
- package/dist/__tests__/integration/smoke-standards.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-standards.test.js +0 -95
- package/dist/__tests__/integration/smoke-standards.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-statusline.test.d.ts +0 -13
- package/dist/__tests__/integration/smoke-statusline.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-statusline.test.js +0 -61
- package/dist/__tests__/integration/smoke-statusline.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-task.test.d.ts +0 -11
- package/dist/__tests__/integration/smoke-task.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-task.test.js +0 -228
- package/dist/__tests__/integration/smoke-task.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-taste-infer.test.d.ts +0 -17
- package/dist/__tests__/integration/smoke-taste-infer.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-taste-infer.test.js +0 -98
- package/dist/__tests__/integration/smoke-taste-infer.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-team.test.d.ts +0 -6
- package/dist/__tests__/integration/smoke-team.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-team.test.js +0 -61
- package/dist/__tests__/integration/smoke-team.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-terminal.test.d.ts +0 -15
- package/dist/__tests__/integration/smoke-terminal.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-terminal.test.js +0 -127
- package/dist/__tests__/integration/smoke-terminal.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-tokens.test.d.ts +0 -6
- package/dist/__tests__/integration/smoke-tokens.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-tokens.test.js +0 -92
- package/dist/__tests__/integration/smoke-tokens.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-uninstall.test.d.ts +0 -8
- package/dist/__tests__/integration/smoke-uninstall.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-uninstall.test.js +0 -58
- package/dist/__tests__/integration/smoke-uninstall.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-validate-evidence.test.d.ts +0 -8
- package/dist/__tests__/integration/smoke-validate-evidence.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-validate-evidence.test.js +0 -72
- package/dist/__tests__/integration/smoke-validate-evidence.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-variant-gallery.test.d.ts +0 -12
- package/dist/__tests__/integration/smoke-variant-gallery.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-variant-gallery.test.js +0 -60
- package/dist/__tests__/integration/smoke-variant-gallery.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-variant-pick.test.d.ts +0 -12
- package/dist/__tests__/integration/smoke-variant-pick.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-variant-pick.test.js +0 -57
- package/dist/__tests__/integration/smoke-variant-pick.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-variant-pool.test.d.ts +0 -10
- package/dist/__tests__/integration/smoke-variant-pool.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-variant-pool.test.js +0 -33
- package/dist/__tests__/integration/smoke-variant-pool.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-wfrun.test.d.ts +0 -9
- package/dist/__tests__/integration/smoke-wfrun.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-wfrun.test.js +0 -111
- package/dist/__tests__/integration/smoke-wfrun.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-worktree-install.test.d.ts +0 -7
- package/dist/__tests__/integration/smoke-worktree-install.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-worktree-install.test.js +0 -40
- package/dist/__tests__/integration/smoke-worktree-install.test.js.map +0 -1
- package/dist/__tests__/integration/smoke-worktree.test.d.ts +0 -6
- package/dist/__tests__/integration/smoke-worktree.test.d.ts.map +0 -1
- package/dist/__tests__/integration/smoke-worktree.test.js +0 -59
- package/dist/__tests__/integration/smoke-worktree.test.js.map +0 -1
- package/dist/__tests__/lifecycle-shipped-pending-merge.test.d.ts +0 -15
- package/dist/__tests__/lifecycle-shipped-pending-merge.test.d.ts.map +0 -1
- package/dist/__tests__/lifecycle-shipped-pending-merge.test.js +0 -150
- package/dist/__tests__/lifecycle-shipped-pending-merge.test.js.map +0 -1
- package/dist/__tests__/lock-proper-lockfile.test.d.ts +0 -9
- package/dist/__tests__/lock-proper-lockfile.test.d.ts.map +0 -1
- package/dist/__tests__/lock-proper-lockfile.test.js +0 -121
- package/dist/__tests__/lock-proper-lockfile.test.js.map +0 -1
- package/dist/__tests__/manifest.test.d.ts +0 -2
- package/dist/__tests__/manifest.test.d.ts.map +0 -1
- package/dist/__tests__/manifest.test.js +0 -32
- package/dist/__tests__/manifest.test.js.map +0 -1
- package/dist/__tests__/milestone-rollup.test.d.ts +0 -7
- package/dist/__tests__/milestone-rollup.test.d.ts.map +0 -1
- package/dist/__tests__/milestone-rollup.test.js +0 -175
- package/dist/__tests__/milestone-rollup.test.js.map +0 -1
- package/dist/__tests__/milestone-schema-focus-fields.test.d.ts +0 -14
- package/dist/__tests__/milestone-schema-focus-fields.test.d.ts.map +0 -1
- package/dist/__tests__/milestone-schema-focus-fields.test.js +0 -159
- package/dist/__tests__/milestone-schema-focus-fields.test.js.map +0 -1
- package/dist/__tests__/null-backend.test.d.ts +0 -2
- package/dist/__tests__/null-backend.test.d.ts.map +0 -1
- package/dist/__tests__/null-backend.test.js +0 -54
- package/dist/__tests__/null-backend.test.js.map +0 -1
- package/dist/__tests__/output-style-helpers.test.d.ts +0 -11
- package/dist/__tests__/output-style-helpers.test.d.ts.map +0 -1
- package/dist/__tests__/output-style-helpers.test.js +0 -173
- package/dist/__tests__/output-style-helpers.test.js.map +0 -1
- package/dist/__tests__/outputs-guard.test.d.ts +0 -16
- package/dist/__tests__/outputs-guard.test.d.ts.map +0 -1
- package/dist/__tests__/outputs-guard.test.js +0 -143
- package/dist/__tests__/outputs-guard.test.js.map +0 -1
- package/dist/__tests__/parse-acceptance-criteria.test.d.ts +0 -7
- package/dist/__tests__/parse-acceptance-criteria.test.d.ts.map +0 -1
- package/dist/__tests__/parse-acceptance-criteria.test.js +0 -135
- package/dist/__tests__/parse-acceptance-criteria.test.js.map +0 -1
- package/dist/__tests__/personas-cli.test.d.ts +0 -12
- package/dist/__tests__/personas-cli.test.d.ts.map +0 -1
- package/dist/__tests__/personas-cli.test.js +0 -235
- package/dist/__tests__/personas-cli.test.js.map +0 -1
- package/dist/__tests__/personas-frontmatter.test.d.ts +0 -24
- package/dist/__tests__/personas-frontmatter.test.d.ts.map +0 -1
- package/dist/__tests__/personas-frontmatter.test.js +0 -108
- package/dist/__tests__/personas-frontmatter.test.js.map +0 -1
- package/dist/__tests__/personas-role-scan.test.d.ts +0 -14
- package/dist/__tests__/personas-role-scan.test.d.ts.map +0 -1
- package/dist/__tests__/personas-role-scan.test.js +0 -134
- package/dist/__tests__/personas-role-scan.test.js.map +0 -1
- package/dist/__tests__/personas-schema-roundtrip.test.d.ts +0 -31
- package/dist/__tests__/personas-schema-roundtrip.test.d.ts.map +0 -1
- package/dist/__tests__/personas-schema-roundtrip.test.js +0 -235
- package/dist/__tests__/personas-schema-roundtrip.test.js.map +0 -1
- package/dist/__tests__/personas-sidecar.test.d.ts +0 -19
- package/dist/__tests__/personas-sidecar.test.d.ts.map +0 -1
- package/dist/__tests__/personas-sidecar.test.js +0 -285
- package/dist/__tests__/personas-sidecar.test.js.map +0 -1
- package/dist/__tests__/plan-approval.test.d.ts +0 -10
- package/dist/__tests__/plan-approval.test.d.ts.map +0 -1
- package/dist/__tests__/plan-approval.test.js +0 -161
- package/dist/__tests__/plan-approval.test.js.map +0 -1
- package/dist/__tests__/plan-mode-e2e.test.d.ts +0 -20
- package/dist/__tests__/plan-mode-e2e.test.d.ts.map +0 -1
- package/dist/__tests__/plan-mode-e2e.test.js +0 -118
- package/dist/__tests__/plan-mode-e2e.test.js.map +0 -1
- package/dist/__tests__/planner-docs-impact.test.d.ts +0 -6
- package/dist/__tests__/planner-docs-impact.test.d.ts.map +0 -1
- package/dist/__tests__/planner-docs-impact.test.js +0 -44
- package/dist/__tests__/planner-docs-impact.test.js.map +0 -1
- package/dist/__tests__/planner-persona-tier-declaration.test.d.ts +0 -15
- package/dist/__tests__/planner-persona-tier-declaration.test.d.ts.map +0 -1
- package/dist/__tests__/planner-persona-tier-declaration.test.js +0 -60
- package/dist/__tests__/planner-persona-tier-declaration.test.js.map +0 -1
- package/dist/__tests__/plugin-build.test.d.ts +0 -16
- package/dist/__tests__/plugin-build.test.d.ts.map +0 -1
- package/dist/__tests__/plugin-build.test.js +0 -119
- package/dist/__tests__/plugin-build.test.js.map +0 -1
- package/dist/__tests__/plugin-manifest-schema.test.d.ts +0 -18
- package/dist/__tests__/plugin-manifest-schema.test.d.ts.map +0 -1
- package/dist/__tests__/plugin-manifest-schema.test.js +0 -123
- package/dist/__tests__/plugin-manifest-schema.test.js.map +0 -1
- package/dist/__tests__/post-merge-sweep.test.d.ts +0 -23
- package/dist/__tests__/post-merge-sweep.test.d.ts.map +0 -1
- package/dist/__tests__/post-merge-sweep.test.js +0 -342
- package/dist/__tests__/post-merge-sweep.test.js.map +0 -1
- package/dist/__tests__/pr-review-audit-fixer.test.d.ts +0 -11
- package/dist/__tests__/pr-review-audit-fixer.test.d.ts.map +0 -1
- package/dist/__tests__/pr-review-audit-fixer.test.js +0 -354
- package/dist/__tests__/pr-review-audit-fixer.test.js.map +0 -1
- package/dist/__tests__/pr-review-authorship-migration.test.d.ts +0 -13
- package/dist/__tests__/pr-review-authorship-migration.test.d.ts.map +0 -1
- package/dist/__tests__/pr-review-authorship-migration.test.js +0 -237
- package/dist/__tests__/pr-review-authorship-migration.test.js.map +0 -1
- package/dist/__tests__/pr-review-close-round-cleanup.test.d.ts +0 -15
- package/dist/__tests__/pr-review-close-round-cleanup.test.d.ts.map +0 -1
- package/dist/__tests__/pr-review-close-round-cleanup.test.js +0 -191
- package/dist/__tests__/pr-review-close-round-cleanup.test.js.map +0 -1
- package/dist/__tests__/pr-review-detect-authorship.test.d.ts +0 -21
- package/dist/__tests__/pr-review-detect-authorship.test.d.ts.map +0 -1
- package/dist/__tests__/pr-review-detect-authorship.test.js +0 -270
- package/dist/__tests__/pr-review-detect-authorship.test.js.map +0 -1
- package/dist/__tests__/product-context.test.d.ts +0 -14
- package/dist/__tests__/product-context.test.d.ts.map +0 -1
- package/dist/__tests__/product-context.test.js +0 -117
- package/dist/__tests__/product-context.test.js.map +0 -1
- package/dist/__tests__/profile-cli.test.d.ts +0 -5
- package/dist/__tests__/profile-cli.test.d.ts.map +0 -1
- package/dist/__tests__/profile-cli.test.js +0 -134
- package/dist/__tests__/profile-cli.test.js.map +0 -1
- package/dist/__tests__/profile-parse.test.d.ts +0 -5
- package/dist/__tests__/profile-parse.test.d.ts.map +0 -1
- package/dist/__tests__/profile-parse.test.js +0 -151
- package/dist/__tests__/profile-parse.test.js.map +0 -1
- package/dist/__tests__/profile-resolve.test.d.ts +0 -5
- package/dist/__tests__/profile-resolve.test.d.ts.map +0 -1
- package/dist/__tests__/profile-resolve.test.js +0 -181
- package/dist/__tests__/profile-resolve.test.js.map +0 -1
- package/dist/__tests__/remote-detection.test.d.ts +0 -9
- package/dist/__tests__/remote-detection.test.d.ts.map +0 -1
- package/dist/__tests__/remote-detection.test.js +0 -86
- package/dist/__tests__/remote-detection.test.js.map +0 -1
- package/dist/__tests__/risk-check.test.d.ts +0 -2
- package/dist/__tests__/risk-check.test.d.ts.map +0 -1
- package/dist/__tests__/risk-check.test.js +0 -85
- package/dist/__tests__/risk-check.test.js.map +0 -1
- package/dist/__tests__/roadmap-delete-phase-files.test.d.ts +0 -18
- package/dist/__tests__/roadmap-delete-phase-files.test.d.ts.map +0 -1
- package/dist/__tests__/roadmap-delete-phase-files.test.js +0 -122
- package/dist/__tests__/roadmap-delete-phase-files.test.js.map +0 -1
- package/dist/__tests__/roadmap-empty-milestone-lookup.test.d.ts +0 -29
- package/dist/__tests__/roadmap-empty-milestone-lookup.test.d.ts.map +0 -1
- package/dist/__tests__/roadmap-empty-milestone-lookup.test.js +0 -186
- package/dist/__tests__/roadmap-empty-milestone-lookup.test.js.map +0 -1
- package/dist/__tests__/roadmap-orphan-block.test.d.ts +0 -8
- package/dist/__tests__/roadmap-orphan-block.test.d.ts.map +0 -1
- package/dist/__tests__/roadmap-orphan-block.test.js +0 -114
- package/dist/__tests__/roadmap-orphan-block.test.js.map +0 -1
- package/dist/__tests__/roadmap-phases-io.test.d.ts +0 -15
- package/dist/__tests__/roadmap-phases-io.test.d.ts.map +0 -1
- package/dist/__tests__/roadmap-phases-io.test.js +0 -235
- package/dist/__tests__/roadmap-phases-io.test.js.map +0 -1
- package/dist/__tests__/roadmap-validate-refs.test.d.ts +0 -9
- package/dist/__tests__/roadmap-validate-refs.test.d.ts.map +0 -1
- package/dist/__tests__/roadmap-validate-refs.test.js +0 -90
- package/dist/__tests__/roadmap-validate-refs.test.js.map +0 -1
- package/dist/__tests__/route-design-skill.test.d.ts +0 -10
- package/dist/__tests__/route-design-skill.test.d.ts.map +0 -1
- package/dist/__tests__/route-design-skill.test.js +0 -61
- package/dist/__tests__/route-design-skill.test.js.map +0 -1
- package/dist/__tests__/route-envelope-builder.test.d.ts +0 -12
- package/dist/__tests__/route-envelope-builder.test.d.ts.map +0 -1
- package/dist/__tests__/route-envelope-builder.test.js +0 -369
- package/dist/__tests__/route-envelope-builder.test.js.map +0 -1
- package/dist/__tests__/route-mockup-skill.test.d.ts +0 -10
- package/dist/__tests__/route-mockup-skill.test.d.ts.map +0 -1
- package/dist/__tests__/route-mockup-skill.test.js +0 -61
- package/dist/__tests__/route-mockup-skill.test.js.map +0 -1
- package/dist/__tests__/route-plan-mode.test.d.ts +0 -9
- package/dist/__tests__/route-plan-mode.test.d.ts.map +0 -1
- package/dist/__tests__/route-plan-mode.test.js +0 -126
- package/dist/__tests__/route-plan-mode.test.js.map +0 -1
- package/dist/__tests__/route-pr-review-skill.test.d.ts +0 -15
- package/dist/__tests__/route-pr-review-skill.test.d.ts.map +0 -1
- package/dist/__tests__/route-pr-review-skill.test.js +0 -132
- package/dist/__tests__/route-pr-review-skill.test.js.map +0 -1
- package/dist/__tests__/route-runtime-override.test.d.ts +0 -18
- package/dist/__tests__/route-runtime-override.test.d.ts.map +0 -1
- package/dist/__tests__/route-runtime-override.test.js +0 -164
- package/dist/__tests__/route-runtime-override.test.js.map +0 -1
- package/dist/__tests__/route-skill-discover.test.d.ts +0 -9
- package/dist/__tests__/route-skill-discover.test.d.ts.map +0 -1
- package/dist/__tests__/route-skill-discover.test.js +0 -163
- package/dist/__tests__/route-skill-discover.test.js.map +0 -1
- package/dist/__tests__/route-trust-boundary.test.d.ts +0 -10
- package/dist/__tests__/route-trust-boundary.test.d.ts.map +0 -1
- package/dist/__tests__/route-trust-boundary.test.js +0 -206
- package/dist/__tests__/route-trust-boundary.test.js.map +0 -1
- package/dist/__tests__/router-cross-runtime-parity.test.d.ts +0 -23
- package/dist/__tests__/router-cross-runtime-parity.test.d.ts.map +0 -1
- package/dist/__tests__/router-cross-runtime-parity.test.js +0 -227
- package/dist/__tests__/router-cross-runtime-parity.test.js.map +0 -1
- package/dist/__tests__/run-cmd-harness.test.d.ts +0 -14
- package/dist/__tests__/run-cmd-harness.test.d.ts.map +0 -1
- package/dist/__tests__/run-cmd-harness.test.js +0 -132
- package/dist/__tests__/run-cmd-harness.test.js.map +0 -1
- package/dist/__tests__/schema-migrate.test.d.ts +0 -8
- package/dist/__tests__/schema-migrate.test.d.ts.map +0 -1
- package/dist/__tests__/schema-migrate.test.js +0 -107
- package/dist/__tests__/schema-migrate.test.js.map +0 -1
- package/dist/__tests__/seed-assign-unassign.test.d.ts +0 -14
- package/dist/__tests__/seed-assign-unassign.test.d.ts.map +0 -1
- package/dist/__tests__/seed-assign-unassign.test.js +0 -188
- package/dist/__tests__/seed-assign-unassign.test.js.map +0 -1
- package/dist/__tests__/seed-cli-lifecycle.test.d.ts +0 -9
- package/dist/__tests__/seed-cli-lifecycle.test.d.ts.map +0 -1
- package/dist/__tests__/seed-cli-lifecycle.test.js +0 -204
- package/dist/__tests__/seed-cli-lifecycle.test.js.map +0 -1
- package/dist/__tests__/seed-validate-cli.test.d.ts +0 -11
- package/dist/__tests__/seed-validate-cli.test.d.ts.map +0 -1
- package/dist/__tests__/seed-validate-cli.test.js +0 -149
- package/dist/__tests__/seed-validate-cli.test.js.map +0 -1
- package/dist/__tests__/seeds-io.test.d.ts +0 -11
- package/dist/__tests__/seeds-io.test.d.ts.map +0 -1
- package/dist/__tests__/seeds-io.test.js +0 -145
- package/dist/__tests__/seeds-io.test.js.map +0 -1
- package/dist/__tests__/seeds-render.test.d.ts +0 -20
- package/dist/__tests__/seeds-render.test.d.ts.map +0 -1
- package/dist/__tests__/seeds-render.test.js +0 -145
- package/dist/__tests__/seeds-render.test.js.map +0 -1
- package/dist/__tests__/seeds-validate.test.d.ts +0 -7
- package/dist/__tests__/seeds-validate.test.d.ts.map +0 -1
- package/dist/__tests__/seeds-validate.test.js +0 -154
- package/dist/__tests__/seeds-validate.test.js.map +0 -1
- package/dist/__tests__/self-stage-wiring.test.d.ts +0 -9
- package/dist/__tests__/self-stage-wiring.test.d.ts.map +0 -1
- package/dist/__tests__/self-stage-wiring.test.js +0 -210
- package/dist/__tests__/self-stage-wiring.test.js.map +0 -1
- package/dist/__tests__/setting-class.test.d.ts +0 -7
- package/dist/__tests__/setting-class.test.d.ts.map +0 -1
- package/dist/__tests__/setting-class.test.js +0 -117
- package/dist/__tests__/setting-class.test.js.map +0 -1
- package/dist/__tests__/share-policy.test.d.ts +0 -15
- package/dist/__tests__/share-policy.test.d.ts.map +0 -1
- package/dist/__tests__/share-policy.test.js +0 -207
- package/dist/__tests__/share-policy.test.js.map +0 -1
- package/dist/__tests__/ship-execute-skill-structure.test.d.ts +0 -15
- package/dist/__tests__/ship-execute-skill-structure.test.d.ts.map +0 -1
- package/dist/__tests__/ship-execute-skill-structure.test.js +0 -92
- package/dist/__tests__/ship-execute-skill-structure.test.js.map +0 -1
- package/dist/__tests__/skill-author-contract.test.d.ts +0 -8
- package/dist/__tests__/skill-author-contract.test.d.ts.map +0 -1
- package/dist/__tests__/skill-author-contract.test.js +0 -86
- package/dist/__tests__/skill-author-contract.test.js.map +0 -1
- package/dist/__tests__/skill-author-scaffold.test.d.ts +0 -12
- package/dist/__tests__/skill-author-scaffold.test.d.ts.map +0 -1
- package/dist/__tests__/skill-author-scaffold.test.js +0 -82
- package/dist/__tests__/skill-author-scaffold.test.js.map +0 -1
- package/dist/__tests__/skill-author-validate.test.d.ts +0 -12
- package/dist/__tests__/skill-author-validate.test.d.ts.map +0 -1
- package/dist/__tests__/skill-author-validate.test.js +0 -156
- package/dist/__tests__/skill-author-validate.test.js.map +0 -1
- package/dist/__tests__/skill-frontmatter-schema.test.d.ts +0 -2
- package/dist/__tests__/skill-frontmatter-schema.test.d.ts.map +0 -1
- package/dist/__tests__/skill-frontmatter-schema.test.js +0 -265
- package/dist/__tests__/skill-frontmatter-schema.test.js.map +0 -1
- package/dist/__tests__/smoke-design-subpaths.test.d.ts +0 -24
- package/dist/__tests__/smoke-design-subpaths.test.d.ts.map +0 -1
- package/dist/__tests__/smoke-design-subpaths.test.js +0 -59
- package/dist/__tests__/smoke-design-subpaths.test.js.map +0 -1
- package/dist/__tests__/standalone-discover-standards.test.d.ts +0 -9
- package/dist/__tests__/standalone-discover-standards.test.d.ts.map +0 -1
- package/dist/__tests__/standalone-discover-standards.test.js +0 -198
- package/dist/__tests__/standalone-discover-standards.test.js.map +0 -1
- package/dist/__tests__/statusline-chips.test.d.ts +0 -10
- package/dist/__tests__/statusline-chips.test.d.ts.map +0 -1
- package/dist/__tests__/statusline-chips.test.js +0 -147
- package/dist/__tests__/statusline-chips.test.js.map +0 -1
- package/dist/__tests__/statusline-install-chip.test.d.ts +0 -12
- package/dist/__tests__/statusline-install-chip.test.d.ts.map +0 -1
- package/dist/__tests__/statusline-install-chip.test.js +0 -122
- package/dist/__tests__/statusline-install-chip.test.js.map +0 -1
- package/dist/__tests__/synthesize-unit.test.d.ts +0 -15
- package/dist/__tests__/synthesize-unit.test.d.ts.map +0 -1
- package/dist/__tests__/synthesize-unit.test.js +0 -138
- package/dist/__tests__/synthesize-unit.test.js.map +0 -1
- package/dist/__tests__/task-close-auto-phase.test.d.ts +0 -13
- package/dist/__tests__/task-close-auto-phase.test.d.ts.map +0 -1
- package/dist/__tests__/task-close-auto-phase.test.js +0 -197
- package/dist/__tests__/task-close-auto-phase.test.js.map +0 -1
- package/dist/__tests__/task-close-merged-closed-not-merged.test.d.ts +0 -19
- package/dist/__tests__/task-close-merged-closed-not-merged.test.d.ts.map +0 -1
- package/dist/__tests__/task-close-merged-closed-not-merged.test.js +0 -177
- package/dist/__tests__/task-close-merged-closed-not-merged.test.js.map +0 -1
- package/dist/__tests__/task-close-merged-pr-mutated.test.d.ts +0 -15
- package/dist/__tests__/task-close-merged-pr-mutated.test.d.ts.map +0 -1
- package/dist/__tests__/task-close-merged-pr-mutated.test.js +0 -210
- package/dist/__tests__/task-close-merged-pr-mutated.test.js.map +0 -1
- package/dist/__tests__/task-close-merged.test.d.ts +0 -17
- package/dist/__tests__/task-close-merged.test.d.ts.map +0 -1
- package/dist/__tests__/task-close-merged.test.js +0 -242
- package/dist/__tests__/task-close-merged.test.js.map +0 -1
- package/dist/__tests__/task-depends-on-cycle.test.d.ts +0 -8
- package/dist/__tests__/task-depends-on-cycle.test.d.ts.map +0 -1
- package/dist/__tests__/task-depends-on-cycle.test.js +0 -62
- package/dist/__tests__/task-depends-on-cycle.test.js.map +0 -1
- package/dist/__tests__/task-execution-mode.test.d.ts +0 -7
- package/dist/__tests__/task-execution-mode.test.d.ts.map +0 -1
- package/dist/__tests__/task-execution-mode.test.js +0 -73
- package/dist/__tests__/task-execution-mode.test.js.map +0 -1
- package/dist/__tests__/task-move.test.d.ts +0 -8
- package/dist/__tests__/task-move.test.d.ts.map +0 -1
- package/dist/__tests__/task-move.test.js +0 -134
- package/dist/__tests__/task-move.test.js.map +0 -1
- package/dist/__tests__/task-prune.test.d.ts +0 -15
- package/dist/__tests__/task-prune.test.d.ts.map +0 -1
- package/dist/__tests__/task-prune.test.js +0 -171
- package/dist/__tests__/task-prune.test.js.map +0 -1
- package/dist/__tests__/task-ref.test.d.ts +0 -2
- package/dist/__tests__/task-ref.test.d.ts.map +0 -1
- package/dist/__tests__/task-ref.test.js +0 -37
- package/dist/__tests__/task-ref.test.js.map +0 -1
- package/dist/__tests__/task-scope-propagation.test.d.ts +0 -8
- package/dist/__tests__/task-scope-propagation.test.d.ts.map +0 -1
- package/dist/__tests__/task-scope-propagation.test.js +0 -174
- package/dist/__tests__/task-scope-propagation.test.js.map +0 -1
- package/dist/__tests__/taste-infer.test.d.ts +0 -13
- package/dist/__tests__/taste-infer.test.d.ts.map +0 -1
- package/dist/__tests__/taste-infer.test.js +0 -640
- package/dist/__tests__/taste-infer.test.js.map +0 -1
- package/dist/__tests__/tdd-iron-law-gate.test.d.ts +0 -10
- package/dist/__tests__/tdd-iron-law-gate.test.d.ts.map +0 -1
- package/dist/__tests__/tdd-iron-law-gate.test.js +0 -207
- package/dist/__tests__/tdd-iron-law-gate.test.js.map +0 -1
- package/dist/__tests__/team-status-liveness.test.d.ts +0 -17
- package/dist/__tests__/team-status-liveness.test.d.ts.map +0 -1
- package/dist/__tests__/team-status-liveness.test.js +0 -127
- package/dist/__tests__/team-status-liveness.test.js.map +0 -1
- package/dist/__tests__/team-status.test.d.ts +0 -13
- package/dist/__tests__/team-status.test.d.ts.map +0 -1
- package/dist/__tests__/team-status.test.js +0 -133
- package/dist/__tests__/team-status.test.js.map +0 -1
- package/dist/__tests__/team-sync.test.d.ts +0 -2
- package/dist/__tests__/team-sync.test.d.ts.map +0 -1
- package/dist/__tests__/team-sync.test.js +0 -292
- package/dist/__tests__/team-sync.test.js.map +0 -1
- package/dist/__tests__/terminal-cli.test.d.ts +0 -9
- package/dist/__tests__/terminal-cli.test.d.ts.map +0 -1
- package/dist/__tests__/terminal-cli.test.js +0 -64
- package/dist/__tests__/terminal-cli.test.js.map +0 -1
- package/dist/__tests__/terminal-socket-client.test.d.ts +0 -8
- package/dist/__tests__/terminal-socket-client.test.d.ts.map +0 -1
- package/dist/__tests__/terminal-socket-client.test.js +0 -130
- package/dist/__tests__/terminal-socket-client.test.js.map +0 -1
- package/dist/__tests__/tokens-record.test.d.ts +0 -12
- package/dist/__tests__/tokens-record.test.d.ts.map +0 -1
- package/dist/__tests__/tokens-record.test.js +0 -136
- package/dist/__tests__/tokens-record.test.js.map +0 -1
- package/dist/__tests__/tokens-state-mirror.test.d.ts +0 -15
- package/dist/__tests__/tokens-state-mirror.test.d.ts.map +0 -1
- package/dist/__tests__/tokens-state-mirror.test.js +0 -190
- package/dist/__tests__/tokens-state-mirror.test.js.map +0 -1
- package/dist/__tests__/tokens-tally.test.d.ts +0 -8
- package/dist/__tests__/tokens-tally.test.d.ts.map +0 -1
- package/dist/__tests__/tokens-tally.test.js +0 -175
- package/dist/__tests__/tokens-tally.test.js.map +0 -1
- package/dist/__tests__/toolchain-detect-path-scoped.test.d.ts +0 -13
- package/dist/__tests__/toolchain-detect-path-scoped.test.d.ts.map +0 -1
- package/dist/__tests__/toolchain-detect-path-scoped.test.js +0 -136
- package/dist/__tests__/toolchain-detect-path-scoped.test.js.map +0 -1
- package/dist/__tests__/transcript.test.d.ts +0 -12
- package/dist/__tests__/transcript.test.d.ts.map +0 -1
- package/dist/__tests__/transcript.test.js +0 -110
- package/dist/__tests__/transcript.test.js.map +0 -1
- package/dist/__tests__/transform-antigravity.test.d.ts +0 -5
- package/dist/__tests__/transform-antigravity.test.d.ts.map +0 -1
- package/dist/__tests__/transform-antigravity.test.js +0 -40
- package/dist/__tests__/transform-antigravity.test.js.map +0 -1
- package/dist/__tests__/transform-augment.test.d.ts +0 -5
- package/dist/__tests__/transform-augment.test.d.ts.map +0 -1
- package/dist/__tests__/transform-augment.test.js +0 -42
- package/dist/__tests__/transform-augment.test.js.map +0 -1
- package/dist/__tests__/transform-claude.test.d.ts +0 -8
- package/dist/__tests__/transform-claude.test.d.ts.map +0 -1
- package/dist/__tests__/transform-claude.test.js +0 -72
- package/dist/__tests__/transform-claude.test.js.map +0 -1
- package/dist/__tests__/transform-cline.test.d.ts +0 -5
- package/dist/__tests__/transform-cline.test.d.ts.map +0 -1
- package/dist/__tests__/transform-cline.test.js +0 -40
- package/dist/__tests__/transform-cline.test.js.map +0 -1
- package/dist/__tests__/transform-codebuddy.test.d.ts +0 -5
- package/dist/__tests__/transform-codebuddy.test.d.ts.map +0 -1
- package/dist/__tests__/transform-codebuddy.test.js +0 -52
- package/dist/__tests__/transform-codebuddy.test.js.map +0 -1
- package/dist/__tests__/transform-codex.test.d.ts +0 -5
- package/dist/__tests__/transform-codex.test.d.ts.map +0 -1
- package/dist/__tests__/transform-codex.test.js +0 -76
- package/dist/__tests__/transform-codex.test.js.map +0 -1
- package/dist/__tests__/transform-copilot.test.d.ts +0 -5
- package/dist/__tests__/transform-copilot.test.d.ts.map +0 -1
- package/dist/__tests__/transform-copilot.test.js +0 -41
- package/dist/__tests__/transform-copilot.test.js.map +0 -1
- package/dist/__tests__/transform-cursor.test.d.ts +0 -5
- package/dist/__tests__/transform-cursor.test.d.ts.map +0 -1
- package/dist/__tests__/transform-cursor.test.js +0 -53
- package/dist/__tests__/transform-cursor.test.js.map +0 -1
- package/dist/__tests__/transform-gemini.test.d.ts +0 -5
- package/dist/__tests__/transform-gemini.test.d.ts.map +0 -1
- package/dist/__tests__/transform-gemini.test.js +0 -50
- package/dist/__tests__/transform-gemini.test.js.map +0 -1
- package/dist/__tests__/transform-kilo.test.d.ts +0 -8
- package/dist/__tests__/transform-kilo.test.d.ts.map +0 -1
- package/dist/__tests__/transform-kilo.test.js +0 -45
- package/dist/__tests__/transform-kilo.test.js.map +0 -1
- package/dist/__tests__/transform-opencode.test.d.ts +0 -5
- package/dist/__tests__/transform-opencode.test.d.ts.map +0 -1
- package/dist/__tests__/transform-opencode.test.js +0 -75
- package/dist/__tests__/transform-opencode.test.js.map +0 -1
- package/dist/__tests__/transform-qwen.test.d.ts +0 -5
- package/dist/__tests__/transform-qwen.test.d.ts.map +0 -1
- package/dist/__tests__/transform-qwen.test.js +0 -43
- package/dist/__tests__/transform-qwen.test.js.map +0 -1
- package/dist/__tests__/transform-trae.test.d.ts +0 -5
- package/dist/__tests__/transform-trae.test.d.ts.map +0 -1
- package/dist/__tests__/transform-trae.test.js +0 -43
- package/dist/__tests__/transform-trae.test.js.map +0 -1
- package/dist/__tests__/transform-windsurf.test.d.ts +0 -5
- package/dist/__tests__/transform-windsurf.test.d.ts.map +0 -1
- package/dist/__tests__/transform-windsurf.test.js +0 -50
- package/dist/__tests__/transform-windsurf.test.js.map +0 -1
- package/dist/__tests__/update-worker.test.d.ts +0 -9
- package/dist/__tests__/update-worker.test.d.ts.map +0 -1
- package/dist/__tests__/update-worker.test.js +0 -84
- package/dist/__tests__/update-worker.test.js.map +0 -1
- package/dist/__tests__/upgrade-layout.test.d.ts +0 -14
- package/dist/__tests__/upgrade-layout.test.d.ts.map +0 -1
- package/dist/__tests__/upgrade-layout.test.js +0 -154
- package/dist/__tests__/upgrade-layout.test.js.map +0 -1
- package/dist/__tests__/validate-evidence.test.d.ts +0 -9
- package/dist/__tests__/validate-evidence.test.d.ts.map +0 -1
- package/dist/__tests__/validate-evidence.test.js +0 -291
- package/dist/__tests__/validate-evidence.test.js.map +0 -1
- package/dist/__tests__/variant-gallery.test.d.ts +0 -13
- package/dist/__tests__/variant-gallery.test.d.ts.map +0 -1
- package/dist/__tests__/variant-gallery.test.js +0 -135
- package/dist/__tests__/variant-gallery.test.js.map +0 -1
- package/dist/__tests__/variant-pick.test.d.ts +0 -11
- package/dist/__tests__/variant-pick.test.d.ts.map +0 -1
- package/dist/__tests__/variant-pick.test.js +0 -89
- package/dist/__tests__/variant-pick.test.js.map +0 -1
- package/dist/__tests__/variant-pool.test.d.ts +0 -18
- package/dist/__tests__/variant-pool.test.d.ts.map +0 -1
- package/dist/__tests__/variant-pool.test.js +0 -143
- package/dist/__tests__/variant-pool.test.js.map +0 -1
- package/dist/__tests__/wfrun-dag.test.d.ts +0 -5
- package/dist/__tests__/wfrun-dag.test.d.ts.map +0 -1
- package/dist/__tests__/wfrun-dag.test.js +0 -64
- package/dist/__tests__/wfrun-dag.test.js.map +0 -1
- package/dist/__tests__/wfrun-input-flags.test.d.ts +0 -7
- package/dist/__tests__/wfrun-input-flags.test.d.ts.map +0 -1
- package/dist/__tests__/wfrun-input-flags.test.js +0 -41
- package/dist/__tests__/wfrun-input-flags.test.js.map +0 -1
- package/dist/__tests__/wfrun-interpolate.test.d.ts +0 -5
- package/dist/__tests__/wfrun-interpolate.test.d.ts.map +0 -1
- package/dist/__tests__/wfrun-interpolate.test.js +0 -62
- package/dist/__tests__/wfrun-interpolate.test.js.map +0 -1
- package/dist/__tests__/wfrun-parse.test.d.ts +0 -7
- package/dist/__tests__/wfrun-parse.test.d.ts.map +0 -1
- package/dist/__tests__/wfrun-parse.test.js +0 -144
- package/dist/__tests__/wfrun-parse.test.js.map +0 -1
- package/dist/__tests__/workflow-destroy-archive.test.d.ts +0 -15
- package/dist/__tests__/workflow-destroy-archive.test.d.ts.map +0 -1
- package/dist/__tests__/workflow-destroy-archive.test.js +0 -134
- package/dist/__tests__/workflow-destroy-archive.test.js.map +0 -1
- package/dist/__tests__/workflow.test.d.ts +0 -2
- package/dist/__tests__/workflow.test.d.ts.map +0 -1
- package/dist/__tests__/workflow.test.js +0 -184
- package/dist/__tests__/workflow.test.js.map +0 -1
- package/dist/__tests__/worktree-install-bootstrap-hook.test.d.ts +0 -14
- package/dist/__tests__/worktree-install-bootstrap-hook.test.d.ts.map +0 -1
- package/dist/__tests__/worktree-install-bootstrap-hook.test.js +0 -111
- package/dist/__tests__/worktree-install-bootstrap-hook.test.js.map +0 -1
- package/dist/__tests__/worktree-install-dead-pid.test.d.ts +0 -10
- package/dist/__tests__/worktree-install-dead-pid.test.d.ts.map +0 -1
- package/dist/__tests__/worktree-install-dead-pid.test.js +0 -105
- package/dist/__tests__/worktree-install-dead-pid.test.js.map +0 -1
- package/dist/__tests__/worktree-install-dispatch.test.d.ts +0 -15
- package/dist/__tests__/worktree-install-dispatch.test.d.ts.map +0 -1
- package/dist/__tests__/worktree-install-dispatch.test.js +0 -131
- package/dist/__tests__/worktree-install-dispatch.test.js.map +0 -1
- package/dist/__tests__/worktree-install-escape-hatches.test.d.ts +0 -12
- package/dist/__tests__/worktree-install-escape-hatches.test.d.ts.map +0 -1
- package/dist/__tests__/worktree-install-escape-hatches.test.js +0 -97
- package/dist/__tests__/worktree-install-escape-hatches.test.js.map +0 -1
- package/dist/__tests__/worktree-install-manifest-scanner.test.d.ts +0 -9
- package/dist/__tests__/worktree-install-manifest-scanner.test.d.ts.map +0 -1
- package/dist/__tests__/worktree-install-manifest-scanner.test.js +0 -175
- package/dist/__tests__/worktree-install-manifest-scanner.test.js.map +0 -1
- package/dist/__tests__/worktree-install-multi-lockfile.test.d.ts +0 -11
- package/dist/__tests__/worktree-install-multi-lockfile.test.d.ts.map +0 -1
- package/dist/__tests__/worktree-install-multi-lockfile.test.js +0 -70
- package/dist/__tests__/worktree-install-multi-lockfile.test.js.map +0 -1
- package/dist/schemas/__tests__/feature-registry.test.d.ts +0 -2
- package/dist/schemas/__tests__/feature-registry.test.d.ts.map +0 -1
- package/dist/schemas/__tests__/feature-registry.test.js +0 -226
- package/dist/schemas/__tests__/feature-registry.test.js.map +0 -1
- package/dist/schemas/__tests__/quick-task.test.d.ts +0 -2
- package/dist/schemas/__tests__/quick-task.test.d.ts.map +0 -1
- package/dist/schemas/__tests__/quick-task.test.js +0 -174
- package/dist/schemas/__tests__/quick-task.test.js.map +0 -1
- package/dist/types/__tests__/coordination.test.d.ts +0 -2
- package/dist/types/__tests__/coordination.test.d.ts.map +0 -1
- package/dist/types/__tests__/coordination.test.js +0 -117
- package/dist/types/__tests__/coordination.test.js.map +0 -1
- package/dist/types/__tests__/qa-scoring.test.d.ts +0 -8
- package/dist/types/__tests__/qa-scoring.test.d.ts.map +0 -1
- package/dist/types/__tests__/qa-scoring.test.js +0 -83
- package/dist/types/__tests__/qa-scoring.test.js.map +0 -1
- package/docs/api.md +0 -425
- package/docs/artifact-lifecycle.md +0 -130
- package/docs/design-taste.md +0 -187
- package/docs/design-tokens.md +0 -147
- package/docs/docs-coherence.md +0 -103
- package/docs/intents.md +0 -119
- package/docs/output-style.md +0 -216
- package/docs/plugin-distribution.md +0 -197
- package/docs/profiles.md +0 -128
- package/docs/seeds.md +0 -221
- package/docs/skill-authoring.md +0 -172
- package/docs/standalone.md +0 -168
- package/docs/workflows.md +0 -194
- package/docs/worktree-ecosystems.md +0 -345
|
@@ -1,640 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* taste-infer.test.ts — unit tests for C43 `apt-tools taste-infer`.
|
|
3
|
-
*
|
|
4
|
-
* Covers:
|
|
5
|
-
* - extract-repo.mjs on the bundled fixture — pulls ≥ 3 hex colors, ≥ 1
|
|
6
|
-
* font family, ≥ 1 spacing value (AC-5).
|
|
7
|
-
* - Synthesis fallback on minimal input (AC-6) — added in subtask 4.
|
|
8
|
-
* - cmdTasteInfer dispatch + flags (AC-7/8/9) — added in subtask 5.
|
|
9
|
-
* - Prompt structure assertion (c43↔c44 contract) — added in subtask 6.
|
|
10
|
-
* - I-1 no-LLM-imports invariant (AC-4) — added in subtask 9.
|
|
11
|
-
*/
|
|
12
|
-
import { mkdtempSync, readFileSync, rmSync } from 'node:fs';
|
|
13
|
-
import { tmpdir } from 'node:os';
|
|
14
|
-
import { join, resolve } from 'node:path';
|
|
15
|
-
import { afterEach, describe, expect, it, vi } from 'vitest';
|
|
16
|
-
import { detectMode, writeLibraryEntry } from '../cli/commands/taste-infer.mjs';
|
|
17
|
-
import { extractFromRepo } from '../cli/design/extract-repo.mjs';
|
|
18
|
-
import { extractFromUrl, TasteInferAuthWall } from '../cli/design/extract-url.mjs';
|
|
19
|
-
import { validateDesignFrontmatter } from '../cli/design/frontmatter-schema.mjs';
|
|
20
|
-
import { clusterColors, parseColor, renderDesignMarkdown, synthesizeDesign, synthesizeDeterministic, } from '../cli/design/synthesize.mjs';
|
|
21
|
-
import { validateDesignMarkdown } from '../cli/design/validate.mjs';
|
|
22
|
-
const FIXTURES = resolve(__dirname, 'fixtures', 'taste-infer');
|
|
23
|
-
describe('extractFromRepo (C43 repo mode)', () => {
|
|
24
|
-
it('AC-5: extracts ≥ 3 distinct hex colors + ≥ 1 font + ≥ 1 spacing from the fixture', async () => {
|
|
25
|
-
const result = await extractFromRepo(FIXTURES);
|
|
26
|
-
const hexColors = result.colors.filter((c) => /^#[0-9a-f]{3,8}$/.test(c.value));
|
|
27
|
-
expect(hexColors.length).toBeGreaterThanOrEqual(3);
|
|
28
|
-
expect(result.fonts.length).toBeGreaterThanOrEqual(1);
|
|
29
|
-
expect(result.spacing.length).toBeGreaterThanOrEqual(1);
|
|
30
|
-
// Target + mode metadata round-trips.
|
|
31
|
-
expect(result.mode).toBe('repo');
|
|
32
|
-
expect(result.target).toBe(FIXTURES);
|
|
33
|
-
});
|
|
34
|
-
it('weights colors seen in both CSS and Babel sources more heavily', async () => {
|
|
35
|
-
const result = await extractFromRepo(FIXTURES);
|
|
36
|
-
const blue = result.colors.find((c) => c.value === '#2563eb');
|
|
37
|
-
expect(blue).toBeDefined();
|
|
38
|
-
// The fixture sets #2563eb in sample.css (multiple times) and in
|
|
39
|
-
// Button.tsx — the merged weight should exceed a color that only
|
|
40
|
-
// appears once.
|
|
41
|
-
const uniqueColors = result.colors.filter((c) => c.weight === 1);
|
|
42
|
-
expect(blue?.weight ?? 0).toBeGreaterThan(uniqueColors[0]?.weight ?? 0);
|
|
43
|
-
});
|
|
44
|
-
});
|
|
45
|
-
// --- URL mode via Playwright mock ---------------------------------------
|
|
46
|
-
/**
|
|
47
|
-
* Build a fake Playwright chromium launcher that answers `page.evaluate` with
|
|
48
|
-
* a canned sample payload. This lets the test exercise the full URL-mode
|
|
49
|
-
* extraction pipeline (css-tree parsing + computed-style merging +
|
|
50
|
-
* screenshot path) without launching a browser.
|
|
51
|
-
*/
|
|
52
|
-
function makeFakeLauncher(sample) {
|
|
53
|
-
let closed = false;
|
|
54
|
-
const launched = { closed: false };
|
|
55
|
-
const page = {
|
|
56
|
-
goto: async () => ({ status: () => sample.status ?? 200 }),
|
|
57
|
-
evaluate: async (script, ..._args) => {
|
|
58
|
-
// The first evaluate call is the long BROWSER_SCRIPT; subsequent
|
|
59
|
-
// calls come from the screenshot loop and return a number.
|
|
60
|
-
if (typeof script === 'string' && script.includes('scrollTo')) {
|
|
61
|
-
return 0;
|
|
62
|
-
}
|
|
63
|
-
return sample;
|
|
64
|
-
},
|
|
65
|
-
screenshot: async () => undefined,
|
|
66
|
-
};
|
|
67
|
-
const context = { newPage: async () => page };
|
|
68
|
-
const browser = {
|
|
69
|
-
newContext: async () => context,
|
|
70
|
-
close: async () => {
|
|
71
|
-
closed = true;
|
|
72
|
-
launched.closed = true;
|
|
73
|
-
},
|
|
74
|
-
};
|
|
75
|
-
const chromium = {
|
|
76
|
-
launch: async () => browser,
|
|
77
|
-
};
|
|
78
|
-
return { chromium, isClosed: () => closed, launched };
|
|
79
|
-
}
|
|
80
|
-
describe('extractFromUrl (C43 url mode, mocked chromium)', () => {
|
|
81
|
-
it('pulls colors from inline <style> and computed samples', async () => {
|
|
82
|
-
const sample = {
|
|
83
|
-
stylesheetTexts: [
|
|
84
|
-
`body { background: #0f172a; color: #f8fafc; font-family: 'Inter', sans-serif; font-size: 16px; padding: 24px; border-radius: 8px; }`,
|
|
85
|
-
`.btn { background: #2563eb; padding: 12px 16px; box-shadow: 0 1px 2px rgba(0,0,0,0.3); }`,
|
|
86
|
-
],
|
|
87
|
-
computed: [
|
|
88
|
-
{
|
|
89
|
-
selector: 'body',
|
|
90
|
-
weight: 5,
|
|
91
|
-
color: 'rgb(248, 250, 252)',
|
|
92
|
-
backgroundColor: 'rgb(15, 23, 42)',
|
|
93
|
-
fontFamily: 'Inter, sans-serif',
|
|
94
|
-
fontSize: '16px',
|
|
95
|
-
lineHeight: '24px',
|
|
96
|
-
padding: '24px',
|
|
97
|
-
margin: '0px',
|
|
98
|
-
borderRadius: '0px',
|
|
99
|
-
boxShadow: 'none',
|
|
100
|
-
transitionDuration: '0s',
|
|
101
|
-
transitionTimingFunction: 'ease',
|
|
102
|
-
},
|
|
103
|
-
{
|
|
104
|
-
selector: 'button',
|
|
105
|
-
weight: 3,
|
|
106
|
-
color: 'rgb(248, 250, 252)',
|
|
107
|
-
backgroundColor: 'rgb(37, 99, 235)',
|
|
108
|
-
fontFamily: 'Inter, sans-serif',
|
|
109
|
-
fontSize: '14px',
|
|
110
|
-
lineHeight: '20px',
|
|
111
|
-
padding: '12px 16px',
|
|
112
|
-
margin: '0px',
|
|
113
|
-
borderRadius: '8px',
|
|
114
|
-
boxShadow: 'rgba(0, 0, 0, 0.3) 0px 1px 2px 0px',
|
|
115
|
-
transitionDuration: '150ms',
|
|
116
|
-
transitionTimingFunction: 'ease-in-out',
|
|
117
|
-
},
|
|
118
|
-
],
|
|
119
|
-
};
|
|
120
|
-
const { chromium, isClosed } = makeFakeLauncher(sample);
|
|
121
|
-
const result = await extractFromUrl('https://example.test/', {
|
|
122
|
-
launcher: { chromium },
|
|
123
|
-
screenshots: false,
|
|
124
|
-
});
|
|
125
|
-
expect(result.mode).toBe('url');
|
|
126
|
-
expect(result.target).toBe('https://example.test/');
|
|
127
|
-
expect(result.colors.length).toBeGreaterThanOrEqual(2);
|
|
128
|
-
expect(result.fonts.some((f) => f.family === 'Inter')).toBe(true);
|
|
129
|
-
expect(result.spacing.length).toBeGreaterThanOrEqual(1);
|
|
130
|
-
expect(isClosed()).toBe(true);
|
|
131
|
-
});
|
|
132
|
-
it('raises TasteInferAuthWall on visible password input', async () => {
|
|
133
|
-
const { chromium } = makeFakeLauncher({
|
|
134
|
-
stylesheetTexts: [],
|
|
135
|
-
computed: [],
|
|
136
|
-
hasAuthWall: true,
|
|
137
|
-
});
|
|
138
|
-
await expect(extractFromUrl('https://example.test/login', {
|
|
139
|
-
launcher: { chromium },
|
|
140
|
-
screenshots: false,
|
|
141
|
-
})).rejects.toBeInstanceOf(TasteInferAuthWall);
|
|
142
|
-
});
|
|
143
|
-
it('raises TasteInferAuthWall on HTTP 401/403 response', async () => {
|
|
144
|
-
const { chromium } = makeFakeLauncher({
|
|
145
|
-
stylesheetTexts: [],
|
|
146
|
-
computed: [],
|
|
147
|
-
status: 403,
|
|
148
|
-
});
|
|
149
|
-
await expect(extractFromUrl('https://example.test/private', {
|
|
150
|
-
launcher: { chromium },
|
|
151
|
-
screenshots: false,
|
|
152
|
-
})).rejects.toBeInstanceOf(TasteInferAuthWall);
|
|
153
|
-
});
|
|
154
|
-
});
|
|
155
|
-
// --- Synthesis --------------------------------------------------------
|
|
156
|
-
function makeExtracted(overrides = {}) {
|
|
157
|
-
return {
|
|
158
|
-
colors: [
|
|
159
|
-
{ value: '#0f172a', weight: 10, source: 'css' },
|
|
160
|
-
{ value: '#f8fafc', weight: 8, source: 'css' },
|
|
161
|
-
{ value: '#2563eb', weight: 6, source: 'css' },
|
|
162
|
-
{ value: '#334155', weight: 3, source: 'css' },
|
|
163
|
-
{ value: '#1e293b', weight: 2, source: 'css' },
|
|
164
|
-
],
|
|
165
|
-
fonts: [{ family: 'Inter', weight: 5 }],
|
|
166
|
-
spacing: [
|
|
167
|
-
{ value: '8px', weight: 4 },
|
|
168
|
-
{ value: '16px', weight: 3 },
|
|
169
|
-
{ value: '24px', weight: 2 },
|
|
170
|
-
],
|
|
171
|
-
radii: [
|
|
172
|
-
{ value: '4px', weight: 2 },
|
|
173
|
-
{ value: '8px', weight: 1 },
|
|
174
|
-
],
|
|
175
|
-
shadows: [{ value: '0 1px 2px rgba(0,0,0,0.3)', weight: 1 }],
|
|
176
|
-
motion: {},
|
|
177
|
-
target: 'https://example.test/',
|
|
178
|
-
mode: 'url',
|
|
179
|
-
...overrides,
|
|
180
|
-
};
|
|
181
|
-
}
|
|
182
|
-
describe('parseColor helper', () => {
|
|
183
|
-
it('parses 3/6/8-digit hex', () => {
|
|
184
|
-
expect(parseColor('#fff')).toEqual({ r: 255, g: 255, b: 255, a: 1 });
|
|
185
|
-
expect(parseColor('#0f172a')).toEqual({ r: 15, g: 23, b: 42, a: 1 });
|
|
186
|
-
const p = parseColor('#0f172aff');
|
|
187
|
-
expect(p?.r).toBe(15);
|
|
188
|
-
expect(p?.a).toBeCloseTo(1, 2);
|
|
189
|
-
});
|
|
190
|
-
it('parses rgb/rgba with commas or slash', () => {
|
|
191
|
-
expect(parseColor('rgb(37, 99, 235)')).toEqual({ r: 37, g: 99, b: 235, a: 1 });
|
|
192
|
-
const rgba = parseColor('rgba(0, 0, 0, 0.3)');
|
|
193
|
-
expect(rgba?.a).toBeCloseTo(0.3, 2);
|
|
194
|
-
});
|
|
195
|
-
it('returns null on garbage', () => {
|
|
196
|
-
expect(parseColor('notacolor')).toBeNull();
|
|
197
|
-
expect(parseColor('')).toBeNull();
|
|
198
|
-
});
|
|
199
|
-
});
|
|
200
|
-
describe('clusterColors helper', () => {
|
|
201
|
-
it('groups colors within the RGB delta threshold', () => {
|
|
202
|
-
const entries = [
|
|
203
|
-
{ value: '#0f172a', weight: 5, parsed: { r: 15, g: 23, b: 42, a: 1 } },
|
|
204
|
-
{ value: '#0e1829', weight: 3, parsed: { r: 14, g: 24, b: 41, a: 1 } },
|
|
205
|
-
{ value: '#f8fafc', weight: 8, parsed: { r: 248, g: 250, b: 252, a: 1 } },
|
|
206
|
-
];
|
|
207
|
-
const clusters = clusterColors(entries, 4);
|
|
208
|
-
expect(clusters.length).toBe(2);
|
|
209
|
-
const [first, second] = clusters;
|
|
210
|
-
// Cluster with the highest totalWeight first.
|
|
211
|
-
expect(first.totalWeight).toBe(8);
|
|
212
|
-
expect(second.totalWeight).toBe(8); // 5 + 3 collapsed
|
|
213
|
-
});
|
|
214
|
-
});
|
|
215
|
-
describe('synthesizeDeterministic (C43 fallback)', () => {
|
|
216
|
-
it('AC-6: produces schema-valid frontmatter on a minimal 1-color / 1-font input', () => {
|
|
217
|
-
const extracted = makeExtracted({
|
|
218
|
-
colors: [{ value: '#7c3aed', weight: 1, source: 'css' }],
|
|
219
|
-
fonts: [{ family: 'Inter', weight: 1 }],
|
|
220
|
-
spacing: [],
|
|
221
|
-
radii: [],
|
|
222
|
-
shadows: [],
|
|
223
|
-
});
|
|
224
|
-
const { frontmatter, body, path } = synthesizeDeterministic(extracted);
|
|
225
|
-
expect(path).toBe('fallback');
|
|
226
|
-
const v = validateDesignFrontmatter(frontmatter);
|
|
227
|
-
expect(v.success).toBe(true);
|
|
228
|
-
// Body includes the required Stitch section headers.
|
|
229
|
-
expect(body).toMatch(/## 1\. Visual Theme/);
|
|
230
|
-
expect(body).toMatch(/## 2\. Color Palette/);
|
|
231
|
-
expect(body).toMatch(/## 3\. Typography/);
|
|
232
|
-
});
|
|
233
|
-
it('assigns reasonable bg / text / accent roles on a 5-color dark palette', () => {
|
|
234
|
-
const extracted = makeExtracted();
|
|
235
|
-
const { frontmatter } = synthesizeDeterministic(extracted);
|
|
236
|
-
const { colors } = frontmatter.tokens;
|
|
237
|
-
// Darkest candidate is #0f172a (luminance ~0.01). Lightest is #f8fafc.
|
|
238
|
-
// Accent should be the chromatic blue.
|
|
239
|
-
expect(colors.bg.toLowerCase()).toBe('#0f172a');
|
|
240
|
-
expect(colors.text.toLowerCase()).toBe('#f8fafc');
|
|
241
|
-
expect(colors.accent.toLowerCase()).toBe('#2563eb');
|
|
242
|
-
});
|
|
243
|
-
it('inverts bg/text polarity for light-mode sites', () => {
|
|
244
|
-
const extracted = makeExtracted({
|
|
245
|
-
colors: [
|
|
246
|
-
{ value: '#ffffff', weight: 12, source: 'css' },
|
|
247
|
-
{ value: '#111111', weight: 8, source: 'css' },
|
|
248
|
-
{ value: '#5a67d8', weight: 4, source: 'css' },
|
|
249
|
-
{ value: '#edf2f7', weight: 3, source: 'css' },
|
|
250
|
-
{ value: '#cbd5e0', weight: 2, source: 'css' },
|
|
251
|
-
],
|
|
252
|
-
});
|
|
253
|
-
const { frontmatter } = synthesizeDeterministic(extracted);
|
|
254
|
-
const { colors } = frontmatter.tokens;
|
|
255
|
-
expect(colors.bg.toLowerCase()).toBe('#ffffff');
|
|
256
|
-
expect(colors.text.toLowerCase()).toBe('#111111');
|
|
257
|
-
});
|
|
258
|
-
});
|
|
259
|
-
describe('synthesizeDesign (routing + LLM branch)', () => {
|
|
260
|
-
it('opts.provider === "none" forces fallback without calling the LLM', async () => {
|
|
261
|
-
const result = await synthesizeDesign(makeExtracted(), { provider: 'none' });
|
|
262
|
-
expect(result.path).toBe('fallback');
|
|
263
|
-
});
|
|
264
|
-
it('opts.dry forces fallback', async () => {
|
|
265
|
-
const result = await synthesizeDesign(makeExtracted(), { dry: true });
|
|
266
|
-
expect(result.path).toBe('fallback');
|
|
267
|
-
});
|
|
268
|
-
it('LLM path returns llm when the mocked provider emits valid frontmatter', async () => {
|
|
269
|
-
const llmResponse = `---\n${`meta:\n name: Mocked\n version: "0.1.0"\n updated: "2026-04-19"\ntokens:\n colors:\n bg: "#000000"\n surface: "#111111"\n accent: "#7c3aed"\n text: "#ffffff"\n border: "#333333"\n typography:\n families:\n primary: "Inter"\n scale:\n - "14px"\n - "16px"\n - "20px"\n spacing:\n - "8px"\n - "16px"\n`}---\n\n# mocked body\n`;
|
|
270
|
-
const result = await synthesizeDesign(makeExtracted(), {
|
|
271
|
-
provider: 'google',
|
|
272
|
-
providerCall: async () => llmResponse,
|
|
273
|
-
});
|
|
274
|
-
expect(result.path).toBe('llm');
|
|
275
|
-
const v = validateDesignFrontmatter(result.frontmatter);
|
|
276
|
-
expect(v.success).toBe(true);
|
|
277
|
-
});
|
|
278
|
-
it('LLM path falls back when the provider emits unparseable response', async () => {
|
|
279
|
-
const result = await synthesizeDesign(makeExtracted(), {
|
|
280
|
-
provider: 'google',
|
|
281
|
-
providerCall: async () => 'not yaml',
|
|
282
|
-
});
|
|
283
|
-
expect(result.path).toBe('fallback');
|
|
284
|
-
});
|
|
285
|
-
it('LLM path falls back when the provider emits schema-invalid frontmatter', async () => {
|
|
286
|
-
// Missing required tokens.* keys → validateDesignFrontmatter fails.
|
|
287
|
-
const bad = `---\nmeta:\n name: x\n version: "0.1"\n updated: "2026"\ntokens:\n colors: {}\n---\nbody\n`;
|
|
288
|
-
const result = await synthesizeDesign(makeExtracted(), {
|
|
289
|
-
provider: 'google',
|
|
290
|
-
providerCall: async () => bad,
|
|
291
|
-
});
|
|
292
|
-
expect(result.path).toBe('fallback');
|
|
293
|
-
});
|
|
294
|
-
});
|
|
295
|
-
describe('renderDesignMarkdown (end-to-end shape)', () => {
|
|
296
|
-
it('round-trips through validateDesignMarkdown clean', async () => {
|
|
297
|
-
const { frontmatter, body } = synthesizeDeterministic(makeExtracted());
|
|
298
|
-
const md = await renderDesignMarkdown(frontmatter, body);
|
|
299
|
-
const result = validateDesignMarkdown(md);
|
|
300
|
-
expect(result.errors).toEqual([]);
|
|
301
|
-
expect(result.ok).toBe(true);
|
|
302
|
-
});
|
|
303
|
-
});
|
|
304
|
-
// --- cmdTasteInfer — mode detection + library write -----------------------
|
|
305
|
-
describe('detectMode (C43 CLI dispatch)', () => {
|
|
306
|
-
it('AC-9: owner/repo → github mode', () => {
|
|
307
|
-
expect(detectMode('linear/linear')).toBe('github');
|
|
308
|
-
expect(detectMode('facebook/react')).toBe('github');
|
|
309
|
-
});
|
|
310
|
-
it('http/https/file URLs → url mode', () => {
|
|
311
|
-
expect(detectMode('https://linear.app')).toBe('url');
|
|
312
|
-
expect(detectMode('http://example.test')).toBe('url');
|
|
313
|
-
expect(detectMode('file:///tmp/fixture.html')).toBe('url');
|
|
314
|
-
});
|
|
315
|
-
it('absolute + relative paths → repo mode', () => {
|
|
316
|
-
expect(detectMode('/abs/path')).toBe('repo');
|
|
317
|
-
expect(detectMode('./rel/path')).toBe('repo');
|
|
318
|
-
expect(detectMode('../parent')).toBe('repo');
|
|
319
|
-
expect(detectMode('~/home')).toBe('repo');
|
|
320
|
-
});
|
|
321
|
-
it('existing local directory → repo mode, even without a leading slash', () => {
|
|
322
|
-
const tmp = mkdtempSync(join(tmpdir(), 'apt-detect-'));
|
|
323
|
-
try {
|
|
324
|
-
// Passing a bare basename that actually exists — should be repo mode.
|
|
325
|
-
const cwd = process.cwd();
|
|
326
|
-
process.chdir(tmp);
|
|
327
|
-
try {
|
|
328
|
-
// `owner/repo`-shaped but an existing dir: we don't make a
|
|
329
|
-
// directory with `/`, just verify bare path handling below.
|
|
330
|
-
expect(detectMode(tmp)).toBe('repo');
|
|
331
|
-
}
|
|
332
|
-
finally {
|
|
333
|
-
process.chdir(cwd);
|
|
334
|
-
}
|
|
335
|
-
}
|
|
336
|
-
finally {
|
|
337
|
-
rmSync(tmp, { recursive: true, force: true });
|
|
338
|
-
}
|
|
339
|
-
});
|
|
340
|
-
it('empty / malformed falls through to repo (caller validates positional arg)', () => {
|
|
341
|
-
expect(detectMode('')).toBe('repo');
|
|
342
|
-
expect(detectMode('some arbitrary prose with spaces')).toBe('repo');
|
|
343
|
-
});
|
|
344
|
-
});
|
|
345
|
-
describe('writeLibraryEntry (C43 --add-to-library)', () => {
|
|
346
|
-
const mkTmp = () => mkdtempSync(join(tmpdir(), 'apt-taste-lib-'));
|
|
347
|
-
let envHomeCache;
|
|
348
|
-
afterEach(() => {
|
|
349
|
-
if (envHomeCache !== undefined) {
|
|
350
|
-
process.env.APT_TASTE_LIBRARY_HOME = envHomeCache;
|
|
351
|
-
}
|
|
352
|
-
else {
|
|
353
|
-
delete process.env.APT_TASTE_LIBRARY_HOME;
|
|
354
|
-
}
|
|
355
|
-
});
|
|
356
|
-
it('AC-8: writes DESIGN.md + provenance.yaml to HOME/.aperant/design-library/<slug>/', async () => {
|
|
357
|
-
const root = mkTmp();
|
|
358
|
-
envHomeCache = process.env.APT_TASTE_LIBRARY_HOME;
|
|
359
|
-
process.env.APT_TASTE_LIBRARY_HOME = root;
|
|
360
|
-
try {
|
|
361
|
-
const { frontmatter, body } = synthesizeDeterministic(makeExtracted());
|
|
362
|
-
const designMd = await renderDesignMarkdown(frontmatter, body);
|
|
363
|
-
const path = writeLibraryEntry({
|
|
364
|
-
slug: 'example-brand',
|
|
365
|
-
designMd,
|
|
366
|
-
target: 'https://example.test',
|
|
367
|
-
mode: 'url',
|
|
368
|
-
force: false,
|
|
369
|
-
});
|
|
370
|
-
expect(path).toContain('example-brand');
|
|
371
|
-
expect(readFileSync(path, 'utf-8')).toMatch(/^---\n/);
|
|
372
|
-
const provenance = readFileSync(join(root, 'example-brand', 'provenance.yaml'), 'utf-8');
|
|
373
|
-
expect(provenance).toMatch(/source:\s*taste-infer/);
|
|
374
|
-
expect(provenance).toMatch(/target:\s*['"]?https:\/\/example\.test['"]?/);
|
|
375
|
-
expect(provenance).toMatch(/mode:\s*url/);
|
|
376
|
-
}
|
|
377
|
-
finally {
|
|
378
|
-
rmSync(root, { recursive: true, force: true });
|
|
379
|
-
}
|
|
380
|
-
});
|
|
381
|
-
it('refuses to overwrite an existing entry without --force', async () => {
|
|
382
|
-
const root = mkTmp();
|
|
383
|
-
envHomeCache = process.env.APT_TASTE_LIBRARY_HOME;
|
|
384
|
-
process.env.APT_TASTE_LIBRARY_HOME = root;
|
|
385
|
-
try {
|
|
386
|
-
const { frontmatter, body } = synthesizeDeterministic(makeExtracted());
|
|
387
|
-
const designMd = await renderDesignMarkdown(frontmatter, body);
|
|
388
|
-
writeLibraryEntry({ slug: 'dup', designMd, target: 't', mode: 'url', force: false });
|
|
389
|
-
expect(() => writeLibraryEntry({ slug: 'dup', designMd, target: 't', mode: 'url', force: false })).toThrowError(/already exists/);
|
|
390
|
-
// --force overwrites.
|
|
391
|
-
expect(() => writeLibraryEntry({ slug: 'dup', designMd, target: 't', mode: 'url', force: true })).not.toThrow();
|
|
392
|
-
}
|
|
393
|
-
finally {
|
|
394
|
-
rmSync(root, { recursive: true, force: true });
|
|
395
|
-
}
|
|
396
|
-
});
|
|
397
|
-
});
|
|
398
|
-
describe('cmdTasteInfer — end-to-end dispatch (mocked extractors)', () => {
|
|
399
|
-
/**
|
|
400
|
-
* Invokes cmdTasteInfer with vi.mock to replace the extractors so we can
|
|
401
|
-
* run the full dispatch + synthesis + validation + write path without
|
|
402
|
-
* touching real Playwright / css-tree input. We capture stdout via a
|
|
403
|
-
* spy rather than spawning the CLI.
|
|
404
|
-
*/
|
|
405
|
-
it('AC-7: missing optional dep (playwright) → structured hint, exit 1', async () => {
|
|
406
|
-
// Arrange: dynamic module-replace extract-url so it throws
|
|
407
|
-
// TasteInferMissingDep on call. We stub only for this test scope.
|
|
408
|
-
vi.resetModules();
|
|
409
|
-
vi.doMock('../cli/design/extract-url.mjs', async () => {
|
|
410
|
-
class TasteInferMissingDep extends Error {
|
|
411
|
-
dep;
|
|
412
|
-
hint;
|
|
413
|
-
constructor() {
|
|
414
|
-
super('taste-infer requires the optional dependency playwright');
|
|
415
|
-
this.dep = 'playwright';
|
|
416
|
-
this.name = 'TasteInferMissingDep';
|
|
417
|
-
this.hint = 'run: pnpm add -D playwright && npx playwright install chromium';
|
|
418
|
-
}
|
|
419
|
-
}
|
|
420
|
-
return {
|
|
421
|
-
extractFromUrl: () => {
|
|
422
|
-
throw new TasteInferMissingDep();
|
|
423
|
-
},
|
|
424
|
-
TasteInferMissingDep,
|
|
425
|
-
TasteInferAuthWall: class extends Error {
|
|
426
|
-
},
|
|
427
|
-
};
|
|
428
|
-
});
|
|
429
|
-
const mod = await import('../cli/commands/taste-infer.mjs');
|
|
430
|
-
try {
|
|
431
|
-
// Post-S15: cmdTasteInfer returns the {envelope, exitCode} tuple
|
|
432
|
-
// directly instead of calling process.stdout.write + process.exit.
|
|
433
|
-
const result = await mod.cmdTasteInfer('https://example.test', [
|
|
434
|
-
'--out',
|
|
435
|
-
'/tmp/nope.md',
|
|
436
|
-
'--force',
|
|
437
|
-
]);
|
|
438
|
-
expect(result.exitCode).toBe(1);
|
|
439
|
-
const parsed = result.envelope;
|
|
440
|
-
expect(parsed.status).toBe('error');
|
|
441
|
-
expect(parsed.command).toBe('taste-infer');
|
|
442
|
-
expect(parsed.error).toMatch(/playwright is not installed/);
|
|
443
|
-
expect(parsed.hint).toMatch(/playwright install chromium/);
|
|
444
|
-
}
|
|
445
|
-
finally {
|
|
446
|
-
vi.doUnmock('../cli/design/extract-url.mjs');
|
|
447
|
-
vi.resetModules();
|
|
448
|
-
}
|
|
449
|
-
});
|
|
450
|
-
it('writes a valid DESIGN.md from the bundled fixture (repo mode)', async () => {
|
|
451
|
-
// Use the real extractor against the bundled fixture.
|
|
452
|
-
const { cmdTasteInfer } = await import('../cli/commands/taste-infer.mjs');
|
|
453
|
-
const tmp = mkdtempSync(join(tmpdir(), 'apt-taste-out-'));
|
|
454
|
-
const outPath = join(tmp, 'DESIGN.md');
|
|
455
|
-
try {
|
|
456
|
-
// Post-S15: cmdTasteInfer returns the {envelope, exitCode} tuple
|
|
457
|
-
// directly. The success envelope is on result.envelope.
|
|
458
|
-
const result = await cmdTasteInfer(FIXTURES, ['--out', outPath, '--no-synthesize']);
|
|
459
|
-
expect(result.exitCode).toBe(0);
|
|
460
|
-
const payload = result.envelope;
|
|
461
|
-
expect(payload.status).toBe('ok');
|
|
462
|
-
expect(payload.command).toBe('taste-infer');
|
|
463
|
-
expect(payload.mode).toBe('repo');
|
|
464
|
-
expect(payload.written).toBe(outPath);
|
|
465
|
-
expect(payload.synthesis).toBe('skipped');
|
|
466
|
-
// DESIGN.md passes the validator.
|
|
467
|
-
const written = readFileSync(outPath, 'utf-8');
|
|
468
|
-
const v = validateDesignMarkdown(written);
|
|
469
|
-
expect(v.errors).toEqual([]);
|
|
470
|
-
}
|
|
471
|
-
finally {
|
|
472
|
-
rmSync(tmp, { recursive: true, force: true });
|
|
473
|
-
}
|
|
474
|
-
});
|
|
475
|
-
});
|
|
476
|
-
// --- Prompt structure contract (c43 ↔ c44 coordination) -------------------
|
|
477
|
-
//
|
|
478
|
-
// Source-of-truth: the YAML `inputs:` block in the prompt frontmatter. Both
|
|
479
|
-
// C43 (taste-infer) and C44 (apt:design --new) call synthesizeDesignMd with
|
|
480
|
-
// the five named slots declared there, so any rename / reorder is a breaking
|
|
481
|
-
// change detectable by these assertions.
|
|
482
|
-
describe('prompt structure (design-synthesize.md — c43↔c44 contract)', () => {
|
|
483
|
-
const PROMPT_PATH = resolve(__dirname, '..', '..', 'prompts', 'design-synthesize.md');
|
|
484
|
-
it('file exists at the canonical location', () => {
|
|
485
|
-
const text = readFileSync(PROMPT_PATH, 'utf-8');
|
|
486
|
-
expect(text.length).toBeGreaterThan(200);
|
|
487
|
-
});
|
|
488
|
-
it('declares the five canonical input slots in the YAML `inputs:` block', () => {
|
|
489
|
-
const raw = readFileSync(PROMPT_PATH, 'utf-8');
|
|
490
|
-
const fmMatch = raw.match(/^---\n([\s\S]*?)\n---\n/);
|
|
491
|
-
expect(fmMatch).not.toBeNull();
|
|
492
|
-
const frontmatter = fmMatch[1];
|
|
493
|
-
// The five named slots both C43 and C44 depend on.
|
|
494
|
-
expect(frontmatter).toMatch(/^\s*inputs:/m);
|
|
495
|
-
expect(frontmatter).toMatch(/^\s{2}product_context:/m);
|
|
496
|
-
expect(frontmatter).toMatch(/^\s{2}taste:/m);
|
|
497
|
-
expect(frontmatter).toMatch(/^\s{2}observed_tokens:/m);
|
|
498
|
-
expect(frontmatter).toMatch(/^\s{2}reference_design_md:/m);
|
|
499
|
-
expect(frontmatter).toMatch(/^\s{2}style_seed:/m);
|
|
500
|
-
});
|
|
501
|
-
it('the prompt body references every declared slot as a `{{slot_name}}` placeholder', () => {
|
|
502
|
-
const raw = readFileSync(PROMPT_PATH, 'utf-8');
|
|
503
|
-
// Strip the leading --- YAML frontmatter block so we inspect the
|
|
504
|
-
// prompt body, not the slot declarations inside the header.
|
|
505
|
-
const body = raw.replace(/^---\n[\s\S]*?\n---\n/, '');
|
|
506
|
-
for (const slot of [
|
|
507
|
-
'product_context',
|
|
508
|
-
'taste',
|
|
509
|
-
'observed_tokens',
|
|
510
|
-
'reference_design_md',
|
|
511
|
-
'style_seed',
|
|
512
|
-
]) {
|
|
513
|
-
const placeholderRe = new RegExp(`\\{\\{\\s*${slot}\\s*\\}\\}`);
|
|
514
|
-
expect(body).toMatch(placeholderRe);
|
|
515
|
-
}
|
|
516
|
-
});
|
|
517
|
-
it('keeps the product-context slot, taste slot, and reject criteria in that order', () => {
|
|
518
|
-
const raw = readFileSync(PROMPT_PATH, 'utf-8');
|
|
519
|
-
const body = raw.replace(/^---\n[\s\S]*?\n---\n/, '');
|
|
520
|
-
const ctxIdx = body.indexOf('{{product_context}}');
|
|
521
|
-
const tasteIdx = body.indexOf('{{taste}}');
|
|
522
|
-
const rejectIdx = body.indexOf('Reject criteria');
|
|
523
|
-
expect(ctxIdx).toBeGreaterThan(-1);
|
|
524
|
-
expect(tasteIdx).toBeGreaterThan(ctxIdx);
|
|
525
|
-
expect(rejectIdx).toBeGreaterThan(tasteIdx);
|
|
526
|
-
});
|
|
527
|
-
it('declares the C43/C44 coordination comment so reviewers can trace the contract', () => {
|
|
528
|
-
const text = readFileSync(PROMPT_PATH, 'utf-8');
|
|
529
|
-
// The HTML comment below the frontmatter documents the shared contract.
|
|
530
|
-
expect(text).toMatch(/Coordination:\s*shared with c43/i);
|
|
531
|
-
expect(text).toMatch(/c44/);
|
|
532
|
-
});
|
|
533
|
-
});
|
|
534
|
-
// --- I-1 no-LLM-imports invariant (AC-4) -----------------------------------
|
|
535
|
-
/**
|
|
536
|
-
* The extraction modules (`extract-url.mjs` + `extract-repo.mjs`) MUST NOT
|
|
537
|
-
* touch any LLM SDK. Any naming / role inference belongs in
|
|
538
|
-
* `synthesize.mjs` (per I-2). This AST-walking test parses each file with
|
|
539
|
-
* @babel/parser (already an optional dep installed for the extractors'
|
|
540
|
-
* runtime dependency) and walks every import or dynamic import, asserting
|
|
541
|
-
* the source string never mentions a forbidden vendor.
|
|
542
|
-
*
|
|
543
|
-
* Tools the test scans for are spec §4.6: `openai`, `@anthropic-ai`,
|
|
544
|
-
* `@google/genai`, `langchain`, `llamaindex`, `cohere-ai`.
|
|
545
|
-
*/
|
|
546
|
-
describe('I-1 no-LLM extraction invariant (AC-4)', () => {
|
|
547
|
-
// Belt-and-braces vendor list. Substring matching means entries like
|
|
548
|
-
// `@anthropic-ai` catch both `@anthropic-ai/sdk` and `@anthropic-ai/bedrock-sdk`.
|
|
549
|
-
// `@google/generative-ai` is a DISTINCT package from `@google/genai` (the
|
|
550
|
-
// former is Google's legacy Gemini SDK; the latter is the current one);
|
|
551
|
-
// both are covered explicitly so a future regression can't slip through.
|
|
552
|
-
const FORBIDDEN = [
|
|
553
|
-
'openai',
|
|
554
|
-
'@anthropic-ai',
|
|
555
|
-
'@google/genai',
|
|
556
|
-
'@google/generative-ai',
|
|
557
|
-
'langchain',
|
|
558
|
-
'llamaindex',
|
|
559
|
-
'cohere-ai',
|
|
560
|
-
'mistralai',
|
|
561
|
-
'voyageai',
|
|
562
|
-
];
|
|
563
|
-
const FILES_UNDER_INVARIANT = [
|
|
564
|
-
resolve(__dirname, '..', 'cli', 'design', 'extract-url.mjs'),
|
|
565
|
-
resolve(__dirname, '..', 'cli', 'design', 'extract-repo.mjs'),
|
|
566
|
-
];
|
|
567
|
-
for (const filePath of FILES_UNDER_INVARIANT) {
|
|
568
|
-
it(`${filePath.split('/').slice(-3).join('/')} imports no LLM client or SDK`, async () => {
|
|
569
|
-
const src = readFileSync(filePath, 'utf-8');
|
|
570
|
-
// Dynamic-import @babel/parser so the test remains runnable even
|
|
571
|
-
// when the optional dep isn't installed — in that case we fall
|
|
572
|
-
// back to a regex check (less strict but still catches literal
|
|
573
|
-
// mentions). @babel is installed at test time since it's an
|
|
574
|
-
// optional dep of @aperant/framework itself.
|
|
575
|
-
let ast;
|
|
576
|
-
let usingBabel = true;
|
|
577
|
-
try {
|
|
578
|
-
const mod = (await import('@babel/parser'));
|
|
579
|
-
ast = mod.parse(src, {
|
|
580
|
-
sourceType: 'module',
|
|
581
|
-
errorRecovery: true,
|
|
582
|
-
plugins: ['jsx'],
|
|
583
|
-
});
|
|
584
|
-
}
|
|
585
|
-
catch {
|
|
586
|
-
usingBabel = false;
|
|
587
|
-
}
|
|
588
|
-
const importSources = [];
|
|
589
|
-
if (usingBabel && ast) {
|
|
590
|
-
// @ts-expect-error — @babel/traverse ships without @types in this repo;
|
|
591
|
-
// we treat the module as 'any' for this static AST walk.
|
|
592
|
-
const traverseMod = (await import('@babel/traverse'));
|
|
593
|
-
const traverse = typeof traverseMod.default === 'function'
|
|
594
|
-
? traverseMod.default
|
|
595
|
-
: (traverseMod.default?.default ?? traverseMod);
|
|
596
|
-
if (typeof traverse !== 'function') {
|
|
597
|
-
throw new Error('@babel/traverse default export is not a function');
|
|
598
|
-
}
|
|
599
|
-
traverse(ast, {
|
|
600
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
601
|
-
ImportDeclaration(path) {
|
|
602
|
-
importSources.push(path.node.source.value);
|
|
603
|
-
},
|
|
604
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
605
|
-
CallExpression(path) {
|
|
606
|
-
const n = path.node;
|
|
607
|
-
if (n.callee.type === 'Import') {
|
|
608
|
-
const arg = n.arguments[0];
|
|
609
|
-
if (arg && arg.type === 'StringLiteral' && typeof arg.value === 'string') {
|
|
610
|
-
importSources.push(arg.value);
|
|
611
|
-
}
|
|
612
|
-
}
|
|
613
|
-
},
|
|
614
|
-
});
|
|
615
|
-
}
|
|
616
|
-
else {
|
|
617
|
-
// Regex fallback: catches literal `from '...'` + `import('...')`.
|
|
618
|
-
for (const m of src.matchAll(/from\s+['"]([^'"]+)['"]/g))
|
|
619
|
-
importSources.push(m[1]);
|
|
620
|
-
for (const m of src.matchAll(/import\(\s*['"]([^'"]+)['"]\s*\)/g))
|
|
621
|
-
importSources.push(m[1]);
|
|
622
|
-
}
|
|
623
|
-
for (const imp of importSources) {
|
|
624
|
-
for (const forbidden of FORBIDDEN) {
|
|
625
|
-
expect(imp.includes(forbidden), `${filePath.split('/').slice(-1)[0]} must not import '${forbidden}' (observed: '${imp}')`).toBe(false);
|
|
626
|
-
}
|
|
627
|
-
}
|
|
628
|
-
});
|
|
629
|
-
}
|
|
630
|
-
it('synthesize.mjs IS allowed to import @google/genai (I-2 carve-out) — sanity check', () => {
|
|
631
|
-
// Document the intent: the invariant covers extractors only, per spec
|
|
632
|
-
// §I-1 / §I-2. synthesize.mjs imports @google/genai lazily inside the
|
|
633
|
-
// LLM branch. This test just asserts that file is NOT in the set we
|
|
634
|
-
// check above, so a future agent who decides to 'extend the invariant
|
|
635
|
-
// to synthesize' must edit this test too.
|
|
636
|
-
const synthFile = resolve(__dirname, '..', 'cli', 'design', 'synthesize.mjs');
|
|
637
|
-
expect(FILES_UNDER_INVARIANT).not.toContain(synthFile);
|
|
638
|
-
});
|
|
639
|
-
});
|
|
640
|
-
//# sourceMappingURL=taste-infer.test.js.map
|