@agent-teams/engineering-foundation 0.16.0 → 0.16.1

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.
Files changed (60) hide show
  1. package/dist/capabilities/contract-json-schema-releases/application/rules.d.ts.map +1 -1
  2. package/dist/capabilities/contract-json-schema-releases/application/rules.js +2 -1
  3. package/dist/capabilities/contract-json-schema-releases/application/rules.js.map +1 -1
  4. package/dist/capabilities/contract-protobuf-evolution/application/rules.d.ts.map +1 -1
  5. package/dist/capabilities/contract-protobuf-evolution/application/rules.js +2 -1
  6. package/dist/capabilities/contract-protobuf-evolution/application/rules.js.map +1 -1
  7. package/dist/capabilities/documentation-local-references/application/rules.d.ts.map +1 -1
  8. package/dist/capabilities/documentation-local-references/application/rules.js +2 -1
  9. package/dist/capabilities/documentation-local-references/application/rules.js.map +1 -1
  10. package/dist/capabilities/executable-specifications/application/rules.d.ts.map +1 -1
  11. package/dist/capabilities/executable-specifications/application/rules.js +2 -1
  12. package/dist/capabilities/executable-specifications/application/rules.js.map +1 -1
  13. package/dist/capabilities/governance-architecture-decisions/application/rules.d.ts.map +1 -1
  14. package/dist/capabilities/governance-architecture-decisions/application/rules.js +2 -1
  15. package/dist/capabilities/governance-architecture-decisions/application/rules.js.map +1 -1
  16. package/dist/capabilities/public-api-compatibility/application/rules.d.ts.map +1 -1
  17. package/dist/capabilities/public-api-compatibility/application/rules.js +2 -1
  18. package/dist/capabilities/public-api-compatibility/application/rules.js.map +1 -1
  19. package/dist/capabilities/repository-agent-workflow/application/rules.d.ts.map +1 -1
  20. package/dist/capabilities/repository-agent-workflow/application/rules.js +2 -1
  21. package/dist/capabilities/repository-agent-workflow/application/rules.js.map +1 -1
  22. package/dist/capabilities/repository-security-baseline/application/model/repository-security.d.ts +1 -0
  23. package/dist/capabilities/repository-security-baseline/application/model/repository-security.d.ts.map +1 -1
  24. package/dist/capabilities/repository-security-baseline/application/model/repository-security.js.map +1 -1
  25. package/dist/capabilities/repository-security-baseline/application/policies/evaluate-repository-security.d.ts.map +1 -1
  26. package/dist/capabilities/repository-security-baseline/application/policies/evaluate-repository-security.js +24 -8
  27. package/dist/capabilities/repository-security-baseline/application/policies/evaluate-repository-security.js.map +1 -1
  28. package/dist/capabilities/repository-security-baseline/application/rules.d.ts +1 -0
  29. package/dist/capabilities/repository-security-baseline/application/rules.d.ts.map +1 -1
  30. package/dist/capabilities/repository-security-baseline/application/rules.js +3 -1
  31. package/dist/capabilities/repository-security-baseline/application/rules.js.map +1 -1
  32. package/dist/capabilities/repository-security-baseline/contract/config.d.ts.map +1 -1
  33. package/dist/capabilities/repository-security-baseline/contract/config.js +15 -0
  34. package/dist/capabilities/repository-security-baseline/contract/config.js.map +1 -1
  35. package/dist/capabilities/source-dependencies/application/rules.d.ts.map +1 -1
  36. package/dist/capabilities/source-dependencies/application/rules.js +2 -1
  37. package/dist/capabilities/source-dependencies/application/rules.js.map +1 -1
  38. package/dist/capabilities/suppression-governance/application/rules.d.ts.map +1 -1
  39. package/dist/capabilities/suppression-governance/application/rules.js +2 -1
  40. package/dist/capabilities/suppression-governance/application/rules.js.map +1 -1
  41. package/dist/capabilities/workspace-dependency-declarations/application/rules.d.ts.map +1 -1
  42. package/dist/capabilities/workspace-dependency-declarations/application/rules.js +2 -1
  43. package/dist/capabilities/workspace-dependency-declarations/application/rules.js.map +1 -1
  44. package/dist/composition/capability-registry.d.ts.map +1 -1
  45. package/dist/composition/capability-registry.js +2 -1
  46. package/dist/composition/capability-registry.js.map +1 -1
  47. package/dist/composition/rule-registry.d.ts +1 -0
  48. package/dist/composition/rule-registry.d.ts.map +1 -1
  49. package/dist/composition/rule-registry.js +14 -12
  50. package/dist/composition/rule-registry.js.map +1 -1
  51. package/dist/foundation-config.d.ts +1 -3
  52. package/dist/foundation-config.d.ts.map +1 -1
  53. package/dist/foundation-config.js +2 -28
  54. package/dist/foundation-config.js.map +1 -1
  55. package/dist/unique-registry.d.ts +2 -0
  56. package/dist/unique-registry.d.ts.map +1 -0
  57. package/dist/unique-registry.js +11 -0
  58. package/dist/unique-registry.js.map +1 -0
  59. package/package.json +1 -1
  60. package/schemas/repository-security-baseline/v1.schema.json +6 -0
