@rsaglobaltech/specgate 0.8.1 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +98 -0
- package/README.md +8 -8
- package/bin/specgate.ts +13 -2
- package/dist/bin/specgate.js +11 -1
- package/dist/bin/specgate.js.map +1 -1
- package/dist/packages/core/src/application/GenerateAgentPromptUseCase.js +56 -0
- package/dist/packages/core/src/application/GenerateAgentPromptUseCase.js.map +1 -1
- package/dist/packages/core/src/application/ValidateProjectUseCase.js +54 -0
- package/dist/packages/core/src/application/ValidateProjectUseCase.js.map +1 -1
- package/dist/packages/core/src/domain/AdversarialProbe.js +75 -0
- package/dist/packages/core/src/domain/AdversarialProbe.js.map +1 -0
- package/dist/packages/core/src/domain/AgentPrompt.js +52 -3
- package/dist/packages/core/src/domain/AgentPrompt.js.map +1 -1
- package/dist/packages/core/src/domain/DeclaredArtifacts.js +25 -0
- package/dist/packages/core/src/domain/DeclaredArtifacts.js.map +1 -1
- package/dist/packages/core/src/domain/DoneVerification.js +68 -0
- package/dist/packages/core/src/domain/DoneVerification.js.map +1 -0
- package/dist/packages/core/src/domain/GateCommandIntegrity.js +139 -0
- package/dist/packages/core/src/domain/GateCommandIntegrity.js.map +1 -0
- package/dist/packages/core/src/domain/HarnessConfig.js +6 -0
- package/dist/packages/core/src/domain/HarnessConfig.js.map +1 -1
- package/dist/packages/core/src/domain/MultiStack.js +96 -0
- package/dist/packages/core/src/domain/MultiStack.js.map +1 -0
- package/dist/packages/core/src/domain/Precedents.js +96 -0
- package/dist/packages/core/src/domain/Precedents.js.map +1 -0
- package/dist/packages/core/src/domain/RequirementRemoval.js +161 -0
- package/dist/packages/core/src/domain/RequirementRemoval.js.map +1 -0
- package/dist/packages/core/src/domain/ScenarioCoverage.js +178 -0
- package/dist/packages/core/src/domain/ScenarioCoverage.js.map +1 -0
- package/dist/packages/core/src/domain/SpecSections.js +206 -0
- package/dist/packages/core/src/domain/SpecSections.js.map +1 -0
- package/dist/packages/core/src/domain/TestCommand.js +82 -0
- package/dist/packages/core/src/domain/TestCommand.js.map +1 -0
- package/dist/packages/core/src/domain/TraceabilityFormat.js +37 -1
- package/dist/packages/core/src/domain/TraceabilityFormat.js.map +1 -1
- package/dist/packages/core/src/infrastructure/HarnessConfigFile.js +31 -0
- package/dist/packages/core/src/infrastructure/HarnessConfigFile.js.map +1 -1
- package/dist/packages/core/test/unit/adversarial-probe.test.js +81 -0
- package/dist/packages/core/test/unit/adversarial-probe.test.js.map +1 -0
- package/dist/packages/core/test/unit/done-verification.test.js +83 -0
- package/dist/packages/core/test/unit/done-verification.test.js.map +1 -0
- package/dist/packages/core/test/unit/gate-command-integrity.test.js +114 -0
- package/dist/packages/core/test/unit/gate-command-integrity.test.js.map +1 -0
- package/dist/packages/core/test/unit/multi-stack.test.js +86 -0
- package/dist/packages/core/test/unit/multi-stack.test.js.map +1 -0
- package/dist/packages/core/test/unit/precedents.test.js +99 -0
- package/dist/packages/core/test/unit/precedents.test.js.map +1 -0
- package/dist/packages/core/test/unit/requirement-removal.test.js +124 -0
- package/dist/packages/core/test/unit/requirement-removal.test.js.map +1 -0
- package/dist/packages/core/test/unit/scenario-coverage.test.js +146 -0
- package/dist/packages/core/test/unit/scenario-coverage.test.js.map +1 -0
- package/dist/packages/core/test/unit/spec-sections.test.js +146 -0
- package/dist/packages/core/test/unit/spec-sections.test.js.map +1 -0
- package/dist/packages/core/test/unit/test-command.test.js +81 -0
- package/dist/packages/core/test/unit/test-command.test.js.map +1 -0
- package/dist/packages/core/test/unit/validate-project.test.js +21 -0
- package/dist/packages/core/test/unit/validate-project.test.js.map +1 -1
- package/dist/scripts/agents/commands.js +1 -1
- package/dist/scripts/agents/commands.js.map +1 -1
- package/dist/scripts/agents/init.js +1 -1
- package/dist/scripts/agents/init.js.map +1 -1
- package/dist/scripts/change/instructions.js +2 -2
- package/dist/scripts/change/instructions.js.map +1 -1
- package/dist/scripts/cli/commands/change/ChangeCommand.js +2 -2
- package/dist/scripts/cli/commands/change/ChangeCommand.js.map +1 -1
- package/dist/scripts/cli/commands/config/CiInitCommand.js +1 -1
- package/dist/scripts/cli/commands/config/CiInitCommand.js.map +1 -1
- package/dist/scripts/cli/commands/harness/RunCommand.js +203 -4
- package/dist/scripts/cli/commands/harness/RunCommand.js.map +1 -1
- package/dist/scripts/cli/commands/pack/InferPackCommand.js +331 -31
- package/dist/scripts/cli/commands/pack/InferPackCommand.js.map +1 -1
- package/dist/scripts/cli/commands/project/AdoptCommand.js +81 -4
- package/dist/scripts/cli/commands/project/AdoptCommand.js.map +1 -1
- package/dist/scripts/cli/commands/project/InitProjectCommand.js +245 -45
- package/dist/scripts/cli/commands/project/InitProjectCommand.js.map +1 -1
- package/dist/scripts/cli/commands/quality/DoctorCommand.js +20 -2
- package/dist/scripts/cli/commands/quality/DoctorCommand.js.map +1 -1
- package/dist/scripts/cli/commands/quality/FixCommand.js +1 -1
- package/dist/scripts/cli/commands/quality/FixCommand.js.map +1 -1
- package/dist/scripts/cli/commands/quality/ReportCommand.js +1 -1
- package/dist/scripts/cli/commands/quality/ReportCommand.js.map +1 -1
- package/dist/scripts/cli/commands/quality/ValidateSpecsCommand.js +340 -18
- package/dist/scripts/cli/commands/quality/ValidateSpecsCommand.js.map +1 -1
- package/dist/scripts/cli/commands/spec/DoneCommand.js +108 -0
- package/dist/scripts/cli/commands/spec/DoneCommand.js.map +1 -1
- package/dist/scripts/cli/commands/spec/PlanCommand.js +7 -1
- package/dist/scripts/cli/commands/spec/PlanCommand.js.map +1 -1
- package/dist/scripts/cli/commands/spec/ReqCommand.js +112 -2
- package/dist/scripts/cli/commands/spec/ReqCommand.js.map +1 -1
- package/dist/scripts/cli/commands/spec/StatusCommand.js +2 -2
- package/dist/scripts/cli/commands/spec/StatusCommand.js.map +1 -1
- package/dist/scripts/docs/build-site.js +145 -35
- package/dist/scripts/docs/build-site.js.map +1 -1
- package/dist/scripts/docs/components.js +208 -0
- package/dist/scripts/docs/components.js.map +1 -0
- package/dist/scripts/docs/highlight.js +180 -0
- package/dist/scripts/docs/highlight.js.map +1 -0
- package/dist/scripts/docs/icons.js +63 -0
- package/dist/scripts/docs/icons.js.map +1 -0
- package/dist/scripts/docs/nav.js +9 -3
- package/dist/scripts/docs/nav.js.map +1 -1
- package/dist/scripts/gen_mcp_tools.js +22 -2
- package/dist/scripts/gen_mcp_tools.js.map +1 -1
- package/dist/scripts/harness/init.js +101 -40
- package/dist/scripts/harness/init.js.map +1 -1
- package/dist/scripts/harness/worktree-lock.js +161 -0
- package/dist/scripts/harness/worktree-lock.js.map +1 -0
- package/dist/scripts/infer_pack.js +4 -1
- package/dist/scripts/infer_pack.js.map +1 -1
- package/dist/scripts/lib/surface.js +35 -7
- package/dist/scripts/lib/surface.js.map +1 -1
- package/package.json +5 -2
- package/templates/adopt/AI_RULES.md.tpl +1 -1
- package/templates/adopt/spec.md.tpl +4 -4
- package/templates/base/spec.md.tpl +12 -0
- package/templates/ci/azure.yml.tpl +2 -2
- package/templates/ci/github.yml.tpl +2 -2
- package/templates/ci/gitlab.yml.tpl +1 -1
- package/templates/ci/jenkins.tpl +1 -1
- package/templates/contracts/test-strategy.md.tpl +2 -2
- package/templates/harness/prompt-prefix.md.tpl +2 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../scripts/harness/init.ts"],"names":[],"mappings":";;AACA;;;;;;;;;;;;GAYG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+BH,8CAuBC;AAED,kCAOC;AAwOD,gDA8DC;AAnWD,4CAA8B;AAC9B,gDAAkC;AAClC,2DAA+C;AAC/C,sEAAyE;AACzE,sDAAwD;AACxD,wCAAkD;AAClD,oDAAwE;AACxE,4CAA6C;AAE7C,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;AAE9D,MAAM,WAAW,GAAG,qBAAqB,CAAC;AAC1C,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC;AAE9D,MAAM,UAAU,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;AAEnD;;;;;;;;;;;GAWG;AACH,SAAgB,iBAAiB,CAAC,UAAU;IAC1C,MAAM,GAAG,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;IACjE,IAAI,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;QACxB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;YACvF,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC;YAClC,iEAAiE;YACjE,qEAAqE;YACrE,oEAAoE;YACpE,IAAI,OAAO,CAAC,MAAM;gBAAE,OAAO,gBAAgB,CAAC;YAC5C,IAAI,OAAO,CAAC,IAAI;gBAAE,OAAO,UAAU,CAAC;QACtC,CAAC;QAAC,MAAM,CAAC;YACP,uEAAuE;YACvE,kDAAkD;QACpD,CAAC;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,IAAI,GAAG,CAAC,SAAS,CAAC;QAAE,OAAO,aAAa,CAAC;IACzC,IAAI,GAAG,CAAC,cAAc,CAAC,IAAI,GAAG,CAAC,kBAAkB,CAAC;QAAE,OAAO,gBAAgB,CAAC;IAC5E,IAAI,GAAG,CAAC,YAAY,CAAC;QAAE,OAAO,YAAY,CAAC;IAC3C,IAAI,GAAG,CAAC,QAAQ,CAAC;QAAE,OAAO,eAAe,CAAC;IAC1C,IAAI,GAAG,CAAC,gBAAgB,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC9D,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAgB,WAAW,CAAC,UAAU;IACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAClD,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;QACtE,IAAI,OAAO;YAAE,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACxC,CAAC;IACD,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;AACnC,CAAC;AAED,SAAS,KAAK;IACZ,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,8DAA8D;QAC5D,WAAW;QACX,yCAAyC;QACzC,YAAY;QACZ,OAAO,WAAW,yCAAyC;QAC3D,OAAO,WAAW,0DAA0D;QAC5E,aAAa;QACb,8EAA8E;QAC9E,gFAAgF;QAChF,gEAAgE;QAChE,sEAAsE;QACtE,qDAAqD;QACrD,8CAA8C,CACjD,CAAC;AACJ,CAAC;AAWD,SAAS,SAAS,CAAC,IAAI;IACrB,MAAM,IAAI,GAAuB;QAC/B,UAAU,EAAE,GAAG;QACf,OAAO,EAAE,IAAI;QACb,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,IAAA,iBAAS,EAAC,IAAI,CAAC;KACtB,CAAC;IACF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,IAAI,CAAC,KAAK,eAAe,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YAAE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;aACjE,IAAI,CAAC,KAAK,YAAY,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YAAE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;aAChE,IAAI,CAAC,KAAK,SAAS;YAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;aACvC,IAAI,CAAC,KAAK,UAAU;YAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;aACzC,IAAI,CAAC,KAAK,QAAQ;YAAE,SAAS;aAC7B,IAAI,CAAC,KAAK,UAAU,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM;YAAE,CAAC,EAAE,CAAC;aACpD,IAAI,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;YACtC,KAAK,EAAE,CAAC;YACR,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;YACjD,KAAK,EAAE,CAAC;YACR,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAa,WAAY,SAAQ,qBAAW;IACnC,OAAO;QACZ,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACrB,qEAAqE;QACrE,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS;YAAE,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAChD,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM;YAAE,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAE7C,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;QAC7B,MAAM,EAAE,GAAG,IAAA,eAAO,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE9B,IAAI,UAAU,CAAC;QACf,IAAI,CAAC;YACH,UAAU,GAAG,IAAA,gCAAiB,EAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAClD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE;gBACnB,IAAA,mBAAK,EAAC,YAAY,EAAE,IAAA,0BAAY,EAAC,GAAG,CAAC,EAAE;oBACrC,GAAG,EAAE,sEAAsE;iBAC5E,CAAC;aACH,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAC9D,4EAA4E;QAC5E,4EAA4E;QAC5E,sBAAsB;QACtB,MAAM,IAAI,GAAG;YACX,YAAY,EAAE,WAAW,CAAC,UAAU,CAAC;YACrC,aAAa,EAAE,OAAO;gBACpB,CAAC,CAAC,cAAc,OAAO,GAAG;gBAC1B,CAAC,CAAC,2EAA2E;YAC/E,YAAY,EAAE,OAAO;gBACnB,CAAC,CAAC,GAAG,OAAO,oCAAoC;gBAChD,CAAC,CAAC,kCAAkC;SACvC,CAAC;QAEF,MAAM,OAAO,GAAG;YACd;gBACE,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,IAAA,yBAAc,EAClB,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,yBAAyB,CAAC,EAAE,MAAM,CAAC,EACxE,IAAI,CACL;aACF;YACD;gBACE,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,IAAA,yBAAc,EAClB,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,sBAAsB,CAAC,EAAE,MAAM,CAAC,EACrE,IAAI,CACL;aACF;SACF,CAAC;QAEF,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,EAAE,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE;gBACvE,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;oBAC1B,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,QAAQ,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CACtE,CAAC;oBACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBAC/B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC7B,CAAC;YACH,CAAC,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,MAAM,QAAQ,GAAG,OAAO;aACrB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;aAClB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QAChE,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACvC,EAAE,CAAC,IAAI,CAAC,EAAE,GAAG,UAAU,EAAE,UAAU,EAAE,EAAE;gBACrC,IAAA,mBAAK,EAAC,uBAAuB,EAAE,oBAAoB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;oBACxE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;oBACnB,GAAG,EAAE,2EAA2E;iBACjF,CAAC;aACH,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,EAAE,CAAC;QACnB,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;YAC1B,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YAC5C,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACrD,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACxC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC;QAED,uEAAuE;QACvE,4EAA4E;QAC5E,MAAM,aAAa,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAErD,MAAM,MAAM,GAAG;YACb,IAAA,kBAAI,EAAC,qBAAqB,EAAE,uCAAuC,EAAE;gBACnE,GAAG,EAAE,wFAAwF;aAC9F,CAAC;SACH,CAAC;QACF,IAAI,aAAa;YAAE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;;YAE5C,MAAM,CAAC,IAAI,CACT,IAAA,kBAAI,EACF,yBAAyB,EACzB,gGAAgG,EAChG;gBACE,MAAM,EAAE,gBAAgB;gBACxB,GAAG,EAAE,iIAAiI;aACvI,CACF,CACF,CAAC;QAEJ,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CACT,IAAA,qBAAO,EACL,wBAAwB,EACxB,2DAA2D,EAC3D;gBACE,MAAM,EAAE,WAAW;gBACnB,GAAG,EAAE,wJAAwJ;aAC9J,CACF,CACF,CAAC;QACJ,CAAC;QAED,EAAE,CAAC,IAAI,CACL;YACE,UAAU;YACV,OAAO;YACP,KAAK,EAAE,OAAO;YACd,MAAM;SACP,EACD,GAAG,EAAE;YACH,KAAK,MAAM,IAAI,IAAI,OAAO;gBAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mBAAmB,IAAI,IAAI,CAAC,CAAC;YAC9E,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,mCAAmC;gBACjC,0CAA0C,OAAO,CAAC,CAAC,CAAC,MAAM,OAAO,EAAE,CAAC,CAAC,CAAC,6BAA6B,IAAI;gBACvG,0EAA0E;gBAC1E,mBAAmB;gBACnB,mFAAmF;gBACnF,uFAAuF;gBACvF,qFAAqF,CACxF,CAAC;QACJ,CAAC,CACF,CAAC;IACJ,CAAC;CACF;AA/ID,kCA+IC;AAED,gFAAgF;AAEhF,gFAAgF;AACnE,QAAA,iBAAiB,GAAG,aAAa,CAAC;AAClC,QAAA,kBAAkB,GAAG,oCAAoC,yBAAiB,EAAE,CAAC;AAE1F;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,SAAgB,kBAAkB,CAAC,UAAkB;IACnD,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;IAC/D,MAAM,QAAQ,GAAG,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAE9F,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,0BAAkB,CAAC,EAAE,CAAC;QAC3C,MAAM,SAAS,GAAG,QAAQ,KAAK,EAAE,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACzE,EAAE,CAAC,cAAc,CACf,cAAc,EACd,GAAG,SAAS,mEAAmE;YAC7E,4EAA4E;YAC5E,6CAA6C;YAC7C,GAAG,0BAAkB,IAAI,EAC3B,MAAM,CACP,CAAC;IACJ,CAAC;IAED,8EAA8E;IAC9E,kEAAkE;IAClE,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,uBAAuB,CAAC,CAAC;IACzE,MAAM,SAAS,GAAG,CAAC,GAAW,EAAE,KAAa,EAAE,EAAE,CAC/C,IAAA,8BAAS,EAAC,KAAK,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;IAEnF,yEAAyE;IACzE,EAAE;IACF,6DAA6D;IAC7D,EAAE;IACF,yEAAyE;IACzE,8EAA8E;IAC9E,mEAAmE;IACnE,4EAA4E;IAC5E,4EAA4E;IAC5E,6EAA6E;IAC7E,kDAAkD;IAClD,wDAAwD;IACxD,EAAE;IACF,4EAA4E;IAC5E,6EAA6E;IAC7E,MAAM,UAAU,GAAG,SAAS,CAC1B,SAAS,yBAAiB,SAAS,EACnC,QAAQ,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,WAAW,CAChD,CAAC;IAEF,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,IAAA,8BAAS,EAAC,KAAK,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,yBAAiB,OAAO,CAAC,EAAE;YAC3F,QAAQ,EAAE,MAAM;SACjB,CAAC,CAAC;QACH,OAAO,IAAA,qBAAO,EACZ,6BAA6B,EAC7B,iEAAiE,EACjE;YACE,MAAM,EAAE,gBAAgB;YACxB,GAAG,EACD,sCAAsC;gBACtC,sBAAsB,yBAAiB,iBAAiB,YAAY,cAAc;gBAClF,mEAAmE;gBACnE,uCAAuC;SAC1C,CACF,CAAC;IACJ,CAAC;IAED,SAAS,CAAC,SAAS,yBAAiB,OAAO,EAAE,gCAAgC,CAAC,CAAC;IAC/E,OAAO,IAAI,CAAC;AACd,CAAC;AAED,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM;IAAE,IAAI,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../scripts/harness/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* One `git worktree add` at a time, across processes.
|
|
4
|
+
*
|
|
5
|
+
* ## The defect
|
|
6
|
+
*
|
|
7
|
+
* `--concurrency` runs each requirement in its own **process**, and every one
|
|
8
|
+
* of them creates a worktree in the same repository. Git writes
|
|
9
|
+
* `.git/worktrees/<name>/` incrementally — `gitdir`, then `commondir`, then the
|
|
10
|
+
* rest — and a sibling `git worktree add` scanning that directory can read an
|
|
11
|
+
* entry that is half there:
|
|
12
|
+
*
|
|
13
|
+
* ```
|
|
14
|
+
* fatal: failed to read .git/worktrees/csda-harness-REQ-000-b300c79f/commondir:
|
|
15
|
+
* Undefined error: 0
|
|
16
|
+
* ```
|
|
17
|
+
*
|
|
18
|
+
* Observed on CI on both macOS and Ubuntu, roughly one run in three. It is the
|
|
19
|
+
* same family as the `git worktree prune` race the parent already avoids by
|
|
20
|
+
* pruning once before anything is created — that one was fixed, this one was
|
|
21
|
+
* not.
|
|
22
|
+
*
|
|
23
|
+
* The failure is worse than a crash, because it is *attributed*: the run
|
|
24
|
+
* reports the requirement as `fail` with "the agent produced no files", so a
|
|
25
|
+
* race in the harness reads as the agent's fault.
|
|
26
|
+
*
|
|
27
|
+
* ## Why a lock directory
|
|
28
|
+
*
|
|
29
|
+
* `mkdir` either creates or fails, atomically, on every platform this runs on —
|
|
30
|
+
* no `O_EXCL` flag juggling and nothing to clean up if the process dies holding
|
|
31
|
+
* a file handle. The pid and timestamp inside make a stale lock diagnosable
|
|
32
|
+
* rather than mysterious.
|
|
33
|
+
*
|
|
34
|
+
* ## Why only around `add`
|
|
35
|
+
*
|
|
36
|
+
* The lock covers creating the worktree and nothing else. The agent, the gate
|
|
37
|
+
* and the tests — the parts that take minutes — stay parallel, so the ceiling
|
|
38
|
+
* on throughput is unchanged. `git worktree add` on a warm repository takes
|
|
39
|
+
* tens of milliseconds.
|
|
40
|
+
*/
|
|
41
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
42
|
+
if (k2 === undefined) k2 = k;
|
|
43
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
44
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
45
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
46
|
+
}
|
|
47
|
+
Object.defineProperty(o, k2, desc);
|
|
48
|
+
}) : (function(o, m, k, k2) {
|
|
49
|
+
if (k2 === undefined) k2 = k;
|
|
50
|
+
o[k2] = m[k];
|
|
51
|
+
}));
|
|
52
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
53
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
54
|
+
}) : function(o, v) {
|
|
55
|
+
o["default"] = v;
|
|
56
|
+
});
|
|
57
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
58
|
+
var ownKeys = function(o) {
|
|
59
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
60
|
+
var ar = [];
|
|
61
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
62
|
+
return ar;
|
|
63
|
+
};
|
|
64
|
+
return ownKeys(o);
|
|
65
|
+
};
|
|
66
|
+
return function (mod) {
|
|
67
|
+
if (mod && mod.__esModule) return mod;
|
|
68
|
+
var result = {};
|
|
69
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
70
|
+
__setModuleDefault(result, mod);
|
|
71
|
+
return result;
|
|
72
|
+
};
|
|
73
|
+
})();
|
|
74
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
75
|
+
exports.withWorktreeLock = withWorktreeLock;
|
|
76
|
+
const fs = __importStar(require("node:fs"));
|
|
77
|
+
const path = __importStar(require("node:path"));
|
|
78
|
+
/** How long to wait for the holder before giving up. */
|
|
79
|
+
const WAIT_MS = 30_000;
|
|
80
|
+
/** A lock older than this is assumed abandoned by a process that died. */
|
|
81
|
+
const STALE_MS = 120_000;
|
|
82
|
+
const POLL_MS = 25;
|
|
83
|
+
function lockDir(projectDir) {
|
|
84
|
+
return path.join(projectDir, ".git", "csda-worktree.lock");
|
|
85
|
+
}
|
|
86
|
+
function readInfo(dir) {
|
|
87
|
+
try {
|
|
88
|
+
return JSON.parse(fs.readFileSync(path.join(dir, "owner.json"), "utf8"));
|
|
89
|
+
}
|
|
90
|
+
catch {
|
|
91
|
+
return null;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
/** True when the holder is gone, or has been holding it implausibly long. */
|
|
95
|
+
function isStale(info) {
|
|
96
|
+
if (!info)
|
|
97
|
+
return true;
|
|
98
|
+
if (Date.now() - info.at > STALE_MS)
|
|
99
|
+
return true;
|
|
100
|
+
try {
|
|
101
|
+
// Signal 0 tests for existence without touching the process.
|
|
102
|
+
process.kill(info.pid, 0);
|
|
103
|
+
return false;
|
|
104
|
+
}
|
|
105
|
+
catch {
|
|
106
|
+
return true;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
function sleep(ms) {
|
|
110
|
+
// Synchronous on purpose: the caller is `spawnSync` code with no event loop
|
|
111
|
+
// to yield to, and the wait is milliseconds.
|
|
112
|
+
Atomics.wait(new Int32Array(new SharedArrayBuffer(4)), 0, 0, ms);
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Run `fn` with the worktree lock held.
|
|
116
|
+
*
|
|
117
|
+
* Never fails the caller: if the lock cannot be taken within `WAIT_MS` the work
|
|
118
|
+
* runs anyway. A harness that refuses to start because of its own mutex would
|
|
119
|
+
* be a worse bug than the race it is avoiding, and the race is recoverable —
|
|
120
|
+
* git reports it and the requirement is retried.
|
|
121
|
+
*/
|
|
122
|
+
function withWorktreeLock(projectDir, fn) {
|
|
123
|
+
const dir = lockDir(projectDir);
|
|
124
|
+
const deadline = Date.now() + WAIT_MS;
|
|
125
|
+
let held = false;
|
|
126
|
+
while (Date.now() < deadline) {
|
|
127
|
+
try {
|
|
128
|
+
fs.mkdirSync(dir, { recursive: false });
|
|
129
|
+
fs.writeFileSync(path.join(dir, "owner.json"), JSON.stringify({ pid: process.pid, at: Date.now() }), "utf8");
|
|
130
|
+
held = true;
|
|
131
|
+
break;
|
|
132
|
+
}
|
|
133
|
+
catch {
|
|
134
|
+
if (isStale(readInfo(dir))) {
|
|
135
|
+
// Break it rather than wait out a holder that no longer exists.
|
|
136
|
+
try {
|
|
137
|
+
fs.rmSync(dir, { recursive: true, force: true });
|
|
138
|
+
}
|
|
139
|
+
catch {
|
|
140
|
+
/* another process broke it first; try again */
|
|
141
|
+
}
|
|
142
|
+
continue;
|
|
143
|
+
}
|
|
144
|
+
sleep(POLL_MS);
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
try {
|
|
148
|
+
return fn();
|
|
149
|
+
}
|
|
150
|
+
finally {
|
|
151
|
+
if (held) {
|
|
152
|
+
try {
|
|
153
|
+
fs.rmSync(dir, { recursive: true, force: true });
|
|
154
|
+
}
|
|
155
|
+
catch {
|
|
156
|
+
/* the next holder breaks it as stale */
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
//# sourceMappingURL=worktree-lock.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"worktree-lock.js","sourceRoot":"","sources":["../../../scripts/harness/worktree-lock.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
"use strict";
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.renderYamlFragment = exports.inferModel = exports.extractEventNames = exports.collectRequirementIds = exports.toPascalCase = exports.parseFeatureFile = exports.parseArgs = exports.InferPackCommand = void 0;
|
|
4
|
+
exports.renderYamlFragment = exports.mergeModels = exports.inferModel = exports.extractPayloadHints = exports.isQueryStep = exports.extractEventNames = exports.collectRequirementIds = exports.toPascalCase = exports.parseFeatureFile = exports.parseArgs = exports.InferPackCommand = void 0;
|
|
5
5
|
const InferPackCommand_1 = require("./cli/commands/pack/InferPackCommand");
|
|
6
6
|
Object.defineProperty(exports, "InferPackCommand", { enumerable: true, get: function () { return InferPackCommand_1.InferPackCommand; } });
|
|
7
7
|
Object.defineProperty(exports, "parseArgs", { enumerable: true, get: function () { return InferPackCommand_1.parseArgs; } });
|
|
@@ -9,7 +9,10 @@ Object.defineProperty(exports, "parseFeatureFile", { enumerable: true, get: func
|
|
|
9
9
|
Object.defineProperty(exports, "toPascalCase", { enumerable: true, get: function () { return InferPackCommand_1.toPascalCase; } });
|
|
10
10
|
Object.defineProperty(exports, "collectRequirementIds", { enumerable: true, get: function () { return InferPackCommand_1.collectRequirementIds; } });
|
|
11
11
|
Object.defineProperty(exports, "extractEventNames", { enumerable: true, get: function () { return InferPackCommand_1.extractEventNames; } });
|
|
12
|
+
Object.defineProperty(exports, "isQueryStep", { enumerable: true, get: function () { return InferPackCommand_1.isQueryStep; } });
|
|
13
|
+
Object.defineProperty(exports, "extractPayloadHints", { enumerable: true, get: function () { return InferPackCommand_1.extractPayloadHints; } });
|
|
12
14
|
Object.defineProperty(exports, "inferModel", { enumerable: true, get: function () { return InferPackCommand_1.inferModel; } });
|
|
15
|
+
Object.defineProperty(exports, "mergeModels", { enumerable: true, get: function () { return InferPackCommand_1.mergeModels; } });
|
|
13
16
|
Object.defineProperty(exports, "renderYamlFragment", { enumerable: true, get: function () { return InferPackCommand_1.renderYamlFragment; } });
|
|
14
17
|
if (require.main === module) {
|
|
15
18
|
new InferPackCommand_1.InferPackCommand(process.argv.slice(2)).execute();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"infer_pack.js","sourceRoot":"","sources":["../../scripts/infer_pack.ts"],"names":[],"mappings":";;;;AACA,
|
|
1
|
+
{"version":3,"file":"infer_pack.js","sourceRoot":"","sources":["../../scripts/infer_pack.ts"],"names":[],"mappings":";;;;AACA,2EAa8C;AAG5C,iGAfA,mCAAgB,OAeA;AAChB,0FAfA,4BAAS,OAeA;AACT,iGAfA,mCAAgB,OAeA;AAChB,6FAfA,+BAAY,OAeA;AACZ,sGAfA,wCAAqB,OAeA;AACrB,kGAfA,oCAAiB,OAeA;AACjB,4FAfA,8BAAW,OAeA;AACX,oGAfA,sCAAmB,OAeA;AACnB,2FAfA,6BAAU,OAeA;AACV,4FAfA,8BAAW,OAeA;AACX,mGAfA,qCAAkB,OAeA;AAIpB,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;IAC5B,IAAI,mCAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;AACxD,CAAC"}
|
|
@@ -59,6 +59,7 @@ exports.CORE_GROUPS = [
|
|
|
59
59
|
exports.SURFACE = [
|
|
60
60
|
{
|
|
61
61
|
name: "init",
|
|
62
|
+
editsContract: true,
|
|
62
63
|
script: ["init_project.js"],
|
|
63
64
|
help: {
|
|
64
65
|
group: "core",
|
|
@@ -69,6 +70,7 @@ exports.SURFACE = [
|
|
|
69
70
|
},
|
|
70
71
|
{
|
|
71
72
|
name: "adopt",
|
|
73
|
+
editsContract: true,
|
|
72
74
|
script: ["adopt_project.js"],
|
|
73
75
|
help: {
|
|
74
76
|
group: "core",
|
|
@@ -105,6 +107,17 @@ exports.SURFACE = [
|
|
|
105
107
|
},
|
|
106
108
|
json: { key: "doctor", gate: true },
|
|
107
109
|
},
|
|
110
|
+
{
|
|
111
|
+
// Plumbing. Git calls this, not a person: `harness init` registers it as
|
|
112
|
+
// the merge driver for docs/specs/traceability.md. It is on the surface so
|
|
113
|
+
// the driver can be registered by name — the alternative was writing an
|
|
114
|
+
// absolute path into .git/config, which is meaningless on any other clone.
|
|
115
|
+
name: "merge-traceability",
|
|
116
|
+
script: ["merge-traceability.js"],
|
|
117
|
+
mcp: false,
|
|
118
|
+
// No `help` block on purpose: git calls this, a person does not, so it is
|
|
119
|
+
// a hidden command rather than a line in a menu nobody can act on.
|
|
120
|
+
},
|
|
108
121
|
{
|
|
109
122
|
name: "status",
|
|
110
123
|
script: ["status.js"],
|
|
@@ -149,7 +162,7 @@ exports.SURFACE = [
|
|
|
149
162
|
},
|
|
150
163
|
{ name: "link" },
|
|
151
164
|
{ name: "status" },
|
|
152
|
-
{ name: "pull", json: { key: "pulled", gate: false } },
|
|
165
|
+
{ name: "pull", editsContract: true, json: { key: "pulled", gate: false } },
|
|
153
166
|
],
|
|
154
167
|
},
|
|
155
168
|
{
|
|
@@ -158,7 +171,7 @@ exports.SURFACE = [
|
|
|
158
171
|
help: {
|
|
159
172
|
group: "core",
|
|
160
173
|
icon: "✅",
|
|
161
|
-
summary: "Check structure, traceability, Gherkin
|
|
174
|
+
summary: "Check structure, traceability, Gherkin. --strict is the gate: TDD, links, scenarios, requirements and coverage.",
|
|
162
175
|
},
|
|
163
176
|
coreHelp: {
|
|
164
177
|
group: "daily",
|
|
@@ -171,6 +184,7 @@ exports.SURFACE = [
|
|
|
171
184
|
},
|
|
172
185
|
{
|
|
173
186
|
name: "expand",
|
|
187
|
+
editsContract: true,
|
|
174
188
|
script: ["expand_domain_pack.js"],
|
|
175
189
|
help: {
|
|
176
190
|
group: "core",
|
|
@@ -207,6 +221,7 @@ exports.SURFACE = [
|
|
|
207
221
|
},
|
|
208
222
|
{
|
|
209
223
|
name: "done",
|
|
224
|
+
editsContract: true,
|
|
210
225
|
script: ["done.js"],
|
|
211
226
|
help: {
|
|
212
227
|
group: "core",
|
|
@@ -220,11 +235,17 @@ exports.SURFACE = [
|
|
|
220
235
|
{
|
|
221
236
|
name: "req",
|
|
222
237
|
script: ["req.js"],
|
|
223
|
-
subcommands: [
|
|
238
|
+
subcommands: [
|
|
239
|
+
{ name: "add", editsContract: true },
|
|
240
|
+
{ name: "link", editsContract: true },
|
|
241
|
+
{ name: "done", editsContract: true },
|
|
242
|
+
{ name: "rm", editsContract: true },
|
|
243
|
+
{ name: "list" },
|
|
244
|
+
],
|
|
224
245
|
help: {
|
|
225
246
|
group: "core",
|
|
226
247
|
icon: "📝",
|
|
227
|
-
summary: "Add, link and close requirements without hand-editing the matrix.",
|
|
248
|
+
summary: "Add, link, remove and close requirements without hand-editing the matrix.",
|
|
228
249
|
},
|
|
229
250
|
coreHelp: {
|
|
230
251
|
group: "daily",
|
|
@@ -235,6 +256,7 @@ exports.SURFACE = [
|
|
|
235
256
|
},
|
|
236
257
|
{
|
|
237
258
|
name: "fix",
|
|
259
|
+
editsContract: true,
|
|
238
260
|
script: ["fix.js"],
|
|
239
261
|
help: {
|
|
240
262
|
group: "core",
|
|
@@ -246,14 +268,14 @@ exports.SURFACE = [
|
|
|
246
268
|
name: "change",
|
|
247
269
|
script: ["change", "cli.js"],
|
|
248
270
|
subcommands: [
|
|
249
|
-
{ name: "new" },
|
|
271
|
+
{ name: "new", editsContract: true },
|
|
250
272
|
{ name: "list", json: { key: "changes", gate: false } },
|
|
251
273
|
{ name: "show", json: { key: "change", gate: false, args: "<id>" } },
|
|
252
274
|
{ name: "status", json: { key: "artifacts", gate: false } },
|
|
253
275
|
{ name: "validate", json: { key: "change", gate: true, args: "<id>" } },
|
|
254
|
-
{ name: "archive", json: { key: "archive", gate: true, args: "<id>" } },
|
|
276
|
+
{ name: "archive", editsContract: true, json: { key: "archive", gate: true, args: "<id>" } },
|
|
255
277
|
{ name: "instructions", json: { key: "instructions", gate: false, args: "<artifact>" } },
|
|
256
|
-
{ name: "author", json: { key: "change", gate: true, args: "<id>" } },
|
|
278
|
+
{ name: "author", editsContract: true, json: { key: "change", gate: true, args: "<id>" } },
|
|
257
279
|
],
|
|
258
280
|
help: {
|
|
259
281
|
group: "core",
|
|
@@ -317,6 +339,7 @@ exports.SURFACE = [
|
|
|
317
339
|
subcommands: [
|
|
318
340
|
{
|
|
319
341
|
name: "add",
|
|
342
|
+
editsContract: true,
|
|
320
343
|
script: ["specops", "add.js"],
|
|
321
344
|
help: {
|
|
322
345
|
group: "specops",
|
|
@@ -326,6 +349,7 @@ exports.SURFACE = [
|
|
|
326
349
|
},
|
|
327
350
|
{
|
|
328
351
|
name: "remove",
|
|
352
|
+
editsContract: true,
|
|
329
353
|
script: ["specops", "remove.js"],
|
|
330
354
|
help: {
|
|
331
355
|
group: "specops",
|
|
@@ -335,6 +359,7 @@ exports.SURFACE = [
|
|
|
335
359
|
},
|
|
336
360
|
{
|
|
337
361
|
name: "sync",
|
|
362
|
+
editsContract: true,
|
|
338
363
|
script: ["specops", "sync.js"],
|
|
339
364
|
help: {
|
|
340
365
|
group: "specops",
|
|
@@ -368,6 +393,7 @@ exports.SURFACE = [
|
|
|
368
393
|
subcommands: [
|
|
369
394
|
{
|
|
370
395
|
name: "run",
|
|
396
|
+
editsContract: true,
|
|
371
397
|
script: ["harness", "run.js"],
|
|
372
398
|
help: {
|
|
373
399
|
group: "harness",
|
|
@@ -387,6 +413,7 @@ exports.SURFACE = [
|
|
|
387
413
|
},
|
|
388
414
|
{
|
|
389
415
|
name: "init",
|
|
416
|
+
editsContract: true,
|
|
390
417
|
script: ["harness", "init.js"],
|
|
391
418
|
help: {
|
|
392
419
|
group: "harness",
|
|
@@ -436,6 +463,7 @@ exports.SURFACE = [
|
|
|
436
463
|
},
|
|
437
464
|
{
|
|
438
465
|
name: "update",
|
|
466
|
+
editsContract: true,
|
|
439
467
|
script: ["update.js"],
|
|
440
468
|
help: {
|
|
441
469
|
group: "dx",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"surface.js","sourceRoot":"","sources":["../../../scripts/lib/surface.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"surface.js","sourceRoot":"","sources":["../../../scripts/lib/surface.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;;;AA2jBH,oCAEC;AAGD,0CAMC;AAOD,4CAkBC;AAOD,4BAcC;AAGD,oCAmBC;AAOD,gDAEC;AAKD,4BAoBC;AA1qBD;;;GAGG;AACU,QAAA,WAAW,GAAG;IACzB,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE;IACtC,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE;IACtC,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,kBAAkB,EAAE;IAC5C,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,kBAAkB,EAAE;IAC5C,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,aAAa,EAAE;CACnC,CAAC;AAEF,8DAA8D;AACjD,QAAA,WAAW,GAAG;IACzB,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE;IACpC,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE;CACpC,CAAC;AAmFW,QAAA,OAAO,GAAc;IAChC;QACE,IAAI,EAAE,MAAM;QACZ,aAAa,EAAE,IAAI;QACnB,MAAM,EAAE,CAAC,iBAAiB,CAAC;QAC3B,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM;YACb,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,wEAAwE;SAClF;QACD,QAAQ,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,qCAAqC,EAAE;KACxF;IACD;QACE,IAAI,EAAE,OAAO;QACb,aAAa,EAAE,IAAI;QACnB,MAAM,EAAE,CAAC,kBAAkB,CAAC;QAC5B,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM;YACb,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,mEAAmE;SAC7E;QACD,QAAQ,EAAE;YACR,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,+DAA+D;SACzE;KACF;IACD;QACE,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,CAAC,YAAY,CAAC;QACtB,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM;YACb,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,sEAAsE;SAChF;QACD,QAAQ,EAAE;YACR,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,sEAAsE;SAChF;KACF;IACD;QACE,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,CAAC,WAAW,CAAC;QACrB,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM;YACb,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,kEAAkE;SAC5E;QACD,IAAI,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE;KACpC;IACD;QACE,yEAAyE;QACzE,2EAA2E;QAC3E,wEAAwE;QACxE,2EAA2E;QAC3E,IAAI,EAAE,oBAAoB;QAC1B,MAAM,EAAE,CAAC,uBAAuB,CAAC;QACjC,GAAG,EAAE,KAAK;QACV,0EAA0E;QAC1E,mEAAmE;KACpE;IACD;QACE,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,CAAC,WAAW,CAAC;QACrB,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM;YACb,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,mEAAmE;SAC7E;QACD,QAAQ,EAAE;YACR,KAAK,EAAE,OAAO;YACd,KAAK,EAAE,CAAC;YACR,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,4DAA4D;SACtE;QACD,IAAI,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE;KACrC;IACD;QACE,IAAI,EAAE,IAAI;QACV,WAAW,EAAE;YACX;gBACE,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,CAAC,YAAY,CAAC;gBACtB,IAAI,EAAE;oBACJ,KAAK,EAAE,MAAM;oBACb,IAAI,EAAE,IAAI;oBACV,OAAO,EAAE,+DAA+D;iBACzE;aACF;SACF;KACF;IACD;QACE,IAAI,EAAE,KAAK;QACX,MAAM,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC;QACzB,WAAW,EAAE;YACX;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE;oBACJ,KAAK,EAAE,MAAM;oBACb,IAAI,EAAE,IAAI;oBACV,OAAO,EAAE,4DAA4D;iBACtE;aACF;YACD,EAAE,IAAI,EAAE,MAAM,EAAE;YAChB,EAAE,IAAI,EAAE,QAAQ,EAAE;YAClB,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;SAC5E;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,MAAM,EAAE,CAAC,mBAAmB,CAAC;QAC7B,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM;YACb,IAAI,EAAE,GAAG;YACT,OAAO,EACL,iHAAiH;SACpH;QACD,QAAQ,EAAE;YACR,KAAK,EAAE,OAAO;YACd,KAAK,EAAE,CAAC;YACR,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,kDAAkD;SAC5D;QACD,IAAI,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE;QACtD,GAAG,EAAE,kBAAkB;KACxB;IACD;QACE,IAAI,EAAE,QAAQ;QACd,aAAa,EAAE,IAAI;QACnB,MAAM,EAAE,CAAC,uBAAuB,CAAC;QACjC,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM;YACb,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,qDAAqD;SAC/D;KACF;IACD;QACE,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE,CAAC,SAAS,CAAC;QACnB,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM;YACb,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,6DAA6D;SACvE;QACD,QAAQ,EAAE;YACR,KAAK,EAAE,OAAO;YACd,KAAK,EAAE,CAAC;YACR,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,sDAAsD;SAChE;QACD,IAAI,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE;QAClC,GAAG,EAAE,MAAM;KACZ;IACD;QACE,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,CAAC,WAAW,CAAC;QACrB,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM;YACb,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,qEAAqE;SAC/E;QACD,IAAI,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE;KACrC;IACD;QACE,IAAI,EAAE,MAAM;QACZ,aAAa,EAAE,IAAI;QACnB,MAAM,EAAE,CAAC,SAAS,CAAC;QACnB,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM;YACb,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,uDAAuD;SACjE;QACD,QAAQ,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,iCAAiC,EAAE;QAC7F,IAAI,EAAE,EAAE,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE;QACxD,GAAG,EAAE,uBAAuB;KAC7B;IACD;QACE,IAAI,EAAE,KAAK;QACX,MAAM,EAAE,CAAC,QAAQ,CAAC;QAClB,WAAW,EAAE;YACX,EAAE,IAAI,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE;YACpC,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE;YACrC,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE;YACrC,EAAE,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE;YACnC,EAAE,IAAI,EAAE,MAAM,EAAE;SACjB;QACD,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM;YACb,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,2EAA2E;SACrF;QACD,QAAQ,EAAE;YACR,KAAK,EAAE,OAAO;YACd,KAAK,EAAE,CAAC;YACR,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,8DAA8D;SACxE;KACF;IACD;QACE,IAAI,EAAE,KAAK;QACX,aAAa,EAAE,IAAI;QACnB,MAAM,EAAE,CAAC,QAAQ,CAAC;QAClB,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM;YACb,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,2DAA2D;SACrE;KACF;IACD;QACE,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;QAC5B,WAAW,EAAE;YACX,EAAE,IAAI,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE;YACpC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;YACvD,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;YACpE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;YAC3D,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;YACvE,EAAE,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;YAC5F,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE;YACxF,EAAE,IAAI,EAAE,QAAQ,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;SAC3F;QACD,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM;YACb,IAAI,EAAE,IAAI;YACV,OAAO,EACL,yFAAyF;SAC5F;QACD,QAAQ,EAAE;YACR,KAAK,EAAE,OAAO;YACd,KAAK,EAAE,CAAC;YACR,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,qEAAqE;SAC/E;KACF;IAED;QACE,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE;YACX;gBACE,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,CAAC,cAAc,CAAC;gBACxB,QAAQ,EAAE,CAAC;gBACX,IAAI,EAAE;oBACJ,KAAK,EAAE,MAAM;oBACb,IAAI,EAAE,IAAI;oBACV,OAAO,EAAE,gEAAgE;iBAC1E;aACF;YACD;gBACE,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,CAAC,cAAc,CAAC;gBACxB,QAAQ,EAAE,CAAC;gBACX,GAAG,EAAE,WAAW;gBAChB,IAAI,EAAE;oBACJ,KAAK,EAAE,MAAM;oBACb,IAAI,EAAE,IAAI;oBACV,OAAO,EAAE,mEAAmE;iBAC7E;aACF;YACD;gBACE,IAAI,EAAE,OAAO;gBACb,MAAM,EAAE,CAAC,eAAe,CAAC;gBACzB,QAAQ,EAAE,CAAC;gBACX,IAAI,EAAE;oBACJ,KAAK,EAAE,MAAM;oBACb,IAAI,EAAE,IAAI;oBACV,OAAO,EAAE,oDAAoD;iBAC9D;aACF;YACD;gBACE,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,CAAC,gBAAgB,CAAC;gBAC1B,IAAI,EAAE;oBACJ,KAAK,EAAE,MAAM;oBACb,IAAI,EAAE,IAAI;oBACV,OAAO,EAAE,wDAAwD;iBAClE;aACF;SACF;KACF;IAED;QACE,IAAI,EAAE,SAAS;QACf,WAAW,EAAE;YACX;gBACE,IAAI,EAAE,KAAK;gBACX,aAAa,EAAE,IAAI;gBACnB,MAAM,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC;gBAC7B,IAAI,EAAE;oBACJ,KAAK,EAAE,SAAS;oBAChB,IAAI,EAAE,GAAG;oBACT,OAAO,EAAE,uDAAuD;iBACjE;aACF;YACD;gBACE,IAAI,EAAE,QAAQ;gBACd,aAAa,EAAE,IAAI;gBACnB,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC;gBAChC,IAAI,EAAE;oBACJ,KAAK,EAAE,SAAS;oBAChB,IAAI,EAAE,GAAG;oBACT,OAAO,EAAE,uCAAuC;iBACjD;aACF;YACD;gBACE,IAAI,EAAE,MAAM;gBACZ,aAAa,EAAE,IAAI;gBACnB,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;gBAC9B,IAAI,EAAE;oBACJ,KAAK,EAAE,SAAS;oBAChB,IAAI,EAAE,IAAI;oBACV,OAAO,EAAE,mEAAmE;iBAC7E;aACF;YACD;gBACE,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;gBAC9B,IAAI,EAAE;oBACJ,KAAK,EAAE,SAAS;oBAChB,IAAI,EAAE,IAAI;oBACV,OAAO,EAAE,kEAAkE;iBAC5E;gBACD,IAAI,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE;aACtC;YACD;gBACE,IAAI,EAAE,YAAY;gBAClB,MAAM,EAAE,CAAC,SAAS,EAAE,eAAe,CAAC;gBACpC,IAAI,EAAE;oBACJ,KAAK,EAAE,SAAS;oBAChB,IAAI,EAAE,IAAI;oBACV,OAAO,EAAE,+DAA+D;iBACzE;aACF;SACF;KACF;IAED;QACE,IAAI,EAAE,SAAS;QACf,WAAW,EAAE;YACX;gBACE,IAAI,EAAE,KAAK;gBACX,aAAa,EAAE,IAAI;gBACnB,MAAM,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC;gBAC7B,IAAI,EAAE;oBACJ,KAAK,EAAE,SAAS;oBAChB,IAAI,EAAE,IAAI;oBACV,OAAO,EAAE,0EAA0E;iBACpF;gBACD,IAAI,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,eAAe,EAAE;aAC7D;YACD;gBACE,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC;gBAC7B,IAAI,EAAE;oBACJ,KAAK,EAAE,SAAS;oBAChB,IAAI,EAAE,IAAI;oBACV,OAAO,EAAE,+DAA+D;iBACzE;aACF;YACD;gBACE,IAAI,EAAE,MAAM;gBACZ,aAAa,EAAE,IAAI;gBACnB,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;gBAC9B,IAAI,EAAE;oBACJ,KAAK,EAAE,SAAS;oBAChB,IAAI,EAAE,IAAI;oBACV,OAAO,EAAE,qDAAqD;iBAC/D;aACF;YACD;gBACE,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC;gBAChC,IAAI,EAAE;oBACJ,KAAK,EAAE,SAAS;oBAChB,IAAI,EAAE,IAAI;oBACV,OAAO,EAAE,gFAAgF;iBAC1F;gBACD,IAAI,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE;aACrC;SACF;KACF;IAED;QACE,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE;YACX,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,gBAAgB,CAAC,EAAE;YAC5C,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE;YACvD,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE;YACvD,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE;SACzD;QACD,IAAI,EAAE;YACJ,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,gEAAgE;SAC1E;KACF;IACD;QACE,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE;YACX;gBACE,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;gBAC7B,IAAI,EAAE;oBACJ,KAAK,EAAE,IAAI;oBACX,IAAI,EAAE,IAAI;oBACV,OAAO,EAAE,6DAA6D;iBACvE;aACF;SACF;KACF;IACD;QACE,IAAI,EAAE,QAAQ;QACd,aAAa,EAAE,IAAI;QACnB,MAAM,EAAE,CAAC,WAAW,CAAC;QACrB,IAAI,EAAE;YACJ,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,wEAAwE;SAClF;KACF;IACD;QACE,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;QAC5B,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;QAC1F,IAAI,EAAE;YACJ,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,sDAAsD;SAChE;KACF;IACD;QACE,IAAI,EAAE,YAAY;QAClB,MAAM,EAAE,CAAC,eAAe,CAAC;QACzB,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAClE,IAAI,EAAE;YACJ,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,+CAA+C;SACzD;KACF;IACD;QACE,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,CAAC,WAAW,CAAC;QACrB,IAAI,EAAE;YACJ,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,0EAA0E;SACpF;KACF;IACD;QACE,IAAI,EAAE,KAAK;QACX,MAAM,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,CAAC;QAC9C,WAAW,EAAE;YACX;gBACE,IAAI,EAAE,SAAS;gBACf,GAAG,EAAE,KAAK;gBACV,IAAI,EAAE;oBACJ,KAAK,EAAE,MAAM;oBACb,IAAI,EAAE,IAAI;oBACV,OAAO,EAAE,kDAAkD;iBAC5D;aACF;SACF;KACF;CACF,CAAC;AAEF,iFAAiF;AAEjF,0DAA0D;AAC1D,SAAgB,YAAY;IAC1B,OAAO,eAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AACpC,CAAC;AAED,yEAAyE;AACzE,SAAgB,eAAe;IAC7B,MAAM,GAAG,GAAG,EAAE,CAAC;IACf,KAAK,MAAM,OAAO,IAAI,eAAO,EAAE,CAAC;QAC9B,IAAI,OAAO,CAAC,WAAW;YAAE,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACtF,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;GAIG;AACH,SAAgB,gBAAgB;IAC9B,MAAM,IAAI,GAAG,EAAE,CAAC;IAChB,MAAM,IAAI,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE;QAChC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC;QACnC,IAAI,CAAC,IAAI,CAAC;YACR,OAAO,EAAE,GAAG,UAAU,GAAG,IAAI,IAAI,IAAI,EAAE;YACvC,YAAY,EAAE,IAAI,CAAC,GAAG;YACtB,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;SACzB,CAAC,CAAC;IACL,CAAC,CAAC;IACF,KAAK,MAAM,OAAO,IAAI,eAAO,EAAE,CAAC;QAC9B,IAAI,OAAO,CAAC,IAAI;YAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QACnD,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC;YAC5C,IAAI,GAAG,CAAC,IAAI;gBAAE,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,SAAgB,QAAQ;IACtB,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,mBAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAC5D,MAAM,GAAG,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QAC1B,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,IAAI,CAAC,KAAK,SAAS,KAAK,GAAG,CAAC,CAAC;QAC1F,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;IACjE,CAAC,CAAC;IACF,KAAK,MAAM,OAAO,IAAI,eAAO,EAAE,CAAC;QAC9B,IAAI,OAAO,CAAC,IAAI;YAAE,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QAClD,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC;YAC5C,IAAI,GAAG,CAAC,IAAI;gBAAE,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IACD,OAAO,mBAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC5F,CAAC;AAED,gDAAgD;AAChD,SAAgB,YAAY;IAC1B,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,mBAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAC5D,KAAK,MAAM,OAAO,IAAI,eAAO,EAAE,CAAC;QAC9B,IAAI,CAAC,OAAO,CAAC,QAAQ;YAAE,SAAS;QAChC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACnD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,wCAAwC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC;QAC3E,CAAC;QACD,MAAM,CAAC,IAAI,CAAC;YACV,KAAK,EAAE,OAAO,CAAC,IAAI;YACnB,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI;YAC3B,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,OAAO;YACjC,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,KAAK;SAC9B,CAAC,CAAC;IACL,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC;IACvD,CAAC;IACD,OAAO,mBAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC5F,CAAC;AAED;;;;GAIG;AACH,SAAgB,kBAAkB;IAChC,OAAO,eAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC;AACnD,CAAC;AAED;;GAEG;AACH,SAAgB,QAAQ;IACtB,MAAM,GAAG,GAAG,EAAE,CAAC;IACf,KAAK,MAAM,OAAO,IAAI,eAAO,EAAE,CAAC;QAC9B,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;YACxB,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;gBACtC,IAAI,OAAO,CAAC,GAAG,KAAK,KAAK,IAAI,GAAG,CAAC,GAAG,KAAK,KAAK;oBAAE,SAAS;gBACzD,MAAM,QAAQ,GACZ,CAAC,OAAO,GAAG,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;oBAC/C,QAAQ,OAAO,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;gBACxD,GAAG,CAAC,QAAQ,CAAC,GAAG,GAAG,OAAO,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;YAChD,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,OAAO,CAAC,GAAG,KAAK,KAAK;gBAAE,SAAS;YACpC,MAAM,QAAQ,GACZ,CAAC,OAAO,OAAO,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;gBACvD,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAC5C,GAAG,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;QAC/B,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rsaglobaltech/specgate",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "Specs as executable contracts
|
|
3
|
+
"version": "0.9.0",
|
|
4
|
+
"description": "Specs as executable contracts \u2014 requirements, scenarios and traceability that CI enforces.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "commonjs",
|
|
7
7
|
"bin": {
|
|
@@ -101,5 +101,8 @@
|
|
|
101
101
|
"prettier": "^3.8.3",
|
|
102
102
|
"typescript": "^6.0.3",
|
|
103
103
|
"typescript-eslint": "^8.59.3"
|
|
104
|
+
},
|
|
105
|
+
"overrides": {
|
|
106
|
+
"qs": "^6.16.0"
|
|
104
107
|
}
|
|
105
108
|
}
|
|
@@ -23,5 +23,5 @@ Rules for any AI coding agent (and any human) working on this repository.
|
|
|
23
23
|
|
|
24
24
|
1. The scenario(s) for the requirement pass.
|
|
25
25
|
2. `{{TEST_CMD}}` passes.
|
|
26
|
-
3. `specgate validate . --strict
|
|
26
|
+
3. `specgate validate . --strict` passes.
|
|
27
27
|
4. The traceability row is updated via `specgate done REQ-NNN`.
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
> Adopted into Spec-Driven Development on an existing codebase (brownfield).
|
|
4
4
|
> `specgate req add "<title>"` reserves the next `REQ-NNN` and adds its row to
|
|
5
|
-
> `docs/specs/traceability.md`
|
|
6
|
-
>
|
|
7
|
-
>
|
|
8
|
-
>
|
|
5
|
+
> `docs/specs/traceability.md` and a draft `## REQ-NNN` section below — rewrite
|
|
6
|
+
> its obligation. It does not write a `.feature`: add a Gherkin scenario under
|
|
7
|
+
> `features/`, then `specgate req link REQ-NNN --feature … --test …` to point
|
|
8
|
+
> the row at both. Existing behaviour is retro-filled requirement by
|
|
9
9
|
> requirement — start with the ones your team is actively changing.
|
|
10
10
|
|
|
11
11
|
## Context
|
|
@@ -46,6 +46,18 @@ Define functional requirements, domain language, and acceptance criteria clearly
|
|
|
46
46
|
|
|
47
47
|
| ID | Requirement | Priority | Status |
|
|
48
48
|
|---|---|---|---|
|
|
49
|
+
| REQ-000 | The service reports its own health | Must | Draft |
|
|
50
|
+
|
|
51
|
+
### REQ-000 — The service reports its own health
|
|
52
|
+
|
|
53
|
+
The system MUST expose a health endpoint that answers with status 200 and a
|
|
54
|
+
payload naming the service as `UP`, so that a deployment can be checked without
|
|
55
|
+
reading logs.
|
|
56
|
+
|
|
57
|
+
> The starter requirement, wired end to end: this prose, the row in
|
|
58
|
+
> `docs/specs/traceability.md`, and `features/core/health.feature`. Rewrite it
|
|
59
|
+
> for your own first requirement, or remove all three together —
|
|
60
|
+
> `specgate validate --strict` reports any of them going missing on its own.
|
|
49
61
|
|
|
50
62
|
## 9. Non-functional requirements
|
|
51
63
|
| ID | Requirement | Quality attribute | Status |
|
|
@@ -16,8 +16,8 @@ steps:
|
|
|
16
16
|
versionSpec: '22.x'
|
|
17
17
|
displayName: Use Node.js 22
|
|
18
18
|
|
|
19
|
-
- script: npx @rsaglobaltech/specgate@{{SPECGATE_VERSION}} validate . --strict
|
|
20
|
-
displayName: Validate specs (
|
|
19
|
+
- script: npx @rsaglobaltech/specgate@{{SPECGATE_VERSION}} validate . --strict
|
|
20
|
+
displayName: Validate specs (the gate)
|
|
21
21
|
|
|
22
22
|
# Supply-chain gate: fails when rendered pack content no longer matches the
|
|
23
23
|
# digest pinned in .specops.lock. Skipped when no packs are installed.
|
|
@@ -16,8 +16,8 @@ jobs:
|
|
|
16
16
|
- uses: actions/setup-node@v4
|
|
17
17
|
with:
|
|
18
18
|
node-version: '22'
|
|
19
|
-
- name: Validate specs (
|
|
20
|
-
run: npx @rsaglobaltech/specgate@{{SPECGATE_VERSION}} validate . --strict
|
|
19
|
+
- name: Validate specs (the gate)
|
|
20
|
+
run: npx @rsaglobaltech/specgate@{{SPECGATE_VERSION}} validate . --strict
|
|
21
21
|
# Supply-chain gate: fails when the rendered pack content no longer
|
|
22
22
|
# matches the digest pinned in .specops.lock — a moved tag, a rewritten
|
|
23
23
|
# history, or a hand-edited generated file. Skipped when the project
|
|
@@ -5,7 +5,7 @@ spec-gate:
|
|
|
5
5
|
image: node:22
|
|
6
6
|
stage: test
|
|
7
7
|
script:
|
|
8
|
-
- npx @rsaglobaltech/specgate@{{SPECGATE_VERSION}} validate . --strict
|
|
8
|
+
- npx @rsaglobaltech/specgate@{{SPECGATE_VERSION}} validate . --strict
|
|
9
9
|
# Supply-chain gate: fails when rendered pack content no longer matches the
|
|
10
10
|
# digest pinned in .specops.lock. Skipped when no packs are installed.
|
|
11
11
|
- >
|
package/templates/ci/jenkins.tpl
CHANGED
|
@@ -8,7 +8,7 @@ pipeline {
|
|
|
8
8
|
stages {
|
|
9
9
|
stage('Spec gate') {
|
|
10
10
|
steps {
|
|
11
|
-
sh 'npx @rsaglobaltech/specgate@{{SPECGATE_VERSION}} validate . --strict
|
|
11
|
+
sh 'npx @rsaglobaltech/specgate@{{SPECGATE_VERSION}} validate . --strict'
|
|
12
12
|
}
|
|
13
13
|
}
|
|
14
14
|
// Supply-chain gate: fails when rendered pack content no longer
|
|
@@ -44,7 +44,7 @@ expected interactions (Pact files) and providers verify them in CI before any re
|
|
|
44
44
|
1. Write a failing Pact test describing the expected HTTP interaction.
|
|
45
45
|
2. Run the Pact test — it generates `contracts/pacts/{{CONSUMER_SERVICE}}-{{PROVIDER_SERVICE}}.json`.
|
|
46
46
|
3. Commit the Pact file alongside the consumer feature.
|
|
47
|
-
4. Open a PR — CI runs `validate --strict
|
|
47
|
+
4. Open a PR — CI runs `validate --strict` to confirm the Pact file is registered.
|
|
48
48
|
|
|
49
49
|
### Provider side
|
|
50
50
|
|
|
@@ -83,7 +83,7 @@ Before merging any change to a `contracts/` schema file:
|
|
|
83
83
|
| Pact interactions per endpoint | ≥ 1 happy path + ≥ 1 error path |
|
|
84
84
|
| Provider verification pass rate | 100% on main |
|
|
85
85
|
| Schema lint errors | 0 on main |
|
|
86
|
-
|
|
|
86
|
+
| The gate (`validate --strict`) | Must pass on every PR |
|
|
87
87
|
|
|
88
88
|
## References
|
|
89
89
|
|
|
@@ -28,16 +28,13 @@ from a domain pack:
|
|
|
28
28
|
|
|
29
29
|
- the implementation source tree.
|
|
30
30
|
- the tests.
|
|
31
|
-
|
|
32
|
-
are code, not specification. This is the one place inside `features/` you
|
|
33
|
-
own.
|
|
31
|
+
{{STEP_DEFS_LINE}}
|
|
34
32
|
|
|
35
33
|
# Execution policy
|
|
36
34
|
|
|
37
35
|
1. Read the requirement and its scenario under `features/` before writing
|
|
38
36
|
anything.
|
|
39
|
-
|
|
40
|
-
reason** — a missing implementation, not a typo in a step.
|
|
37
|
+
{{SCENARIO_STEP}}
|
|
41
38
|
3. Implement the smallest thing that makes it pass. Unit-test the pure parts:
|
|
42
39
|
the scenario proves the wiring, the unit tests pin the rules.
|
|
43
40
|
4. Run the gate before declaring done:
|