@@ -1 +1 @@
1
- {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/contract-json-schema-releases/application/rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,0BAA0B,EAAE,OAAO,CAAC;CAC9C;AAkBD,eAAO,MAAM,yBAAyB;;;;;EAsBpC,CAAC;AAEH,eAAO,MAAM,+BAA+B,EAAE,WAAW,CACvD,MAAM,EACN,6BAA6B,CAG9B,CAAC"}
1
+ {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/contract-json-schema-releases/application/rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAGrE,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,0BAA0B,EAAE,OAAO,CAAC;CAC9C;AAkBD,eAAO,MAAM,yBAAyB;;;;;EAsBpC,CAAC;AAEH,eAAO,MAAM,+BAA+B,EAAE,WAAW,CACvD,MAAM,EACN,6BAA6B,CAI9B,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { createUniqueRegistry } from "../../../unique-registry.js";
1
2
  function rule(suffix, rationale, remediation, requiresArchitectureReview = false) {
2
3
  return Object.freeze({
3
4
  id: `contract.json-schema-releases.${suffix}`,
@@ -14,5 +15,5 @@ export const JSON_SCHEMA_RELEASE_RULES = Object.freeze({
14
15
  immutableVersionMutated: rule("immutable-version-mutated", "A published JSON Schema contract version cannot change its canonical schema set.", "Publish a new public contract version instead of mutating released schema content.", true),
15
16
  publicVersionRegressed: rule("public-version-regressed", "A public contract version cannot move backwards from its released baseline.", "Use an exact semantic version equal to or newer than the released contract version.")
16
17
  });
17
- export const JSON_SCHEMA_RELEASE_RULES_BY_ID = new Map(Object.values(JSON_SCHEMA_RELEASE_RULES).map((metadata) => [metadata.id, metadata]));
18
+ export const JSON_SCHEMA_RELEASE_RULES_BY_ID = createUniqueRegistry("rule", Object.values(JSON_SCHEMA_RELEASE_RULES).map((metadata) => [metadata.id, metadata]));
18
19
  //# sourceMappingURL=rules.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../../src/capabilities/contract-json-schema-releases/application/rules.ts"],"names":[],"mappings":"AAWA,SAAS,IAAI,CACX,MAAc,EACd,SAAiB,EACjB,WAAmB,EACnB,0BAA0B,GAAG,KAAK;IAElC,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,EAAE,EAAE,iCAAiC,MAAM,EAAE;QAC7C,QAAQ,EAAE,OAAO;QACjB,SAAS;QACT,WAAW;QACX,aAAa,EAAE,8CAA8C;QAC7D,0BAA0B;KAC3B,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,yBAAyB,GAAG,MAAM,CAAC,MAAM,CAAC;IACrD,0BAA0B,EAAE,IAAI,CAC9B,8BAA8B,EAC9B,oFAAoF,EACpF,mGAAmG,CACpG;IACD,wBAAwB,EAAE,IAAI,CAC5B,4BAA4B,EAC5B,+EAA+E,EAC/E,+EAA+E,CAChF;IACD,uBAAuB,EAAE,IAAI,CAC3B,2BAA2B,EAC3B,kFAAkF,EAClF,oFAAoF,EACpF,IAAI,CACL;IACD,sBAAsB,EAAE,IAAI,CAC1B,0BAA0B,EAC1B,6EAA6E,EAC7E,qFAAqF,CACtF;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,+BAA+B,GAGxC,IAAI,GAAG,CACT,MAAM,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CACpF,CAAC"}
1
+ {"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../../src/capabilities/contract-json-schema-releases/application/rules.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAWnE,SAAS,IAAI,CACX,MAAc,EACd,SAAiB,EACjB,WAAmB,EACnB,0BAA0B,GAAG,KAAK;IAElC,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,EAAE,EAAE,iCAAiC,MAAM,EAAE;QAC7C,QAAQ,EAAE,OAAO;QACjB,SAAS;QACT,WAAW;QACX,aAAa,EAAE,8CAA8C;QAC7D,0BAA0B;KAC3B,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,yBAAyB,GAAG,MAAM,CAAC,MAAM,CAAC;IACrD,0BAA0B,EAAE,IAAI,CAC9B,8BAA8B,EAC9B,oFAAoF,EACpF,mGAAmG,CACpG;IACD,wBAAwB,EAAE,IAAI,CAC5B,4BAA4B,EAC5B,+EAA+E,EAC/E,+EAA+E,CAChF;IACD,uBAAuB,EAAE,IAAI,CAC3B,2BAA2B,EAC3B,kFAAkF,EAClF,oFAAoF,EACpF,IAAI,CACL;IACD,sBAAsB,EAAE,IAAI,CAC1B,0BAA0B,EAC1B,6EAA6E,EAC7E,qFAAqF,CACtF;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,+BAA+B,GAGxC,oBAAoB,CACtB,MAAM,EACN,MAAM,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CACpF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/contract-protobuf-evolution/application/rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,0BAA0B,EAAE,OAAO,CAAC;CAC9C;AAkBD,eAAO,MAAM,wBAAwB;;;;;;;;EAuCnC,CAAC;AAEH,eAAO,MAAM,8BAA8B,EAAE,WAAW,CACtD,MAAM,EACN,6BAA6B,CAG9B,CAAC"}
1
+ {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/contract-protobuf-evolution/application/rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAGrE,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,0BAA0B,EAAE,OAAO,CAAC;CAC9C;AAkBD,eAAO,MAAM,wBAAwB;;;;;;;;EAuCnC,CAAC;AAEH,eAAO,MAAM,8BAA8B,EAAE,WAAW,CACtD,MAAM,EACN,6BAA6B,CAI9B,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { createUniqueRegistry } from "../../../unique-registry.js";
1
2
  function rule(suffix, rationale, remediation, requiresArchitectureReview = false) {
2
3
  return Object.freeze({
3
4
  id: `contract.protobuf-evolution.${suffix}`,
@@ -17,5 +18,5 @@ export const PROTOBUF_EVOLUTION_RULES = Object.freeze({
17
18
  publicVersionRegressed: rule("public-version-regressed", "A public contract version cannot move backwards from its released baseline.", "Use an exact semantic version that is equal to or newer than the released contract version."),
18
19
  toolchainMismatch: rule("toolchain-mismatch", "Descriptor comparisons are reproducible only when Buf configuration and generator versions match the released evidence.", "Review and promote a new released baseline through the controlled contract release workflow.", true)
19
20
  });
20
- export const PROTOBUF_EVOLUTION_RULES_BY_ID = new Map(Object.values(PROTOBUF_EVOLUTION_RULES).map((metadata) => [metadata.id, metadata]));
21
+ export const PROTOBUF_EVOLUTION_RULES_BY_ID = createUniqueRegistry("rule", Object.values(PROTOBUF_EVOLUTION_RULES).map((metadata) => [metadata.id, metadata]));
21
22
  //# sourceMappingURL=rules.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../../src/capabilities/contract-protobuf-evolution/application/rules.ts"],"names":[],"mappings":"AAWA,SAAS,IAAI,CACX,MAAc,EACd,SAAiB,EACjB,WAAmB,EACnB,0BAA0B,GAAG,KAAK;IAElC,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,EAAE,EAAE,+BAA+B,MAAM,EAAE;QAC3C,QAAQ,EAAE,OAAO;QACjB,SAAS;QACT,WAAW;QACX,aAAa,EAAE,8CAA8C;QAC7D,0BAA0B;KAC3B,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,wBAAwB,GAAG,MAAM,CAAC,MAAM,CAAC;IACpD,gBAAgB,EAAE,IAAI,CACpB,mBAAmB,EACnB,2FAA2F,EAC3F,wEAAwE,CACzE;IACD,uBAAuB,EAAE,IAAI,CAC3B,2BAA2B,EAC3B,iFAAiF,EACjF,4EAA4E,CAC7E;IACD,yBAAyB,EAAE,IAAI,CAC7B,8BAA8B,EAC9B,gFAAgF,EAChF,4EAA4E,EAC5E,IAAI,CACL;IACD,eAAe,EAAE,IAAI,CACnB,kBAAkB,EAClB,0EAA0E,EAC1E,kFAAkF,CACnF;IACD,uBAAuB,EAAE,IAAI,CAC3B,2BAA2B,EAC3B,wGAAwG,EACxG,wFAAwF,EACxF,IAAI,CACL;IACD,sBAAsB,EAAE,IAAI,CAC1B,0BAA0B,EAC1B,6EAA6E,EAC7E,6FAA6F,CAC9F;IACD,iBAAiB,EAAE,IAAI,CACrB,oBAAoB,EACpB,yHAAyH,EACzH,8FAA8F,EAC9F,IAAI,CACL;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,8BAA8B,GAGvC,IAAI,GAAG,CACT,MAAM,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CACnF,CAAC"}
1
+ {"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../../src/capabilities/contract-protobuf-evolution/application/rules.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAWnE,SAAS,IAAI,CACX,MAAc,EACd,SAAiB,EACjB,WAAmB,EACnB,0BAA0B,GAAG,KAAK;IAElC,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,EAAE,EAAE,+BAA+B,MAAM,EAAE;QAC3C,QAAQ,EAAE,OAAO;QACjB,SAAS;QACT,WAAW;QACX,aAAa,EAAE,8CAA8C;QAC7D,0BAA0B;KAC3B,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,wBAAwB,GAAG,MAAM,CAAC,MAAM,CAAC;IACpD,gBAAgB,EAAE,IAAI,CACpB,mBAAmB,EACnB,2FAA2F,EAC3F,wEAAwE,CACzE;IACD,uBAAuB,EAAE,IAAI,CAC3B,2BAA2B,EAC3B,iFAAiF,EACjF,4EAA4E,CAC7E;IACD,yBAAyB,EAAE,IAAI,CAC7B,8BAA8B,EAC9B,gFAAgF,EAChF,4EAA4E,EAC5E,IAAI,CACL;IACD,eAAe,EAAE,IAAI,CACnB,kBAAkB,EAClB,0EAA0E,EAC1E,kFAAkF,CACnF;IACD,uBAAuB,EAAE,IAAI,CAC3B,2BAA2B,EAC3B,wGAAwG,EACxG,wFAAwF,EACxF,IAAI,CACL;IACD,sBAAsB,EAAE,IAAI,CAC1B,0BAA0B,EAC1B,6EAA6E,EAC7E,6FAA6F,CAC9F;IACD,iBAAiB,EAAE,IAAI,CACrB,oBAAoB,EACpB,yHAAyH,EACzH,8FAA8F,EAC9F,IAAI,CACL;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,8BAA8B,GAGvC,oBAAoB,CACtB,MAAM,EACN,MAAM,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CACnF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/documentation-local-references/application/rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE,MAAM,WAAW,wCAAwC;IACvD,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,0BAA0B,EAAE,OAAO,CAAC;IAC7C,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;CACvC;AAkBD,eAAO,MAAM,mCAAmC;;;;;;;;EAsC9C,CAAC;AAEH,eAAO,MAAM,yCAAyC,EAAE,WAAW,CACjE,MAAM,EACN,wCAAwC,CAMzC,CAAC"}
1
+ {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/documentation-local-references/application/rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAGrE,MAAM,WAAW,wCAAwC;IACvD,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,0BAA0B,EAAE,OAAO,CAAC;IAC7C,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;CACvC;AAkBD,eAAO,MAAM,mCAAmC;;;;;;;;EAsC9C,CAAC;AAEH,eAAO,MAAM,yCAAyC,EAAE,WAAW,CACjE,MAAM,EACN,wCAAwC,CAOzC,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { createUniqueRegistry } from "../../../unique-registry.js";
1
2
  function rule(suffix, rationale, remediation, requiresArchitectureReview = false) {
2
3
  return Object.freeze({
3
4
  documentation: "docs/architecture/executable-capabilities.md#documentationlocal-references",
@@ -17,7 +18,7 @@ export const DOCUMENTATION_LOCAL_REFERENCE_RULES = Object.freeze({
17
18
  sourceUnavailable: rule("source-unavailable", "Documentation evidence is incomplete when a configured Markdown source cannot be inspected.", "Restore a regular readable Markdown source under the configured root."),
18
19
  symbolicLink: rule("symbolic-link", "Symbolic links make repository-local documentation targets non-portable and can bypass containment checks.", "Replace the symbolic link with a regular repository file or directory.", true)
19
20
  });
20
- export const DOCUMENTATION_LOCAL_REFERENCE_RULES_BY_ID = new Map(Object.values(DOCUMENTATION_LOCAL_REFERENCE_RULES).map((metadata) => [
21
+ export const DOCUMENTATION_LOCAL_REFERENCE_RULES_BY_ID = createUniqueRegistry("rule", Object.values(DOCUMENTATION_LOCAL_REFERENCE_RULES).map((metadata) => [
21
22
  metadata.id,
22
23
  metadata
23
24
  ]));
@@ -1 +1 @@
1
- {"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../../src/capabilities/documentation-local-references/application/rules.ts"],"names":[],"mappings":"AAWA,SAAS,IAAI,CACX,MAAc,EACd,SAAiB,EACjB,WAAmB,EACnB,0BAA0B,GAAG,KAAK;IAElC,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,aAAa,EAAE,4EAA4E;QAC3F,EAAE,EAAE,kCAAkC,MAAM,EAAE;QAC9C,SAAS;QACT,WAAW;QACX,0BAA0B;QAC1B,QAAQ,EAAE,OAAO;KAClB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,mCAAmC,GAAG,MAAM,CAAC,MAAM,CAAC;IAC/D,UAAU,EAAE,IAAI,CACd,aAAa,EACb,oEAAoE,EACpE,sDAAsD,CACvD;IACD,sBAAsB,EAAE,IAAI,CAC1B,0BAA0B,EAC1B,kFAAkF,EAClF,oEAAoE,CACrE;IACD,gBAAgB,EAAE,IAAI,CACpB,mBAAmB,EACnB,4DAA4D,EAC5D,yDAAyD,CAC1D;IACD,aAAa,EAAE,IAAI,CACjB,gBAAgB,EAChB,qFAAqF,EACrF,qDAAqD,CACtD;IACD,gBAAgB,EAAE,IAAI,CACpB,mBAAmB,EACnB,uEAAuE,EACvE,+DAA+D,EAC/D,IAAI,CACL;IACD,iBAAiB,EAAE,IAAI,CACrB,oBAAoB,EACpB,6FAA6F,EAC7F,uEAAuE,CACxE;IACD,YAAY,EAAE,IAAI,CAChB,eAAe,EACf,4GAA4G,EAC5G,wEAAwE,EACxE,IAAI,CACL;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,yCAAyC,GAGlD,IAAI,GAAG,CACT,MAAM,CAAC,MAAM,CAAC,mCAAmC,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC;IACnE,QAAQ,CAAC,EAAE;IACX,QAAQ;CACT,CAAC,CACH,CAAC"}
1
+ {"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../../src/capabilities/documentation-local-references/application/rules.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAWnE,SAAS,IAAI,CACX,MAAc,EACd,SAAiB,EACjB,WAAmB,EACnB,0BAA0B,GAAG,KAAK;IAElC,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,aAAa,EAAE,4EAA4E;QAC3F,EAAE,EAAE,kCAAkC,MAAM,EAAE;QAC9C,SAAS;QACT,WAAW;QACX,0BAA0B;QAC1B,QAAQ,EAAE,OAAO;KAClB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,mCAAmC,GAAG,MAAM,CAAC,MAAM,CAAC;IAC/D,UAAU,EAAE,IAAI,CACd,aAAa,EACb,oEAAoE,EACpE,sDAAsD,CACvD;IACD,sBAAsB,EAAE,IAAI,CAC1B,0BAA0B,EAC1B,kFAAkF,EAClF,oEAAoE,CACrE;IACD,gBAAgB,EAAE,IAAI,CACpB,mBAAmB,EACnB,4DAA4D,EAC5D,yDAAyD,CAC1D;IACD,aAAa,EAAE,IAAI,CACjB,gBAAgB,EAChB,qFAAqF,EACrF,qDAAqD,CACtD;IACD,gBAAgB,EAAE,IAAI,CACpB,mBAAmB,EACnB,uEAAuE,EACvE,+DAA+D,EAC/D,IAAI,CACL;IACD,iBAAiB,EAAE,IAAI,CACrB,oBAAoB,EACpB,6FAA6F,EAC7F,uEAAuE,CACxE;IACD,YAAY,EAAE,IAAI,CAChB,eAAe,EACf,4GAA4G,EAC5G,wEAAwE,EACxE,IAAI,CACL;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,yCAAyC,GAGlD,oBAAoB,CACtB,MAAM,EACN,MAAM,CAAC,MAAM,CAAC,mCAAmC,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC;IACnE,QAAQ,CAAC,EAAE;IACX,QAAQ;CACT,CAAC,CACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/executable-specifications/application/rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE,MAAM,WAAW,mCAAmC;IAClD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,0BAA0B,EAAE,OAAO,CAAC;CAC9C;AAkBD,eAAO,MAAM,8BAA8B;;;;;;;;;;EA+CzC,CAAC;AAEH,eAAO,MAAM,oCAAoC,EAAE,WAAW,CAC5D,MAAM,EACN,mCAAmC,CAGpC,CAAC"}
1
+ {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/executable-specifications/application/rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAGrE,MAAM,WAAW,mCAAmC;IAClD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,0BAA0B,EAAE,OAAO,CAAC;CAC9C;AAkBD,eAAO,MAAM,8BAA8B;;;;;;;;;;EA+CzC,CAAC;AAEH,eAAO,MAAM,oCAAoC,EAAE,WAAW,CAC5D,MAAM,EACN,mCAAmC,CAIpC,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { createUniqueRegistry } from "../../../unique-registry.js";
1
2
  function rule(suffix, rationale, remediation, requiresArchitectureReview = false) {
2
3
  return Object.freeze({
3
4
  id: `quality.executable-specifications.${suffix}`,
@@ -19,5 +20,5 @@ export const EXECUTABLE_SPECIFICATION_RULES = Object.freeze({
19
20
  schemaBindingUnknown: rule("schema-binding-unknown", "Documents and generated types must bind to a schema in the specification's local set.", "Use a declared schema $id or add the schema to schemaPaths."),
20
21
  specificationIdDuplicate: rule("specification-id-duplicate", "Every executable specification must have one unambiguous catalog identity.", "Assign a unique normalized ID to every catalog entry.")
21
22
  });
22
- export const EXECUTABLE_SPECIFICATION_RULES_BY_ID = new Map(Object.values(EXECUTABLE_SPECIFICATION_RULES).map((metadata) => [metadata.id, metadata]));
23
+ export const EXECUTABLE_SPECIFICATION_RULES_BY_ID = createUniqueRegistry("rule", Object.values(EXECUTABLE_SPECIFICATION_RULES).map((metadata) => [metadata.id, metadata]));
23
24
  //# sourceMappingURL=rules.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../../src/capabilities/executable-specifications/application/rules.ts"],"names":[],"mappings":"AAWA,SAAS,IAAI,CACX,MAAc,EACd,SAAiB,EACjB,WAAmB,EACnB,0BAA0B,GAAG,KAAK;IAElC,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,EAAE,EAAE,qCAAqC,MAAM,EAAE;QACjD,QAAQ,EAAE,OAAO;QACjB,SAAS;QACT,WAAW;QACX,aAAa,EAAE,6CAA6C;QAC5D,0BAA0B;KAC3B,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,8BAA8B,GAAG,MAAM,CAAC,MAAM,CAAC;IAC1D,eAAe,EAAE,IAAI,CACnB,kBAAkB,EAClB,+EAA+E,EAC/E,2DAA2D,CAC5D;IACD,eAAe,EAAE,IAAI,CACnB,kBAAkB,EAClB,8EAA8E,EAC9E,6CAA6C,CAC9C;IACD,WAAW,EAAE,IAAI,CACf,cAAc,EACd,+EAA+E,EAC/E,kEAAkE,CACnE;IACD,eAAe,EAAE,IAAI,CACnB,mBAAmB,EACnB,+FAA+F,EAC/F,oDAAoD,EACpD,IAAI,CACL;IACD,6BAA6B,EAAE,IAAI,CACjC,kCAAkC,EAClC,4EAA4E,EAC5E,6CAA6C,CAC9C;IACD,yBAAyB,EAAE,IAAI,CAC7B,8BAA8B,EAC9B,+EAA+E,EAC/E,iGAAiG,CAClG;IACD,aAAa,EAAE,IAAI,CACjB,gBAAgB,EAChB,6JAA6J,EAC7J,kIAAkI,CACnI;IACD,oBAAoB,EAAE,IAAI,CACxB,wBAAwB,EACxB,uFAAuF,EACvF,6DAA6D,CAC9D;IACD,wBAAwB,EAAE,IAAI,CAC5B,4BAA4B,EAC5B,4EAA4E,EAC5E,uDAAuD,CACxD;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,oCAAoC,GAG7C,IAAI,GAAG,CACT,MAAM,CAAC,MAAM,CAAC,8BAA8B,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CACzF,CAAC"}
1
+ {"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../../src/capabilities/executable-specifications/application/rules.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAWnE,SAAS,IAAI,CACX,MAAc,EACd,SAAiB,EACjB,WAAmB,EACnB,0BAA0B,GAAG,KAAK;IAElC,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,EAAE,EAAE,qCAAqC,MAAM,EAAE;QACjD,QAAQ,EAAE,OAAO;QACjB,SAAS;QACT,WAAW;QACX,aAAa,EAAE,6CAA6C;QAC5D,0BAA0B;KAC3B,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,8BAA8B,GAAG,MAAM,CAAC,MAAM,CAAC;IAC1D,eAAe,EAAE,IAAI,CACnB,kBAAkB,EAClB,+EAA+E,EAC/E,2DAA2D,CAC5D;IACD,eAAe,EAAE,IAAI,CACnB,kBAAkB,EAClB,8EAA8E,EAC9E,6CAA6C,CAC9C;IACD,WAAW,EAAE,IAAI,CACf,cAAc,EACd,+EAA+E,EAC/E,kEAAkE,CACnE;IACD,eAAe,EAAE,IAAI,CACnB,mBAAmB,EACnB,+FAA+F,EAC/F,oDAAoD,EACpD,IAAI,CACL;IACD,6BAA6B,EAAE,IAAI,CACjC,kCAAkC,EAClC,4EAA4E,EAC5E,6CAA6C,CAC9C;IACD,yBAAyB,EAAE,IAAI,CAC7B,8BAA8B,EAC9B,+EAA+E,EAC/E,iGAAiG,CAClG;IACD,aAAa,EAAE,IAAI,CACjB,gBAAgB,EAChB,6JAA6J,EAC7J,kIAAkI,CACnI;IACD,oBAAoB,EAAE,IAAI,CACxB,wBAAwB,EACxB,uFAAuF,EACvF,6DAA6D,CAC9D;IACD,wBAAwB,EAAE,IAAI,CAC5B,4BAA4B,EAC5B,4EAA4E,EAC5E,uDAAuD,CACxD;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,oCAAoC,GAG7C,oBAAoB,CACtB,MAAM,EACN,MAAM,CAAC,MAAM,CAAC,8BAA8B,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CACzF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/governance-architecture-decisions/application/rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE,MAAM,WAAW,0CAA0C;IACzD,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,0BAA0B,EAAE,OAAO,CAAC;IAC7C,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;CACvC;AAkBD,eAAO,MAAM,sCAAsC;;;;;;;;;;;;;;;;;;EA0FjD,CAAC;AAEH,eAAO,MAAM,4CAA4C,EAAE,WAAW,CACpE,MAAM,EACN,0CAA0C,CAM3C,CAAC"}
1
+ {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/governance-architecture-decisions/application/rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAGrE,MAAM,WAAW,0CAA0C;IACzD,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,0BAA0B,EAAE,OAAO,CAAC;IAC7C,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;CACvC;AAkBD,eAAO,MAAM,sCAAsC;;;;;;;;;;;;;;;;;;EA0FjD,CAAC;AAEH,eAAO,MAAM,4CAA4C,EAAE,WAAW,CACpE,MAAM,EACN,0CAA0C,CAO3C,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { createUniqueRegistry } from "../../../unique-registry.js";
1
2
  function rule(suffix, rationale, remediation, requiresArchitectureReview = false) {
2
3
  return Object.freeze({
3
4
  documentation: "docs/architecture/executable-capabilities.md#governancearchitecture-decisions",
@@ -27,7 +28,7 @@ export const ARCHITECTURE_DECISION_GOVERNANCE_RULES = Object.freeze({
27
28
  supersedesMismatch: rule("supersedes-mismatch", "Supersession references must be bidirectional so historical navigation is deterministic.", "Update both predecessor and successor metadata to reference each other."),
28
29
  symbolicLink: rule("symbolic-link", "ADR evidence must not traverse symbolic links because they can bypass repository containment.", "Replace the symbolic link with a regular repository file or directory.", true)
29
30
  });
30
- export const ARCHITECTURE_DECISION_GOVERNANCE_RULES_BY_ID = new Map(Object.values(ARCHITECTURE_DECISION_GOVERNANCE_RULES).map((metadata) => [
31
+ export const ARCHITECTURE_DECISION_GOVERNANCE_RULES_BY_ID = createUniqueRegistry("rule", Object.values(ARCHITECTURE_DECISION_GOVERNANCE_RULES).map((metadata) => [
31
32
  metadata.id,
32
33
  metadata
33
34
  ]));
@@ -1 +1 @@
1
- {"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../../src/capabilities/governance-architecture-decisions/application/rules.ts"],"names":[],"mappings":"AAWA,SAAS,IAAI,CACX,MAAc,EACd,SAAiB,EACjB,WAAmB,EACnB,0BAA0B,GAAG,KAAK;IAElC,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,aAAa,EAAE,+EAA+E;QAC9F,EAAE,EAAE,qCAAqC,MAAM,EAAE;QACjD,SAAS;QACT,WAAW;QACX,0BAA0B;QAC1B,QAAQ,EAAE,OAAO;KAClB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,sCAAsC,GAAG,MAAM,CAAC,MAAM,CAAC;IAClE,uBAAuB,EAAE,IAAI,CAC3B,2BAA2B,EAC3B,8EAA8E,EAC9E,0EAA0E,CAC3E;IACD,uBAAuB,EAAE,IAAI,CAC3B,2BAA2B,EAC3B,wHAAwH,EACxH,kGAAkG,EAClG,IAAI,CACL;IACD,2BAA2B,EAAE,IAAI,CAC/B,+BAA+B,EAC/B,oFAAoF,EACpF,+DAA+D,CAChE;IACD,uBAAuB,EAAE,IAAI,CAC3B,2BAA2B,EAC3B,oGAAoG,EACpG,qFAAqF,EACrF,IAAI,CACL;IACD,uBAAuB,EAAE,IAAI,CAC3B,2BAA2B,EAC3B,gGAAgG,EAChG,kEAAkE,CACnE;IACD,oBAAoB,EAAE,IAAI,CACxB,wBAAwB,EACxB,yEAAyE,EACzE,qFAAqF,EACrF,IAAI,CACL;IACD,WAAW,EAAE,IAAI,CACf,cAAc,EACd,sFAAsF,EACtF,wDAAwD,CACzD;IACD,gBAAgB,EAAE,IAAI,CACpB,mBAAmB,EACnB,+DAA+D,EAC/D,gDAAgD,CACjD;IACD,kBAAkB,EAAE,IAAI,CACtB,qBAAqB,EACrB,4DAA4D,EAC5D,uDAAuD,CACxD;IACD,eAAe,EAAE,IAAI,CACnB,kBAAkB,EAClB,0EAA0E,EAC1E,wEAAwE,CACzE;IACD,eAAe,EAAE,IAAI,CACnB,kBAAkB,EAClB,+EAA+E,EAC/E,wEAAwE,CACzE;IACD,YAAY,EAAE,IAAI,CAChB,eAAe,EACf,6EAA6E,EAC7E,kEAAkE,CACnE;IACD,gBAAgB,EAAE,IAAI,CACpB,mBAAmB,EACnB,kFAAkF,EAClF,yDAAyD,CAC1D;IACD,iBAAiB,EAAE,IAAI,CACrB,oBAAoB,EACpB,wFAAwF,EACxF,0EAA0E,CAC3E;IACD,eAAe,EAAE,IAAI,CACnB,kBAAkB,EAClB,wDAAwD,EACxD,8EAA8E,CAC/E;IACD,kBAAkB,EAAE,IAAI,CACtB,qBAAqB,EACrB,0FAA0F,EAC1F,yEAAyE,CAC1E;IACD,YAAY,EAAE,IAAI,CAChB,eAAe,EACf,+FAA+F,EAC/F,wEAAwE,EACxE,IAAI,CACL;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,4CAA4C,GAGrD,IAAI,GAAG,CACT,MAAM,CAAC,MAAM,CAAC,sCAAsC,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC;IACtE,QAAQ,CAAC,EAAE;IACX,QAAQ;CACT,CAAC,CACH,CAAC"}
1
+ {"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../../src/capabilities/governance-architecture-decisions/application/rules.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAWnE,SAAS,IAAI,CACX,MAAc,EACd,SAAiB,EACjB,WAAmB,EACnB,0BAA0B,GAAG,KAAK;IAElC,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,aAAa,EAAE,+EAA+E;QAC9F,EAAE,EAAE,qCAAqC,MAAM,EAAE;QACjD,SAAS;QACT,WAAW;QACX,0BAA0B;QAC1B,QAAQ,EAAE,OAAO;KAClB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,sCAAsC,GAAG,MAAM,CAAC,MAAM,CAAC;IAClE,uBAAuB,EAAE,IAAI,CAC3B,2BAA2B,EAC3B,8EAA8E,EAC9E,0EAA0E,CAC3E;IACD,uBAAuB,EAAE,IAAI,CAC3B,2BAA2B,EAC3B,wHAAwH,EACxH,kGAAkG,EAClG,IAAI,CACL;IACD,2BAA2B,EAAE,IAAI,CAC/B,+BAA+B,EAC/B,oFAAoF,EACpF,+DAA+D,CAChE;IACD,uBAAuB,EAAE,IAAI,CAC3B,2BAA2B,EAC3B,oGAAoG,EACpG,qFAAqF,EACrF,IAAI,CACL;IACD,uBAAuB,EAAE,IAAI,CAC3B,2BAA2B,EAC3B,gGAAgG,EAChG,kEAAkE,CACnE;IACD,oBAAoB,EAAE,IAAI,CACxB,wBAAwB,EACxB,yEAAyE,EACzE,qFAAqF,EACrF,IAAI,CACL;IACD,WAAW,EAAE,IAAI,CACf,cAAc,EACd,sFAAsF,EACtF,wDAAwD,CACzD;IACD,gBAAgB,EAAE,IAAI,CACpB,mBAAmB,EACnB,+DAA+D,EAC/D,gDAAgD,CACjD;IACD,kBAAkB,EAAE,IAAI,CACtB,qBAAqB,EACrB,4DAA4D,EAC5D,uDAAuD,CACxD;IACD,eAAe,EAAE,IAAI,CACnB,kBAAkB,EAClB,0EAA0E,EAC1E,wEAAwE,CACzE;IACD,eAAe,EAAE,IAAI,CACnB,kBAAkB,EAClB,+EAA+E,EAC/E,wEAAwE,CACzE;IACD,YAAY,EAAE,IAAI,CAChB,eAAe,EACf,6EAA6E,EAC7E,kEAAkE,CACnE;IACD,gBAAgB,EAAE,IAAI,CACpB,mBAAmB,EACnB,kFAAkF,EAClF,yDAAyD,CAC1D;IACD,iBAAiB,EAAE,IAAI,CACrB,oBAAoB,EACpB,wFAAwF,EACxF,0EAA0E,CAC3E;IACD,eAAe,EAAE,IAAI,CACnB,kBAAkB,EAClB,wDAAwD,EACxD,8EAA8E,CAC/E;IACD,kBAAkB,EAAE,IAAI,CACtB,qBAAqB,EACrB,0FAA0F,EAC1F,yEAAyE,CAC1E;IACD,YAAY,EAAE,IAAI,CAChB,eAAe,EACf,+FAA+F,EAC/F,wEAAwE,EACxE,IAAI,CACL;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,4CAA4C,GAGrD,oBAAoB,CACtB,MAAM,EACN,MAAM,CAAC,MAAM,CAAC,sCAAsC,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC;IACtE,QAAQ,CAAC,EAAE;IACX,QAAQ;CACT,CAAC,CACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/public-api-compatibility/application/rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE,MAAM,WAAW,kCAAkC;IACjD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,0BAA0B,EAAE,OAAO,CAAC;CAC9C;AAkBD,eAAO,MAAM,8BAA8B;;;;;;;EAkCzC,CAAC;AAEH,eAAO,MAAM,oCAAoC,EAAE,WAAW,CAC5D,MAAM,EACN,kCAAkC,CAGnC,CAAC"}
1
+ {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/public-api-compatibility/application/rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAGrE,MAAM,WAAW,kCAAkC;IACjD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,0BAA0B,EAAE,OAAO,CAAC;CAC9C;AAkBD,eAAO,MAAM,8BAA8B;;;;;;;EAkCzC,CAAC;AAEH,eAAO,MAAM,oCAAoC,EAAE,WAAW,CAC5D,MAAM,EACN,kCAAkC,CAInC,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { createUniqueRegistry } from "../../../unique-registry.js";
1
2
  function rule(suffix, rationale, remediation, requiresArchitectureReview = false) {
2
3
  return Object.freeze({
3
4
  id: `package.public-api-compatibility.${suffix}`,
@@ -16,5 +17,5 @@ export const PUBLIC_API_COMPATIBILITY_RULES = Object.freeze({
16
17
  insufficientChangeset: rule("insufficient-changeset", "A public API change must request a release bump compatible with its risk.", "Raise the package Changeset to the required minor or major bump."),
17
18
  missingChangeset: rule("missing-changeset", "Public API changes must be visible in release intent before merge.", "Add a Changeset for the affected package.")
18
19
  });
19
- export const PUBLIC_API_COMPATIBILITY_RULES_BY_ID = new Map(Object.values(PUBLIC_API_COMPATIBILITY_RULES).map((metadata) => [metadata.id, metadata]));
20
+ export const PUBLIC_API_COMPATIBILITY_RULES_BY_ID = createUniqueRegistry("rule", Object.values(PUBLIC_API_COMPATIBILITY_RULES).map((metadata) => [metadata.id, metadata]));
20
21
  //# sourceMappingURL=rules.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../../src/capabilities/public-api-compatibility/application/rules.ts"],"names":[],"mappings":"AAWA,SAAS,IAAI,CACX,MAAc,EACd,SAAiB,EACjB,WAAmB,EACnB,0BAA0B,GAAG,KAAK;IAElC,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,EAAE,EAAE,oCAAoC,MAAM,EAAE;QAChD,QAAQ,EAAE,OAAO;QACjB,SAAS;QACT,WAAW;QACX,aAAa,EAAE,+CAA+C;QAC9D,0BAA0B;KAC3B,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,8BAA8B,GAAG,MAAM,CAAC,MAAM,CAAC;IAC1D,oBAAoB,EAAE,IAAI,CACxB,wBAAwB,EACxB,6FAA6F,EAC7F,sGAAsG,EACtG,IAAI,CACL;IACD,uBAAuB,EAAE,IAAI,CAC3B,2BAA2B,EAC3B,kFAAkF,EAClF,kEAAkE,CACnE;IACD,yBAAyB,EAAE,IAAI,CAC7B,8BAA8B,EAC9B,gFAAgF,EAChF,0EAA0E,EAC1E,IAAI,CACL;IACD,mBAAmB,EAAE,IAAI,CACvB,uBAAuB,EACvB,4FAA4F,EAC5F,8DAA8D,EAC9D,IAAI,CACL;IACD,qBAAqB,EAAE,IAAI,CACzB,wBAAwB,EACxB,2EAA2E,EAC3E,kEAAkE,CACnE;IACD,gBAAgB,EAAE,IAAI,CACpB,mBAAmB,EACnB,oEAAoE,EACpE,2CAA2C,CAC5C;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,oCAAoC,GAG7C,IAAI,GAAG,CACT,MAAM,CAAC,MAAM,CAAC,8BAA8B,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CACzF,CAAC"}
1
+ {"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../../src/capabilities/public-api-compatibility/application/rules.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAWnE,SAAS,IAAI,CACX,MAAc,EACd,SAAiB,EACjB,WAAmB,EACnB,0BAA0B,GAAG,KAAK;IAElC,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,EAAE,EAAE,oCAAoC,MAAM,EAAE;QAChD,QAAQ,EAAE,OAAO;QACjB,SAAS;QACT,WAAW;QACX,aAAa,EAAE,+CAA+C;QAC9D,0BAA0B;KAC3B,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,8BAA8B,GAAG,MAAM,CAAC,MAAM,CAAC;IAC1D,oBAAoB,EAAE,IAAI,CACxB,wBAAwB,EACxB,6FAA6F,EAC7F,sGAAsG,EACtG,IAAI,CACL;IACD,uBAAuB,EAAE,IAAI,CAC3B,2BAA2B,EAC3B,kFAAkF,EAClF,kEAAkE,CACnE;IACD,yBAAyB,EAAE,IAAI,CAC7B,8BAA8B,EAC9B,gFAAgF,EAChF,0EAA0E,EAC1E,IAAI,CACL;IACD,mBAAmB,EAAE,IAAI,CACvB,uBAAuB,EACvB,4FAA4F,EAC5F,8DAA8D,EAC9D,IAAI,CACL;IACD,qBAAqB,EAAE,IAAI,CACzB,wBAAwB,EACxB,2EAA2E,EAC3E,kEAAkE,CACnE;IACD,gBAAgB,EAAE,IAAI,CACpB,mBAAmB,EACnB,oEAAoE,EACpE,2CAA2C,CAC5C;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,oCAAoC,GAG7C,oBAAoB,CACtB,MAAM,EACN,MAAM,CAAC,MAAM,CAAC,8BAA8B,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CACzF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/repository-agent-workflow/application/rules.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,mCAAmC;IAClD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAsCD,eAAO,MAAM,qCAAqC,EAAE,WAAW,CAC7D,MAAM,EACN,mCAAmC,CACY,CAAC"}
1
+ {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/repository-agent-workflow/application/rules.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,mCAAmC;IAClD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAsCD,eAAO,MAAM,qCAAqC,EAAE,WAAW,CAC7D,MAAM,EACN,mCAAmC,CACiC,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { createUniqueRegistry } from "../../../unique-registry.js";
1
2
  const DOCUMENTATION = "https://github.com/agent-teams-ai/engineering-foundation/blob/main/docs/reference/repository-agent-workflow.md";
2
3
  const rules = [
3
4
  {
@@ -31,5 +32,5 @@ const rules = [
31
32
  documentation: DOCUMENTATION
32
33
  }
33
34
  ];
34
- export const REPOSITORY_AGENT_WORKFLOW_RULES_BY_ID = new Map(rules.map((rule) => [rule.id, rule]));
35
+ export const REPOSITORY_AGENT_WORKFLOW_RULES_BY_ID = createUniqueRegistry("rule", rules.map((rule) => [rule.id, rule]));
35
36
  //# sourceMappingURL=rules.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../../src/capabilities/repository-agent-workflow/application/rules.ts"],"names":[],"mappings":"AAOA,MAAM,aAAa,GACjB,gHAAgH,CAAC;AAEnH,MAAM,KAAK,GAAmD;IAC5D;QACE,EAAE,EAAE,oDAAoD;QACxD,SAAS,EAAE,6EAA6E;QACxF,WAAW,EAAE,oEAAoE;QACjF,aAAa,EAAE,aAAa;KAC7B;IACD;QACE,EAAE,EAAE,8CAA8C;QAClD,SAAS,EAAE,4EAA4E;QACvF,WAAW,EAAE,2EAA2E;QACxF,aAAa,EAAE,aAAa;KAC7B;IACD;QACE,EAAE,EAAE,kDAAkD;QACtD,SAAS,EAAE,gFAAgF;QAC3F,WAAW,EAAE,uEAAuE;QACpF,aAAa,EAAE,aAAa;KAC7B;IACD;QACE,EAAE,EAAE,kDAAkD;QACtD,SAAS,EAAE,iFAAiF;QAC5F,WAAW,EAAE,+DAA+D;QAC5E,aAAa,EAAE,aAAa;KAC7B;IACD;QACE,EAAE,EAAE,kDAAkD;QACtD,SAAS,EAAE,uEAAuE;QAClF,WAAW,EAAE,uFAAuF;QACpG,aAAa,EAAE,aAAa;KAC7B;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,qCAAqC,GAG9C,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../../src/capabilities/repository-agent-workflow/application/rules.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AASnE,MAAM,aAAa,GACjB,gHAAgH,CAAC;AAEnH,MAAM,KAAK,GAAmD;IAC5D;QACE,EAAE,EAAE,oDAAoD;QACxD,SAAS,EAAE,6EAA6E;QACxF,WAAW,EAAE,oEAAoE;QACjF,aAAa,EAAE,aAAa;KAC7B;IACD;QACE,EAAE,EAAE,8CAA8C;QAClD,SAAS,EAAE,4EAA4E;QACvF,WAAW,EAAE,2EAA2E;QACxF,aAAa,EAAE,aAAa;KAC7B;IACD;QACE,EAAE,EAAE,kDAAkD;QACtD,SAAS,EAAE,gFAAgF;QAC3F,WAAW,EAAE,uEAAuE;QACpF,aAAa,EAAE,aAAa;KAC7B;IACD;QACE,EAAE,EAAE,kDAAkD;QACtD,SAAS,EAAE,iFAAiF;QAC5F,WAAW,EAAE,+DAA+D;QAC5E,aAAa,EAAE,aAAa;KAC7B;IACD;QACE,EAAE,EAAE,kDAAkD;QACtD,SAAS,EAAE,uEAAuE;QAClF,WAAW,EAAE,uFAAuF;QACpG,aAAa,EAAE,aAAa;KAC7B;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,qCAAqC,GAG9C,oBAAoB,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC"}
@@ -120,6 +120,7 @@ export interface DependencyReviewPolicy {
120
120
  }
121
121
  export interface RepositorySecurityPolicy {
122
122
  readonly allowedContainerImages: readonly string[];
123
+ readonly allowedPullRequestTargetWorkflows: readonly string[];
123
124
  readonly allowedUses: readonly AllowedWorkflowUse[];
124
125
  readonly workflowDirectory: string;
125
126
  readonly dependencyReview: DependencyReviewPolicy;
@@ -1 +1 @@
1
- {"version":3,"file":"repository-security.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/repository-security-baseline/application/model/repository-security.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"repository-security.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/repository-security-baseline/application/model/repository-security.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"repository-security.js","sourceRoot":"","sources":["../../../../../src/capabilities/repository-security-baseline/application/model/repository-security.ts"],"names":[],"mappings":"AAIA,MAAM,eAAe,GACnB,4EAA4E,CAAC;AAC/E,MAAM,qBAAqB,GAAG,yCAAyC,CAAC;AAExE,SAAS,kBAAkB,CAAC,KAAa;IACvC,OAAO,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,KAAa;IAClD,OAAO,CACL,kBAAkB,CAAC,KAAK,CAAC;QACzB,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;QAChC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CACvB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,KAAa;IACvD,OAAO,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC1E,CAAC;AAiFD,MAAM,UAAU,iCAAiC,CAC/C,QAAoD;IAEpD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO;QACL,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,CAAC,UAAU,EAAE;QACnD,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE;QAC3C,GAAG,CAAC,QAAQ,CAAC,MAAM,KAAK,SAAS;YAC/B,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAiB,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;KAC5D,CAAC;AACJ,CAAC;AAyCD,MAAM,UAAU,0BAA0B,CACxC,OAAsC;IAEtC,MAAM,SAAS,GAA8B,EAAE,CAAC;IAChD,MAAM,MAAM,GAAG,CAAC,UAAyC,EAAE,MAAe,EAAQ,EAAE;QAClF,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;YACjD,MAAM,CAAC,SAAS,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC,CAAC;IACF,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACtB,OAAO,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC;AA2BD,MAAM,2BAA2B,GAC/B,uGAAuG,CAAC;AAE1G,MAAM,UAAU,sBAAsB,CAAC,KAAa;IAClD,OAAO,2BAA2B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACjD,CAAC"}
1
+ {"version":3,"file":"repository-security.js","sourceRoot":"","sources":["../../../../../src/capabilities/repository-security-baseline/application/model/repository-security.ts"],"names":[],"mappings":"AAIA,MAAM,eAAe,GACnB,4EAA4E,CAAC;AAC/E,MAAM,qBAAqB,GAAG,yCAAyC,CAAC;AAExE,SAAS,kBAAkB,CAAC,KAAa;IACvC,OAAO,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,KAAa;IAClD,OAAO,CACL,kBAAkB,CAAC,KAAK,CAAC;QACzB,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;QAChC,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CACvB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,KAAa;IACvD,OAAO,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC1E,CAAC;AAiFD,MAAM,UAAU,iCAAiC,CAC/C,QAAoD;IAEpD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO;QACL,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,CAAC,UAAU,EAAE;QACnD,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE;QAC3C,GAAG,CAAC,QAAQ,CAAC,MAAM,KAAK,SAAS;YAC/B,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAiB,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;KAC5D,CAAC;AACJ,CAAC;AAyCD,MAAM,UAAU,0BAA0B,CACxC,OAAsC;IAEtC,MAAM,SAAS,GAA8B,EAAE,CAAC;IAChD,MAAM,MAAM,GAAG,CAAC,UAAyC,EAAE,MAAe,EAAQ,EAAE;QAClF,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;YACjD,MAAM,CAAC,SAAS,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC,CAAC;IACF,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACtB,OAAO,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC;AA4BD,MAAM,2BAA2B,GAC/B,uGAAuG,CAAC;AAE1G,MAAM,UAAU,sBAAsB,CAAC,KAAa;IAClD,OAAO,2BAA2B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACjD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"evaluate-repository-security.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/repository-security-baseline/application/policies/evaluate-repository-security.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,KAAK,EAGV,0BAA0B,EAC1B,wBAAwB,EAGzB,MAAM,iCAAiC,CAAC;AAkWzC,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,wBAAwB,EAChC,QAAQ,EAAE,0BAA0B,GACnC,SAAS,oBAAoB,EAAE,CAoDjC"}
1
+ {"version":3,"file":"evaluate-repository-security.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/repository-security-baseline/application/policies/evaluate-repository-security.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,KAAK,EAGV,0BAA0B,EAC1B,wBAAwB,EAGzB,MAAM,iCAAiC,CAAC;AAwWzC,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,wBAAwB,EAChC,QAAQ,EAAE,0BAA0B,GACnC,SAAS,oBAAoB,EAAE,CAkEjC"}
@@ -84,7 +84,7 @@ function isSbomEvidence(policy, workflow, job, step) {
84
84
  step.uses?.startsWith("anchore/sbom-action@") === true &&
85
85
  actionPinned(step.uses));
86
86
  }
87
- function inspectWorkflowRoot(workflow, state) {
87
+ function inspectWorkflowRoot(policy, workflow, state) {
88
88
  if (workflow.permissions === undefined ||
89
89
  typeof workflow.permissions === "string" ||
90
90
  Object.values(workflow.permissions).some((value) => value === "write")) {
@@ -96,12 +96,17 @@ function inspectWorkflowRoot(workflow, state) {
96
96
  }));
97
97
  }
98
98
  if (workflow.triggers.includes("pull_request_target")) {
99
- state.diagnostics.push(diagnostic({
100
- rule: REPOSITORY_SECURITY_RULES.dangerousTrigger,
101
- subject: workflow.path,
102
- path: workflow.path,
103
- message: "Workflow uses prohibited pull_request_target."
104
- }));
99
+ if (policy.allowedPullRequestTargetWorkflows.includes(workflow.path)) {
100
+ state.seenPullRequestTargetWorkflows.add(workflow.path);
101
+ }
102
+ else {
103
+ state.diagnostics.push(diagnostic({
104
+ rule: REPOSITORY_SECURITY_RULES.dangerousTrigger,
105
+ subject: workflow.path,
106
+ path: workflow.path,
107
+ message: "Workflow uses undeclared pull_request_target."
108
+ }));
109
+ }
105
110
  }
106
111
  }
107
112
  function inspectWorkflowStep(policy, workflow, job, step, state) {
@@ -224,12 +229,13 @@ export function evaluateRepositorySecurity(policy, evidence) {
224
229
  const state = {
225
230
  diagnostics: [],
226
231
  seenContainerImages: new Set(),
232
+ seenPullRequestTargetWorkflows: new Set(),
227
233
  seenPrivilegedJobs: new Set(),
228
234
  dependencyReviewFound: false,
229
235
  sbomFound: false
230
236
  };
231
237
  for (const workflow of evidence.workflows) {
232
- inspectWorkflowRoot(workflow, state);
238
+ inspectWorkflowRoot(policy, workflow, state);
233
239
  for (const job of workflow.jobs) {
234
240
  inspectWorkflowJob(policy, workflow, job, state);
235
241
  inspectDependencyReviewOrdering(policy, workflow, job, state.diagnostics);
@@ -250,6 +256,16 @@ export function evaluateRepositorySecurity(policy, evidence) {
250
256
  }));
251
257
  }
252
258
  }
259
+ for (const workflowPath of policy.allowedPullRequestTargetWorkflows) {
260
+ if (!state.seenPullRequestTargetWorkflows.has(workflowPath)) {
261
+ state.diagnostics.push(diagnostic({
262
+ rule: REPOSITORY_SECURITY_RULES.stalePullRequestTargetWorkflow,
263
+ subject: workflowPath,
264
+ path: workflowPath,
265
+ message: "Allowed pull_request_target declaration has no matching workflow trigger."
266
+ }));
267
+ }
268
+ }
253
269
  for (const image of policy.allowedContainerImages) {
254
270
  if (!state.seenContainerImages.has(image)) {
255
271
  state.diagnostics.push(diagnostic({
@@ -1 +1 @@
1
- {"version":3,"file":"evaluate-repository-security.js","sourceRoot":"","sources":["../../../../../src/capabilities/repository-security-baseline/application/policies/evaluate-repository-security.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evaluate-repository-security.js","sourceRoot":"","sources":["../../../../../src/capabilities/repository-security-baseline/application/policies/evaluate-repository-security.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,7 @@ export declare const REPOSITORY_SECURITY_RULES: Readonly<{
23
23
  sbomMissing: RepositorySecurityRuleMetadata;
24
24
  privilegedJobMismatch: RepositorySecurityRuleMetadata;
25
25
  stalePrivilegedJob: RepositorySecurityRuleMetadata;
26
+ stalePullRequestTargetWorkflow: RepositorySecurityRuleMetadata;
26
27
  staleAllowedUse: RepositorySecurityRuleMetadata;
27
28
  staleAllowedContainerImage: RepositorySecurityRuleMetadata;
28
29
  toolEvidenceFailed: RepositorySecurityRuleMetadata;
@@ -1 +1 @@
1
- {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/repository-security-baseline/application/rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,0BAA0B,EAAE,OAAO,CAAC;CAC9C;AAiBD,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;EA8HpC,CAAC;AAEH,eAAO,MAAM,+BAA+B,EAAE,WAAW,CACvD,MAAM,EACN,8BAA8B,CAG/B,CAAC"}
1
+ {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/repository-security-baseline/application/rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAGrE,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,0BAA0B,EAAE,OAAO,CAAC;CAC9C;AAiBD,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmIpC,CAAC;AAEH,eAAO,MAAM,+BAA+B,EAAE,WAAW,CACvD,MAAM,EACN,8BAA8B,CAI/B,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { createUniqueRegistry } from "../../../unique-registry.js";
1
2
  function rule(suffix, rationale, remediation) {
2
3
  return Object.freeze({
3
4
  id: `repository.security-baseline.${suffix}`,
@@ -24,6 +25,7 @@ export const REPOSITORY_SECURITY_RULES = Object.freeze({
24
25
  sbomMissing: rule("sbom-missing", "The dependency inventory must be reproducibly exported for each reviewed revision.", "Run a pinned anchore/sbom-action from the declared SBOM workflow."),
25
26
  privilegedJobMismatch: rule("privileged-job-mismatch", "Write-capable jobs need an exact reviewed permission declaration.", "Declare the job in privilegedJobs with the exact permission map, or remove write access."),
26
27
  stalePrivilegedJob: rule("stale-privileged-job", "A stale privilege declaration can hide workflow ownership drift.", "Remove the declaration or restore the exact governed workflow job."),
28
+ stalePullRequestTargetWorkflow: rule("stale-pull-request-target-workflow", "A stale privileged-trigger declaration can conceal workflow trust-boundary drift.", "Remove the declaration or restore pull_request_target on the exact reviewed workflow path."),
27
29
  staleAllowedUse: rule("stale-allowed-use", "An unused trust declaration can conceal action ownership drift.", "Remove the unused allowedUses entry or restore the reviewed workflow reference."),
28
30
  staleAllowedContainerImage: rule("stale-allowed-container-image", "An unused container trust declaration can conceal supply-chain ownership drift.", "Remove the declaration or restore the exact reviewed job or service container image."),
29
31
  toolEvidenceFailed: rule("tool-evidence-failed", "A required external security tool reported a failed result.", "Fix the tool findings and publish fresh evidence with a passed outcome."),
@@ -35,5 +37,5 @@ export const REPOSITORY_SECURITY_RULES = Object.freeze({
35
37
  toolEvidenceStale: rule("tool-evidence-stale", "Tool evidence does not describe the current workflow or tool configuration input.", "Rerun the declared tool against the current inputs and publish fresh evidence."),
36
38
  toolEvidenceVersionMismatch: rule("tool-evidence-version-mismatch", "Tool evidence was produced by a version different from the declared pinned version.", "Run the declared exact tool version and publish fresh evidence.")
37
39
  });
38
- export const REPOSITORY_SECURITY_RULES_BY_ID = new Map(Object.values(REPOSITORY_SECURITY_RULES).map((metadata) => [metadata.id, metadata]));
40
+ export const REPOSITORY_SECURITY_RULES_BY_ID = createUniqueRegistry("rule", Object.values(REPOSITORY_SECURITY_RULES).map((metadata) => [metadata.id, metadata]));
39
41
  //# sourceMappingURL=rules.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../../src/capabilities/repository-security-baseline/application/rules.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../../src/capabilities/repository-security-baseline/application/rules.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/repository-security-baseline/contract/config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAIV,wBAAwB,EAMzB,MAAM,6CAA6C,CAAC;AAQrD,eAAO,MAAM,aAAa,EAAG,8BAAuC,CAAC;AACrE,eAAO,MAAM,gCAAgC,EAAG,CAAU,CAAC;AAkM3D,wBAAsB,oBAAoB,CACxC,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,wBAAwB,CAAC,CAuDnC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/repository-security-baseline/contract/config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAIV,wBAAwB,EAMzB,MAAM,6CAA6C,CAAC;AAQrD,eAAO,MAAM,aAAa,EAAG,8BAAuC,CAAC;AACrE,eAAO,MAAM,gCAAgC,EAAG,CAAU,CAAC;AAkM3D,wBAAsB,oBAAoB,CACxC,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,wBAAwB,CAAC,CA+EnC"}
@@ -173,6 +173,20 @@ export async function loadCapabilityConfig(consumerRoot, configPath, signal) {
173
173
  await assertSchema("repository-security-baseline/v1", input, "repository-security-config");
174
174
  const root = record(input, "repository security config");
175
175
  const workflowDirectory = path(root["workflowDirectory"], "workflowDirectory");
176
+ const allowedPullRequestTargetInput = root["allowedPullRequestTargetWorkflows"] ?? [];
177
+ if (!Array.isArray(allowedPullRequestTargetInput)) {
178
+ inputError("allowedPullRequestTargetWorkflows must be an array.");
179
+ }
180
+ const allowedPullRequestTargetWorkflows = allowedPullRequestTargetInput.map((value, index) => path(value, `allowedPullRequestTargetWorkflows[${index}]`));
181
+ if (new Set(allowedPullRequestTargetWorkflows).size !==
182
+ allowedPullRequestTargetWorkflows.length) {
183
+ inputError("allowedPullRequestTargetWorkflows entries must be unique.");
184
+ }
185
+ for (const workflowPath of allowedPullRequestTargetWorkflows) {
186
+ if (!workflowPath.startsWith(`${workflowDirectory}/`)) {
187
+ inputError(`Allowed pull_request_target workflow must be inside ${workflowDirectory}: ${workflowPath}.`);
188
+ }
189
+ }
176
190
  const dependencyReview = mapDependencyReview(root["dependencyReview"]);
177
191
  const sbomWorkflow = path(root["sbomWorkflow"], "sbomWorkflow");
178
192
  for (const governedWorkflow of [dependencyReview.workflowPath, sbomWorkflow]) {
@@ -207,6 +221,7 @@ export async function loadCapabilityConfig(consumerRoot, configPath, signal) {
207
221
  }
208
222
  return Object.freeze({
209
223
  allowedContainerImages,
224
+ allowedPullRequestTargetWorkflows: Object.freeze(allowedPullRequestTargetWorkflows),
210
225
  allowedUses,
211
226
  workflowDirectory,
212
227
  dependencyReview,
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/capabilities/repository-security-baseline/contract/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/capabilities/repository-security-baseline/contract/config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/source-dependencies/application/rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,0BAA0B,EAAE,OAAO,CAAC;CAC9C;AAkBD,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;EAgIlC,CAAC;AAEH,eAAO,MAAM,6BAA6B,EAAE,WAAW,CACrD,MAAM,EACN,4BAA4B,CAG7B,CAAC"}
1
+ {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/source-dependencies/application/rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAGrE,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,0BAA0B,EAAE,OAAO,CAAC;CAC9C;AAkBD,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;EAgIlC,CAAC;AAEH,eAAO,MAAM,6BAA6B,EAAE,WAAW,CACrD,MAAM,EACN,4BAA4B,CAI7B,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { createUniqueRegistry } from "../../../unique-registry.js";
1
2
  function rule(suffix, rationale, remediation, requiresArchitectureReview = false) {
2
3
  return Object.freeze({
3
4
  id: `architecture.source-dependencies.${suffix}`,
@@ -32,5 +33,5 @@ export const SOURCE_DEPENDENCY_RULES = Object.freeze({
32
33
  unsupportedImportSpecifier: rule("unsupported-import-specifier", "Unsupported specifiers cannot be classified reliably by the architecture gate.", "Use relative, node builtin, declared external, or governed workspace package imports.", true),
33
34
  unclassifiedSourceFile: rule("unclassified-source-file", "Every governed source file must belong to exactly one declared architecture boundary.", "Classify the file in an existing boundary or introduce an explicitly reviewed boundary.", true)
34
35
  });
35
- export const SOURCE_DEPENDENCY_RULES_BY_ID = new Map(Object.values(SOURCE_DEPENDENCY_RULES).map((metadata) => [metadata.id, metadata]));
36
+ export const SOURCE_DEPENDENCY_RULES_BY_ID = createUniqueRegistry("rule", Object.values(SOURCE_DEPENDENCY_RULES).map((metadata) => [metadata.id, metadata]));
36
37
  //# sourceMappingURL=rules.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../../src/capabilities/source-dependencies/application/rules.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../../src/capabilities/source-dependencies/application/rules.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/suppression-governance/application/rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE,MAAM,WAAW,iCAAiC;IAChD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,0BAA0B,EAAE,OAAO,CAAC;CAC9C;AAkBD,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;EA8DvC,CAAC;AAEH,eAAO,MAAM,kCAAkC,EAAE,WAAW,CAC1D,MAAM,EACN,iCAAiC,CAGlC,CAAC"}
1
+ {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/suppression-governance/application/rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAGrE,MAAM,WAAW,iCAAiC;IAChD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,0BAA0B,EAAE,OAAO,CAAC;CAC9C;AAkBD,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;EA8DvC,CAAC;AAEH,eAAO,MAAM,kCAAkC,EAAE,WAAW,CAC1D,MAAM,EACN,iCAAiC,CAIlC,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { createUniqueRegistry } from "../../../unique-registry.js";
1
2
  function rule(suffix, rationale, remediation, requiresArchitectureReview = false) {
2
3
  return Object.freeze({
3
4
  id: `quality.suppression-governance.${suffix}`,
@@ -22,5 +23,5 @@ export const SUPPRESSION_GOVERNANCE_RULES = Object.freeze({
22
23
  unscopedSuppression: rule("unscoped-suppression", "A suppression without explicit rule IDs can hide arbitrary diagnostics.", "List every suppressed rule explicitly."),
23
24
  waiverMismatch: rule("waiver-mismatch", "A waiver must describe the exact directive and exact rule set at its location.", "Update the waiver or suppression so their directive and rules match exactly.")
24
25
  });
25
- export const SUPPRESSION_GOVERNANCE_RULES_BY_ID = new Map(Object.values(SUPPRESSION_GOVERNANCE_RULES).map((metadata) => [metadata.id, metadata]));
26
+ export const SUPPRESSION_GOVERNANCE_RULES_BY_ID = createUniqueRegistry("rule", Object.values(SUPPRESSION_GOVERNANCE_RULES).map((metadata) => [metadata.id, metadata]));
26
27
  //# sourceMappingURL=rules.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../../src/capabilities/suppression-governance/application/rules.ts"],"names":[],"mappings":"AAWA,SAAS,IAAI,CACX,MAAc,EACd,SAAiB,EACjB,WAAmB,EACnB,0BAA0B,GAAG,KAAK;IAElC,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,EAAE,EAAE,kCAAkC,MAAM,EAAE;QAC9C,QAAQ,EAAE,OAAO;QACjB,SAAS;QACT,WAAW;QACX,aAAa,EAAE,6CAA6C;QAC5D,0BAA0B;KAC3B,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,4BAA4B,GAAG,MAAM,CAAC,MAAM,CAAC;IACxD,gBAAgB,EAAE,IAAI,CACpB,mBAAmB,EACnB,iEAAiE,EACjE,yEAAyE,CAC1E;IACD,iBAAiB,EAAE,IAAI,CACrB,2BAA2B,EAC3B,uEAAuE,EACvE,0DAA0D,CAC3D;IACD,aAAa,EAAE,IAAI,CACjB,gBAAgB,EAChB,gEAAgE,EAChE,yDAAyD,CAC1D;IACD,YAAY,EAAE,IAAI,CAChB,eAAe,EACf,uEAAuE,EACvE,wDAAwD,CACzD;IACD,iBAAiB,EAAE,IAAI,CACrB,oBAAoB,EACpB,yEAAyE,EACzE,uDAAuD,CACxD;IACD,+BAA+B,EAAE,IAAI,CACnC,mCAAmC,EACnC,gFAAgF,EAChF,sFAAsF,CACvF;IACD,wBAAwB,EAAE,IAAI,CAC5B,4BAA4B,EAC5B,uDAAuD,EACvD,sFAAsF,EACtF,IAAI,CACL;IACD,gBAAgB,EAAE,IAAI,CACpB,oBAAoB,EACpB,yEAAyE,EACzE,iEAAiE,CAClE;IACD,WAAW,EAAE,IAAI,CACf,cAAc,EACd,wEAAwE,EACxE,kFAAkF,CACnF;IACD,uBAAuB,EAAE,IAAI,CAC3B,0BAA0B,EAC1B,kEAAkE,EAClE,8EAA8E,CAC/E;IACD,mBAAmB,EAAE,IAAI,CACvB,sBAAsB,EACtB,yEAAyE,EACzE,wCAAwC,CACzC;IACD,cAAc,EAAE,IAAI,CAClB,iBAAiB,EACjB,gFAAgF,EAChF,8EAA8E,CAC/E;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,kCAAkC,GAG3C,IAAI,GAAG,CACT,MAAM,CAAC,MAAM,CAAC,4BAA4B,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CACvF,CAAC"}
1
+ {"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../../src/capabilities/suppression-governance/application/rules.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAWnE,SAAS,IAAI,CACX,MAAc,EACd,SAAiB,EACjB,WAAmB,EACnB,0BAA0B,GAAG,KAAK;IAElC,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,EAAE,EAAE,kCAAkC,MAAM,EAAE;QAC9C,QAAQ,EAAE,OAAO;QACjB,SAAS;QACT,WAAW;QACX,aAAa,EAAE,6CAA6C;QAC5D,0BAA0B;KAC3B,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,4BAA4B,GAAG,MAAM,CAAC,MAAM,CAAC;IACxD,gBAAgB,EAAE,IAAI,CACpB,mBAAmB,EACnB,iEAAiE,EACjE,yEAAyE,CAC1E;IACD,iBAAiB,EAAE,IAAI,CACrB,2BAA2B,EAC3B,uEAAuE,EACvE,0DAA0D,CAC3D;IACD,aAAa,EAAE,IAAI,CACjB,gBAAgB,EAChB,gEAAgE,EAChE,yDAAyD,CAC1D;IACD,YAAY,EAAE,IAAI,CAChB,eAAe,EACf,uEAAuE,EACvE,wDAAwD,CACzD;IACD,iBAAiB,EAAE,IAAI,CACrB,oBAAoB,EACpB,yEAAyE,EACzE,uDAAuD,CACxD;IACD,+BAA+B,EAAE,IAAI,CACnC,mCAAmC,EACnC,gFAAgF,EAChF,sFAAsF,CACvF;IACD,wBAAwB,EAAE,IAAI,CAC5B,4BAA4B,EAC5B,uDAAuD,EACvD,sFAAsF,EACtF,IAAI,CACL;IACD,gBAAgB,EAAE,IAAI,CACpB,oBAAoB,EACpB,yEAAyE,EACzE,iEAAiE,CAClE;IACD,WAAW,EAAE,IAAI,CACf,cAAc,EACd,wEAAwE,EACxE,kFAAkF,CACnF;IACD,uBAAuB,EAAE,IAAI,CAC3B,0BAA0B,EAC1B,kEAAkE,EAClE,8EAA8E,CAC/E;IACD,mBAAmB,EAAE,IAAI,CACvB,sBAAsB,EACtB,yEAAyE,EACzE,wCAAwC,CACzC;IACD,cAAc,EAAE,IAAI,CAClB,iBAAiB,EACjB,gFAAgF,EAChF,8EAA8E,CAC/E;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,kCAAkC,GAG3C,oBAAoB,CACtB,MAAM,EACN,MAAM,CAAC,MAAM,CAAC,4BAA4B,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CACvF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/workspace-dependency-declarations/application/rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,0BAA0B,EAAE,OAAO,CAAC;CAC9C;AAqBD,eAAO,MAAM,KAAK;;;;;;;;;;;;;;EAoEhB,CAAC;AAEH,eAAO,MAAM,WAAW,EAAE,WAAW,CAAC,MAAM,EAAE,YAAY,CAEzD,CAAC"}
1
+ {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/workspace-dependency-declarations/application/rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAGrE,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,0BAA0B,EAAE,OAAO,CAAC;CAC9C;AAqBD,eAAO,MAAM,KAAK;;;;;;;;;;;;;;EAoEhB,CAAC;AAEH,eAAO,MAAM,WAAW,EAAE,WAAW,CAAC,MAAM,EAAE,YAAY,CAIvD,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { createUniqueRegistry } from "../../../unique-registry.js";
1
2
  const documentation = "https://github.com/agent-teams-ai/engineering-foundation/blob/main/docs/reference/workspace-dependency-declarations.md";
2
3
  function rule(suffix, rationale, remediation, requiresArchitectureReview = false) {
3
4
  return Object.freeze({
@@ -24,5 +25,5 @@ export const RULES = Object.freeze({
24
25
  reservedScopePackageNotInWorkspace: rule("reserved-scope-package-not-in-workspace", "A reserved organization scope cannot silently resolve to an unrelated registry package.", "Add the package to this workspace or remove the reserved-scope dependency.", true),
25
26
  workspacePackageNameMissing: rule("workspace-package-name-missing", "Every workspace package needs a stable package identity.", "Add a non-empty name to the package manifest.")
26
27
  });
27
- export const RULES_BY_ID = new Map(Object.values(RULES).map((metadata) => [metadata.id, metadata]));
28
+ export const RULES_BY_ID = createUniqueRegistry("rule", Object.values(RULES).map((metadata) => [metadata.id, metadata]));
28
29
  //# sourceMappingURL=rules.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../../src/capabilities/workspace-dependency-declarations/application/rules.ts"],"names":[],"mappings":"AAWA,MAAM,aAAa,GACjB,wHAAwH,CAAC;AAE3H,SAAS,IAAI,CACX,MAAc,EACd,SAAiB,EACjB,WAAmB,EACnB,0BAA0B,GAAG,KAAK;IAElC,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,EAAE,EAAE,qCAAqC,MAAM,EAAE;QACjD,SAAS;QACT,QAAQ,EAAE,OAAO;QACjB,WAAW;QACX,aAAa;QACb,0BAA0B;KAC3B,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;IACjC,oBAAoB,EAAE,IAAI,CACxB,yBAAyB,EACzB,wGAAwG,EACxG,iDAAiD,CAClD;IACD,uBAAuB,EAAE,IAAI,CAC3B,2BAA2B,EAC3B,mEAAmE,EACnE,gFAAgF,CACjF;IACD,sBAAsB,EAAE,IAAI,CAC1B,2BAA2B,EAC3B,2EAA2E,EAC3E,kEAAkE,CACnE;IACD,+BAA+B,EAAE,IAAI,CACnC,oCAAoC,EACpC,iEAAiE,EACjE,wDAAwD,CACzD;IACD,6BAA6B,EAAE,IAAI,CACjC,kCAAkC,EAClC,sEAAsE,EACtE,sFAAsF,CACvF;IACD,sCAAsC,EAAE,IAAI,CAC1C,6CAA6C,EAC7C,oGAAoG,EACpG,0EAA0E,CAC3E;IACD,kDAAkD,EAAE,IAAI,CACtD,2DAA2D,EAC3D,8DAA8D,EAC9D,gEAAgE,CACjE;IACD,6BAA6B,EAAE,IAAI,CACjC,kCAAkC,EAClC,mEAAmE,EACnE,8CAA8C,EAC9C,IAAI,CACL;IACD,2BAA2B,EAAE,IAAI,CAC/B,gCAAgC,EAChC,+DAA+D,EAC/D,iFAAiF,CAClF;IACD,0CAA0C,EAAE,IAAI,CAC9C,gDAAgD,EAChD,wFAAwF,EACxF,iEAAiE,CAClE;IACD,sBAAsB,EAAE,IAAI,CAC1B,2BAA2B,EAC3B,0EAA0E,EAC1E,uDAAuD,CACxD;IACD,kCAAkC,EAAE,IAAI,CACtC,yCAAyC,EACzC,yFAAyF,EACzF,4EAA4E,EAC5E,IAAI,CACL;IACD,2BAA2B,EAAE,IAAI,CAC/B,gCAAgC,EAChC,0DAA0D,EAC1D,+CAA+C,CAChD;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,WAAW,GAAsC,IAAI,GAAG,CACnE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAChE,CAAC"}
1
+ {"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../../src/capabilities/workspace-dependency-declarations/application/rules.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAWnE,MAAM,aAAa,GACjB,wHAAwH,CAAC;AAE3H,SAAS,IAAI,CACX,MAAc,EACd,SAAiB,EACjB,WAAmB,EACnB,0BAA0B,GAAG,KAAK;IAElC,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,EAAE,EAAE,qCAAqC,MAAM,EAAE;QACjD,SAAS;QACT,QAAQ,EAAE,OAAO;QACjB,WAAW;QACX,aAAa;QACb,0BAA0B;KAC3B,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;IACjC,oBAAoB,EAAE,IAAI,CACxB,yBAAyB,EACzB,wGAAwG,EACxG,iDAAiD,CAClD;IACD,uBAAuB,EAAE,IAAI,CAC3B,2BAA2B,EAC3B,mEAAmE,EACnE,gFAAgF,CACjF;IACD,sBAAsB,EAAE,IAAI,CAC1B,2BAA2B,EAC3B,2EAA2E,EAC3E,kEAAkE,CACnE;IACD,+BAA+B,EAAE,IAAI,CACnC,oCAAoC,EACpC,iEAAiE,EACjE,wDAAwD,CACzD;IACD,6BAA6B,EAAE,IAAI,CACjC,kCAAkC,EAClC,sEAAsE,EACtE,sFAAsF,CACvF;IACD,sCAAsC,EAAE,IAAI,CAC1C,6CAA6C,EAC7C,oGAAoG,EACpG,0EAA0E,CAC3E;IACD,kDAAkD,EAAE,IAAI,CACtD,2DAA2D,EAC3D,8DAA8D,EAC9D,gEAAgE,CACjE;IACD,6BAA6B,EAAE,IAAI,CACjC,kCAAkC,EAClC,mEAAmE,EACnE,8CAA8C,EAC9C,IAAI,CACL;IACD,2BAA2B,EAAE,IAAI,CAC/B,gCAAgC,EAChC,+DAA+D,EAC/D,iFAAiF,CAClF;IACD,0CAA0C,EAAE,IAAI,CAC9C,gDAAgD,EAChD,wFAAwF,EACxF,iEAAiE,CAClE;IACD,sBAAsB,EAAE,IAAI,CAC1B,2BAA2B,EAC3B,0EAA0E,EAC1E,uDAAuD,CACxD;IACD,kCAAkC,EAAE,IAAI,CACtC,yCAAyC,EACzC,yFAAyF,EACzF,4EAA4E,EAC5E,IAAI,CACL;IACD,2BAA2B,EAAE,IAAI,CAC/B,gCAAgC,EAChC,0DAA0D,EAC1D,+CAA+C,CAChD;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,WAAW,GACtB,oBAAoB,CAClB,MAAM,EACN,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAChE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"capability-registry.d.ts","sourceRoot":"","sources":["../../src/composition/capability-registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AA2BrE,eAAO,MAAM,mBAAmB,EAAE,WAAW,CAAC,MAAM,EAAE,oBAAoB,CACF,CAAC"}
1
+ {"version":3,"file":"capability-registry.d.ts","sourceRoot":"","sources":["../../src/composition/capability-registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AA4BrE,eAAO,MAAM,mBAAmB,EAAE,WAAW,CAAC,MAAM,EAAE,oBAAoB,CAIvE,CAAC"}
@@ -9,6 +9,7 @@ import { createRepositorySecurityBaselineCapability } from "../capabilities/repo
9
9
  import { createSourceDependenciesCapability } from "../capabilities/source-dependencies/module.js";
10
10
  import { createSuppressionGovernanceCapability } from "../capabilities/suppression-governance/module.js";
11
11
  import { createWorkspaceDependencyDeclarationsCapability } from "../capabilities/workspace-dependency-declarations/module.js";
12
+ import { createUniqueRegistry } from "../unique-registry.js";
12
13
  const capabilities = Object.freeze([
13
14
  createJsonSchemaReleaseCapability(),
14
15
  createProtobufEvolutionCapability(),
@@ -22,5 +23,5 @@ const capabilities = Object.freeze([
22
23
  createSuppressionGovernanceCapability(),
23
24
  createWorkspaceDependencyDeclarationsCapability()
24
25
  ]);
25
- export const CAPABILITY_REGISTRY = new Map(capabilities.map((capability) => [capability.id, capability]));
26
+ export const CAPABILITY_REGISTRY = createUniqueRegistry("capability", capabilities.map((capability) => [capability.id, capability]));
26
27
  //# sourceMappingURL=capability-registry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"capability-registry.js","sourceRoot":"","sources":["../../src/composition/capability-registry.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iCAAiC,EAAE,MAAM,yDAAyD,CAAC;AAC5G,OAAO,EAAE,iCAAiC,EAAE,MAAM,uDAAuD,CAAC;AAC1G,OAAO,EAAE,4CAA4C,EAAE,MAAM,0DAA0D,CAAC;AACxH,OAAO,EAAE,wCAAwC,EAAE,MAAM,qDAAqD,CAAC;AAC/G,OAAO,EAAE,8CAA8C,EAAE,MAAM,6DAA6D,CAAC;AAC7H,OAAO,EAAE,sCAAsC,EAAE,MAAM,oDAAoD,CAAC;AAC5G,OAAO,EAAE,uCAAuC,EAAE,MAAM,qDAAqD,CAAC;AAC9G,OAAO,EAAE,0CAA0C,EAAE,MAAM,wDAAwD,CAAC;AACpH,OAAO,EAAE,kCAAkC,EAAE,MAAM,+CAA+C,CAAC;AACnG,OAAO,EAAE,qCAAqC,EAAE,MAAM,kDAAkD,CAAC;AACzG,OAAO,EAAE,+CAA+C,EAAE,MAAM,6DAA6D,CAAC;AAE9H,MAAM,YAAY,GAAoC,MAAM,CAAC,MAAM,CAAC;IAClE,iCAAiC,EAAE;IACnC,iCAAiC,EAAE;IACnC,4CAA4C,EAAE;IAC9C,wCAAwC,EAAE;IAC1C,8CAA8C,EAAE;IAChD,sCAAsC,EAAE;IACxC,uCAAuC,EAAE;IACzC,0CAA0C,EAAE;IAC5C,kCAAkC,EAAE;IACpC,qCAAqC,EAAE;IACvC,+CAA+C,EAAE;CAClD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAC9B,IAAI,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"capability-registry.js","sourceRoot":"","sources":["../../src/composition/capability-registry.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iCAAiC,EAAE,MAAM,yDAAyD,CAAC;AAC5G,OAAO,EAAE,iCAAiC,EAAE,MAAM,uDAAuD,CAAC;AAC1G,OAAO,EAAE,4CAA4C,EAAE,MAAM,0DAA0D,CAAC;AACxH,OAAO,EAAE,wCAAwC,EAAE,MAAM,qDAAqD,CAAC;AAC/G,OAAO,EAAE,8CAA8C,EAAE,MAAM,6DAA6D,CAAC;AAC7H,OAAO,EAAE,sCAAsC,EAAE,MAAM,oDAAoD,CAAC;AAC5G,OAAO,EAAE,uCAAuC,EAAE,MAAM,qDAAqD,CAAC;AAC9G,OAAO,EAAE,0CAA0C,EAAE,MAAM,wDAAwD,CAAC;AACpH,OAAO,EAAE,kCAAkC,EAAE,MAAM,+CAA+C,CAAC;AACnG,OAAO,EAAE,qCAAqC,EAAE,MAAM,kDAAkD,CAAC;AACzG,OAAO,EAAE,+CAA+C,EAAE,MAAM,6DAA6D,CAAC;AAC9H,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAE7D,MAAM,YAAY,GAAoC,MAAM,CAAC,MAAM,CAAC;IAClE,iCAAiC,EAAE;IACnC,iCAAiC,EAAE;IACnC,4CAA4C,EAAE;IAC9C,wCAAwC,EAAE;IAC1C,8CAA8C,EAAE;IAChD,sCAAsC,EAAE;IACxC,uCAAuC,EAAE;IACzC,0CAA0C,EAAE;IAC5C,kCAAkC,EAAE;IACpC,qCAAqC,EAAE;IACvC,+CAA+C,EAAE;CAClD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAC9B,oBAAoB,CAClB,YAAY,EACZ,YAAY,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC,CAC9D,CAAC"}
@@ -4,5 +4,6 @@ export interface RuleExplanation {
4
4
  readonly remediation: string;
5
5
  readonly documentation: string;
6
6
  }
7
+ export declare const RULE_REGISTRIES: readonly ReadonlyMap<string, import("../capabilities/repository-agent-workflow/application/rules.js").RepositoryAgentWorkflowRuleMetadata>[];
7
8
  export declare const RULE_REGISTRY: ReadonlyMap<string, RuleExplanation>;
8
9
  //# sourceMappingURL=rule-registry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"rule-registry.d.ts","sourceRoot":"","sources":["../../src/composition/rule-registry.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAED,eAAO,MAAM,aAAa,EAAE,WAAW,CAAC,MAAM,EAAE,eAAe,CAY7D,CAAC"}
1
+ {"version":3,"file":"rule-registry.d.ts","sourceRoot":"","sources":["../../src/composition/rule-registry.ts"],"names":[],"mappings":"AAaA,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAED,eAAO,MAAM,eAAe,8IAY1B,CAAC;AAEH,eAAO,MAAM,aAAa,EAAE,WAAW,CAAC,MAAM,EAAE,eAAe,CAI5D,CAAC"}
@@ -9,17 +9,19 @@ import { REPOSITORY_SECURITY_RULES_BY_ID } from "../capabilities/repository-secu
9
9
  import { SOURCE_DEPENDENCY_RULES_BY_ID } from "../capabilities/source-dependencies/module.js";
10
10
  import { SUPPRESSION_GOVERNANCE_RULES_BY_ID } from "../capabilities/suppression-governance/module.js";
11
11
  import { RULES_BY_ID as WORKSPACE_RULES_BY_ID } from "../capabilities/workspace-dependency-declarations/module.js";
12
- export const RULE_REGISTRY = new Map([
13
- ...JSON_SCHEMA_RELEASE_RULES_BY_ID,
14
- ...PROTOBUF_EVOLUTION_RULES_BY_ID,
15
- ...DOCUMENTATION_LOCAL_REFERENCE_RULES_BY_ID,
16
- ...EXECUTABLE_SPECIFICATION_RULES_BY_ID,
17
- ...ARCHITECTURE_DECISION_GOVERNANCE_RULES_BY_ID,
18
- ...PUBLIC_API_COMPATIBILITY_RULES_BY_ID,
19
- ...REPOSITORY_AGENT_WORKFLOW_RULES_BY_ID,
20
- ...REPOSITORY_SECURITY_RULES_BY_ID,
21
- ...SOURCE_DEPENDENCY_RULES_BY_ID,
22
- ...SUPPRESSION_GOVERNANCE_RULES_BY_ID,
23
- ...WORKSPACE_RULES_BY_ID
12
+ import { createUniqueRegistry } from "../unique-registry.js";
13
+ export const RULE_REGISTRIES = Object.freeze([
14
+ JSON_SCHEMA_RELEASE_RULES_BY_ID,
15
+ PROTOBUF_EVOLUTION_RULES_BY_ID,
16
+ DOCUMENTATION_LOCAL_REFERENCE_RULES_BY_ID,
17
+ EXECUTABLE_SPECIFICATION_RULES_BY_ID,
18
+ ARCHITECTURE_DECISION_GOVERNANCE_RULES_BY_ID,
19
+ PUBLIC_API_COMPATIBILITY_RULES_BY_ID,
20
+ REPOSITORY_AGENT_WORKFLOW_RULES_BY_ID,
21
+ REPOSITORY_SECURITY_RULES_BY_ID,
22
+ SOURCE_DEPENDENCY_RULES_BY_ID,
23
+ SUPPRESSION_GOVERNANCE_RULES_BY_ID,
24
+ WORKSPACE_RULES_BY_ID
24
25
  ]);
26
+ export const RULE_REGISTRY = createUniqueRegistry("rule", RULE_REGISTRIES.flatMap((registry) => [...registry]));
25
27
  //# sourceMappingURL=rule-registry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rule-registry.js","sourceRoot":"","sources":["../../src/composition/rule-registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,+BAA+B,EAAE,MAAM,yDAAyD,CAAC;AAC1G,OAAO,EAAE,8BAA8B,EAAE,MAAM,uDAAuD,CAAC;AACvG,OAAO,EAAE,yCAAyC,EAAE,MAAM,0DAA0D,CAAC;AACrH,OAAO,EAAE,oCAAoC,EAAE,MAAM,qDAAqD,CAAC;AAC3G,OAAO,EAAE,4CAA4C,EAAE,MAAM,6DAA6D,CAAC;AAC3H,OAAO,EAAE,oCAAoC,EAAE,MAAM,oDAAoD,CAAC;AAC1G,OAAO,EAAE,qCAAqC,EAAE,MAAM,qDAAqD,CAAC;AAC5G,OAAO,EAAE,+BAA+B,EAAE,MAAM,wDAAwD,CAAC;AACzG,OAAO,EAAE,6BAA6B,EAAE,MAAM,+CAA+C,CAAC;AAC9F,OAAO,EAAE,kCAAkC,EAAE,MAAM,kDAAkD,CAAC;AACtG,OAAO,EAAE,WAAW,IAAI,qBAAqB,EAAE,MAAM,6DAA6D,CAAC;AASnH,MAAM,CAAC,MAAM,aAAa,GAAyC,IAAI,GAAG,CAAC;IACzE,GAAG,+BAA+B;IAClC,GAAG,8BAA8B;IACjC,GAAG,yCAAyC;IAC5C,GAAG,oCAAoC;IACvC,GAAG,4CAA4C;IAC/C,GAAG,oCAAoC;IACvC,GAAG,qCAAqC;IACxC,GAAG,+BAA+B;IAClC,GAAG,6BAA6B;IAChC,GAAG,kCAAkC;IACrC,GAAG,qBAAqB;CACzB,CAAC,CAAC"}
1
+ {"version":3,"file":"rule-registry.js","sourceRoot":"","sources":["../../src/composition/rule-registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,+BAA+B,EAAE,MAAM,yDAAyD,CAAC;AAC1G,OAAO,EAAE,8BAA8B,EAAE,MAAM,uDAAuD,CAAC;AACvG,OAAO,EAAE,yCAAyC,EAAE,MAAM,0DAA0D,CAAC;AACrH,OAAO,EAAE,oCAAoC,EAAE,MAAM,qDAAqD,CAAC;AAC3G,OAAO,EAAE,4CAA4C,EAAE,MAAM,6DAA6D,CAAC;AAC3H,OAAO,EAAE,oCAAoC,EAAE,MAAM,oDAAoD,CAAC;AAC1G,OAAO,EAAE,qCAAqC,EAAE,MAAM,qDAAqD,CAAC;AAC5G,OAAO,EAAE,+BAA+B,EAAE,MAAM,wDAAwD,CAAC;AACzG,OAAO,EAAE,6BAA6B,EAAE,MAAM,+CAA+C,CAAC;AAC9F,OAAO,EAAE,kCAAkC,EAAE,MAAM,kDAAkD,CAAC;AACtG,OAAO,EAAE,WAAW,IAAI,qBAAqB,EAAE,MAAM,6DAA6D,CAAC;AACnH,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAS7D,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC;IAC3C,+BAA+B;IAC/B,8BAA8B;IAC9B,yCAAyC;IACzC,oCAAoC;IACpC,4CAA4C;IAC5C,oCAAoC;IACpC,qCAAqC;IACrC,+BAA+B;IAC/B,6BAA6B;IAC7B,kCAAkC;IAClC,qBAAqB;CACtB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,aAAa,GACxB,oBAAoB,CAClB,MAAM,EACN,eAAe,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CACrD,CAAC"}
@@ -1,7 +1,5 @@
1
- declare const SUPPORTED_CAPABILITY_IDS: readonly ["contract.json-schema-releases", "contract.protobuf-evolution", "documentation.local-references", "governance.architecture-decisions", "package.public-api-compatibility", "repository.agent-workflow", "repository.security-baseline", "quality.executable-specifications", "quality.suppression-governance", "architecture.source-dependencies", "workspace.dependency-declarations"];
2
- type SupportedCapabilityId = (typeof SUPPORTED_CAPABILITY_IDS)[number];
3
1
  interface DeclaredCapability {
4
- readonly id: SupportedCapabilityId;
2
+ readonly id: string;
5
3
  readonly configPath: string;
6
4
  }
7
5
  export interface FoundationSettings {
@@ -1 +1 @@
1
- {"version":3,"file":"foundation-config.d.ts","sourceRoot":"","sources":["../src/foundation-config.ts"],"names":[],"mappings":"AA4BA,QAAA,MAAM,wBAAwB,mYAYpB,CAAC;AAEX,KAAK,qBAAqB,GAAG,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEvE,UAAU,kBAAkB;IAC1B,QAAQ,CAAC,EAAE,EAAE,qBAAqB,CAAC;IACnC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,oBAAoB,EAAE,SAAS,kBAAkB,EAAE,CAAC;CAC9D;AAiCD,wBAAsB,oBAAoB,CACxC,YAAY,EAAE,MAAM,EACpB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,kBAAkB,CAAC,CA6B7B"}
1
+ {"version":3,"file":"foundation-config.d.ts","sourceRoot":"","sources":["../src/foundation-config.ts"],"names":[],"mappings":"AAOA,UAAU,kBAAkB;IAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,oBAAoB,EAAE,SAAS,kBAAkB,EAAE,CAAC;CAC9D;AA6BD,wBAAsB,oBAAoB,CACxC,YAAY,EAAE,MAAM,EACpB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,kBAAkB,CAAC,CA6B7B"}
@@ -1,32 +1,9 @@
1
1
  import { compareBinaryStrings } from "./binary-string-comparator.js";
2
2
  import { CapabilityInputError } from "./capability-runtime.js";
3
+ import { CAPABILITY_REGISTRY } from "./composition/capability-registry.js";
3
4
  import { assertSchema } from "./schema-catalog.js";
4
5
  import { loadStrictYamlFile } from "./strict-yaml.js";
5
6
  const FOUNDATION_CONFIG_PATH = "foundation.config.yaml";
6
- const PUBLIC_API_COMPATIBILITY_CAPABILITY = "package.public-api-compatibility";
7
- const JSON_SCHEMA_RELEASES_CAPABILITY = "contract.json-schema-releases";
8
- const PROTOBUF_EVOLUTION_CAPABILITY = "contract.protobuf-evolution";
9
- const DOCUMENTATION_LOCAL_REFERENCES_CAPABILITY = "documentation.local-references";
10
- const ARCHITECTURE_DECISIONS_CAPABILITY = "governance.architecture-decisions";
11
- const REPOSITORY_AGENT_WORKFLOW_CAPABILITY = "repository.agent-workflow";
12
- const SUPPRESSION_GOVERNANCE_CAPABILITY = "quality.suppression-governance";
13
- const EXECUTABLE_SPECIFICATIONS_CAPABILITY = "quality.executable-specifications";
14
- const REPOSITORY_SECURITY_BASELINE_CAPABILITY = "repository.security-baseline";
15
- const SOURCE_DEPENDENCIES_CAPABILITY = "architecture.source-dependencies";
16
- const WORKSPACE_DEPENDENCY_DECLARATIONS_CAPABILITY = "workspace.dependency-declarations";
17
- const SUPPORTED_CAPABILITY_IDS = [
18
- JSON_SCHEMA_RELEASES_CAPABILITY,
19
- PROTOBUF_EVOLUTION_CAPABILITY,
20
- DOCUMENTATION_LOCAL_REFERENCES_CAPABILITY,
21
- ARCHITECTURE_DECISIONS_CAPABILITY,
22
- PUBLIC_API_COMPATIBILITY_CAPABILITY,
23
- REPOSITORY_AGENT_WORKFLOW_CAPABILITY,
24
- REPOSITORY_SECURITY_BASELINE_CAPABILITY,
25
- EXECUTABLE_SPECIFICATIONS_CAPABILITY,
26
- SUPPRESSION_GOVERNANCE_CAPABILITY,
27
- SOURCE_DEPENDENCIES_CAPABILITY,
28
- WORKSPACE_DEPENDENCY_DECLARATIONS_CAPABILITY
29
- ];
30
7
  function inputError(message) {
31
8
  throw new CapabilityInputError({
32
9
  code: "FOUNDATION_CONFIG_INVALID",
@@ -50,9 +27,6 @@ function string(value, field) {
50
27
  }
51
28
  return value;
52
29
  }
53
- function isSupportedCapabilityId(value) {
54
- return SUPPORTED_CAPABILITY_IDS.some((candidate) => candidate === value);
55
- }
56
30
  export async function loadFoundationConfig(consumerRoot, signal) {
57
31
  const input = await loadStrictYamlFile(consumerRoot, FOUNDATION_CONFIG_PATH, "foundation-config", signal);
58
32
  await assertSchema("foundation-config/v1", input, "foundation-config");
@@ -61,7 +35,7 @@ export async function loadFoundationConfig(consumerRoot, signal) {
61
35
  const capabilities = record(root["capabilities"], "capabilities");
62
36
  const declaredCapabilities = [];
63
37
  for (const [id, declarationInput] of Object.entries(capabilities)) {
64
- if (!isSupportedCapabilityId(id)) {
38
+ if (!CAPABILITY_REGISTRY.has(id)) {
65
39
  inputError(`Unsupported capability declaration: ${id}.`);
66
40
  }
67
41
  const declaration = record(declarationInput, `capabilities.${id}`);
@@ -1 +1 @@
1
- {"version":3,"file":"foundation-config.js","sourceRoot":"","sources":["../src/foundation-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"foundation-config.js","sourceRoot":"","sources":["../src/foundation-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEtD,MAAM,sBAAsB,GAAG,wBAAwB,CAAC;AAWxD,SAAS,UAAU,CAAC,OAAe;IACjC,MAAM,IAAI,oBAAoB,CAAC;QAC7B,IAAI,EAAE,2BAA2B;QACjC,OAAO;QACP,KAAK,EAAE,mBAAmB;QAC1B,SAAS,EAAE,KAAK;KACjB,CAAC,CAAC;AACL,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,MAAM,CAAC,KAAc,EAAE,KAAa;IAC3C,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACrB,UAAU,CAAC,GAAG,KAAK,qBAAqB,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,MAAM,CAAC,KAAc,EAAE,KAAa;IAC3C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,UAAU,CAAC,GAAG,KAAK,oBAAoB,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,YAAoB,EACpB,MAAoB;IAEpB,MAAM,KAAK,GAAG,MAAM,kBAAkB,CACpC,YAAY,EACZ,sBAAsB,EACtB,mBAAmB,EACnB,MAAM,CACP,CAAC;IACF,MAAM,YAAY,CAAC,sBAAsB,EAAE,KAAK,EAAE,mBAAmB,CAAC,CAAC;IAEvE,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC;IAChD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,CAAC;IACnD,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,cAAc,CAAC,CAAC;IAClE,MAAM,oBAAoB,GAAyB,EAAE,CAAC;IACtD,KAAK,MAAM,CAAC,EAAE,EAAE,gBAAgB,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;QAClE,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YACjC,UAAU,CAAC,uCAAuC,EAAE,GAAG,CAAC,CAAC;QAC3D,CAAC;QACD,MAAM,WAAW,GAAG,MAAM,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,EAAE,CAAC,CAAC;QACnE,oBAAoB,CAAC,IAAI,CAAC;YACxB,EAAE;YACF,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE,gBAAgB,EAAE,aAAa,CAAC;SAC/E,CAAC,CAAC;IACL,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC;QAC9C,oBAAoB,EAAE,MAAM,CAAC,MAAM,CACjC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CACxF;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function createUniqueRegistry<Value>(registryKind: string, entries: Iterable<readonly [string, Value]>): ReadonlyMap<string, Value>;
2
+ //# sourceMappingURL=unique-registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unique-registry.d.ts","sourceRoot":"","sources":["../src/unique-registry.ts"],"names":[],"mappings":"AAAA,wBAAgB,oBAAoB,CAAC,KAAK,EACxC,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,QAAQ,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,GAC1C,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAS5B"}
@@ -0,0 +1,11 @@
1
+ export function createUniqueRegistry(registryKind, entries) {
2
+ const registry = new Map();
3
+ for (const [id, value] of entries) {
4
+ if (registry.has(id)) {
5
+ throw new Error(`Duplicate ${registryKind} ID: ${id}.`);
6
+ }
7
+ registry.set(id, value);
8
+ }
9
+ return registry;
10
+ }
11
+ //# sourceMappingURL=unique-registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unique-registry.js","sourceRoot":"","sources":["../src/unique-registry.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,oBAAoB,CAClC,YAAoB,EACpB,OAA2C;IAE3C,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAiB,CAAC;IAC1C,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,OAAO,EAAE,CAAC;QAClC,IAAI,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,aAAa,YAAY,QAAQ,EAAE,GAAG,CAAC,CAAC;QAC1D,CAAC;QACD,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IAC1B,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agent-teams/engineering-foundation",
3
- "version": "0.16.0",
3
+ "version": "0.16.1",
4
4
  "description": "Versioned engineering policy, tooling, and conformance for Agent Teams repositories.",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
@@ -25,6 +25,12 @@
25
25
  "uniqueItems": true,
26
26
  "items": { "$ref": "#/$defs/pinnedContainerImage" }
27
27
  },
28
+ "allowedPullRequestTargetWorkflows": {
29
+ "type": "array",
30
+ "maxItems": 100,
31
+ "uniqueItems": true,
32
+ "items": { "$ref": "#/$defs/repositoryPath" }
33
+ },
28
34
  "allowedUses": {
29
35
  "type": "array",
30
36
  "maxItems": 500,