@agent-teams/engineering-foundation 0.9.0 → 0.10.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.
Files changed (86) hide show
  1. package/README.md +5 -0
  2. package/dist/capabilities/contract-json-schema-releases/adapters/outbound/filesystem/ajv-json-schema-release-inspector.d.ts +5 -0
  3. package/dist/capabilities/contract-json-schema-releases/adapters/outbound/filesystem/ajv-json-schema-release-inspector.d.ts.map +1 -1
  4. package/dist/capabilities/contract-json-schema-releases/adapters/outbound/filesystem/ajv-json-schema-release-inspector.js +48 -27
  5. package/dist/capabilities/contract-json-schema-releases/adapters/outbound/filesystem/ajv-json-schema-release-inspector.js.map +1 -1
  6. package/dist/capabilities/contract-json-schema-releases/application/ports/json-schema-release-inspector.d.ts +1 -0
  7. package/dist/capabilities/contract-json-schema-releases/application/ports/json-schema-release-inspector.d.ts.map +1 -1
  8. package/dist/capabilities/executable-specifications/adapters/outbound/filesystem/filesystem-executable-specification-inspector.d.ts +24 -0
  9. package/dist/capabilities/executable-specifications/adapters/outbound/filesystem/filesystem-executable-specification-inspector.d.ts.map +1 -0
  10. package/dist/capabilities/executable-specifications/adapters/outbound/filesystem/filesystem-executable-specification-inspector.js +244 -0
  11. package/dist/capabilities/executable-specifications/adapters/outbound/filesystem/filesystem-executable-specification-inspector.js.map +1 -0
  12. package/dist/capabilities/executable-specifications/application/model/executable-specification.d.ts +58 -0
  13. package/dist/capabilities/executable-specifications/application/model/executable-specification.d.ts.map +1 -0
  14. package/dist/capabilities/executable-specifications/application/model/executable-specification.js +2 -0
  15. package/dist/capabilities/executable-specifications/application/model/executable-specification.js.map +1 -0
  16. package/dist/capabilities/executable-specifications/application/policies/evaluate-executable-specifications.d.ts +6 -0
  17. package/dist/capabilities/executable-specifications/application/policies/evaluate-executable-specifications.d.ts.map +1 -0
  18. package/dist/capabilities/executable-specifications/application/policies/evaluate-executable-specifications.js +277 -0
  19. package/dist/capabilities/executable-specifications/application/policies/evaluate-executable-specifications.js.map +1 -0
  20. package/dist/capabilities/executable-specifications/application/policies/portable-executable-specification-path.d.ts +10 -0
  21. package/dist/capabilities/executable-specifications/application/policies/portable-executable-specification-path.d.ts.map +1 -0
  22. package/dist/capabilities/executable-specifications/application/policies/portable-executable-specification-path.js +76 -0
  23. package/dist/capabilities/executable-specifications/application/policies/portable-executable-specification-path.js.map +1 -0
  24. package/dist/capabilities/executable-specifications/application/ports/executable-specification-inspector.d.ts +9 -0
  25. package/dist/capabilities/executable-specifications/application/ports/executable-specification-inspector.d.ts.map +1 -0
  26. package/dist/capabilities/executable-specifications/application/ports/executable-specification-inspector.js +2 -0
  27. package/dist/capabilities/executable-specifications/application/ports/executable-specification-inspector.js.map +1 -0
  28. package/dist/capabilities/executable-specifications/application/rules.d.ts +22 -0
  29. package/dist/capabilities/executable-specifications/application/rules.d.ts.map +1 -0
  30. package/dist/capabilities/executable-specifications/application/rules.js +23 -0
  31. package/dist/capabilities/executable-specifications/application/rules.js.map +1 -0
  32. package/dist/capabilities/executable-specifications/application/use-cases/analyze-executable-specifications.d.ts +8 -0
  33. package/dist/capabilities/executable-specifications/application/use-cases/analyze-executable-specifications.d.ts.map +1 -0
  34. package/dist/capabilities/executable-specifications/application/use-cases/analyze-executable-specifications.js +36 -0
  35. package/dist/capabilities/executable-specifications/application/use-cases/analyze-executable-specifications.js.map +1 -0
  36. package/dist/capabilities/executable-specifications/contract/config.d.ts +5 -0
  37. package/dist/capabilities/executable-specifications/contract/config.d.ts.map +1 -0
  38. package/dist/capabilities/executable-specifications/contract/config.js +155 -0
  39. package/dist/capabilities/executable-specifications/contract/config.js.map +1 -0
  40. package/dist/capabilities/executable-specifications/module.d.ts +10 -0
  41. package/dist/capabilities/executable-specifications/module.d.ts.map +1 -0
  42. package/dist/capabilities/executable-specifications/module.js +52 -0
  43. package/dist/capabilities/executable-specifications/module.js.map +1 -0
  44. package/dist/capabilities/source-dependencies/application/model/source-workspace.d.ts +2 -0
  45. package/dist/capabilities/source-dependencies/application/model/source-workspace.d.ts.map +1 -1
  46. package/dist/capabilities/source-dependencies/application/policies/evaluate-resolved-source-dependency.d.ts +1 -0
  47. package/dist/capabilities/source-dependencies/application/policies/evaluate-resolved-source-dependency.d.ts.map +1 -1
  48. package/dist/capabilities/source-dependencies/application/policies/evaluate-resolved-source-dependency.js +47 -3
  49. package/dist/capabilities/source-dependencies/application/policies/evaluate-resolved-source-dependency.js.map +1 -1
  50. package/dist/capabilities/source-dependencies/application/policies/evaluate-source-dependencies.d.ts.map +1 -1
  51. package/dist/capabilities/source-dependencies/application/policies/evaluate-source-dependencies.js +14 -1
  52. package/dist/capabilities/source-dependencies/application/policies/evaluate-source-dependencies.js.map +1 -1
  53. package/dist/capabilities/source-dependencies/application/rules.d.ts +2 -0
  54. package/dist/capabilities/source-dependencies/application/rules.d.ts.map +1 -1
  55. package/dist/capabilities/source-dependencies/application/rules.js +2 -0
  56. package/dist/capabilities/source-dependencies/application/rules.js.map +1 -1
  57. package/dist/capabilities/source-dependencies/contract/config.d.ts.map +1 -1
  58. package/dist/capabilities/source-dependencies/contract/config.js +5 -0
  59. package/dist/capabilities/source-dependencies/contract/config.js.map +1 -1
  60. package/dist/composition/capability-registry.d.ts.map +1 -1
  61. package/dist/composition/capability-registry.js +2 -0
  62. package/dist/composition/capability-registry.js.map +1 -1
  63. package/dist/composition/rule-registry.d.ts.map +1 -1
  64. package/dist/composition/rule-registry.js +2 -0
  65. package/dist/composition/rule-registry.js.map +1 -1
  66. package/dist/foundation-config.d.ts +1 -1
  67. package/dist/foundation-config.d.ts.map +1 -1
  68. package/dist/foundation-config.js +2 -0
  69. package/dist/foundation-config.js.map +1 -1
  70. package/dist/schema-ids.d.ts +1 -1
  71. package/dist/schema-ids.d.ts.map +1 -1
  72. package/dist/schema-ids.js +2 -0
  73. package/dist/schema-ids.js.map +1 -1
  74. package/dist/strict-json.d.ts +7 -0
  75. package/dist/strict-json.d.ts.map +1 -0
  76. package/dist/strict-json.js +41 -0
  77. package/dist/strict-json.js.map +1 -0
  78. package/dist/workspace-inventory/adapters/outbound/pnpm/pnpm-workspace-inventory-reader.d.ts +1 -0
  79. package/dist/workspace-inventory/adapters/outbound/pnpm/pnpm-workspace-inventory-reader.d.ts.map +1 -1
  80. package/dist/workspace-inventory/adapters/outbound/pnpm/pnpm-workspace-inventory-reader.js +7 -0
  81. package/dist/workspace-inventory/adapters/outbound/pnpm/pnpm-workspace-inventory-reader.js.map +1 -1
  82. package/package.json +4 -1
  83. package/schemas/architecture-source-dependencies/v1.schema.json +1 -0
  84. package/schemas/foundation-config/v1.schema.json +10 -0
  85. package/schemas/quality-executable-specification-catalog/v1.schema.json +201 -0
  86. package/schemas/quality-executable-specifications/v1.schema.json +20 -0
@@ -0,0 +1,155 @@
1
+ import { resolve } from "node:path";
2
+ import { CapabilityInputError } from "../../../capability-runtime.js";
3
+ import { ContainedFileReadError, readContainedRegularFile } from "../../../filesystem-path-safety.js";
4
+ import { assertSchema } from "../../../schema-catalog.js";
5
+ import { assertNotCancelled, assertRepositoryRelativePath, loadStrictYamlFile } from "../../../strict-yaml.js";
6
+ import { parseStrictJson, StrictJsonError } from "../../../strict-json.js";
7
+ import { portableExecutableSpecificationPathProblem } from "../application/policies/portable-executable-specification-path.js";
8
+ export const CAPABILITY_ID = "quality.executable-specifications";
9
+ export const CAPABILITY_CONFIG_SCHEMA_VERSION = 1;
10
+ const MAX_CATALOG_BYTES = 4 * 1024 * 1024;
11
+ function inputError(code, message) {
12
+ throw new CapabilityInputError({
13
+ code,
14
+ message,
15
+ phase: "executable-specification-config",
16
+ retryable: false
17
+ });
18
+ }
19
+ function record(value, field) {
20
+ if (typeof value !== "object" || value === null || Array.isArray(value)) {
21
+ inputError("EXECUTABLE_SPECIFICATION_CONFIG_INVALID", `${field} must be an object.`);
22
+ }
23
+ return value;
24
+ }
25
+ function string(value, field) {
26
+ if (typeof value !== "string") {
27
+ inputError("EXECUTABLE_SPECIFICATION_CONFIG_INVALID", `${field} must be a string.`);
28
+ }
29
+ return value;
30
+ }
31
+ function list(value, field) {
32
+ if (!Array.isArray(value)) {
33
+ inputError("EXECUTABLE_SPECIFICATION_CONFIG_INVALID", `${field} must be an array.`);
34
+ }
35
+ return value;
36
+ }
37
+ function path(value, field) {
38
+ const repositoryPath = string(value, field);
39
+ assertRepositoryRelativePath(repositoryPath, "executable-specification-config");
40
+ const portabilityProblem = portableExecutableSpecificationPathProblem(repositoryPath);
41
+ if (portabilityProblem !== undefined) {
42
+ inputError("EXECUTABLE_SPECIFICATION_PATH_NOT_PORTABLE", `${field} is not a portable executable specification path: ${portabilityProblem}.`);
43
+ }
44
+ return repositoryPath;
45
+ }
46
+ function gate(value, field) {
47
+ const source = record(value, field);
48
+ return Object.freeze({
49
+ packageName: string(source["packageName"], `${field}.packageName`),
50
+ script: string(source["script"], `${field}.script`)
51
+ });
52
+ }
53
+ function document(value, field) {
54
+ const source = record(value, field);
55
+ return Object.freeze({
56
+ path: path(source["path"], `${field}.path`),
57
+ schemaId: string(source["schemaId"], `${field}.schemaId`)
58
+ });
59
+ }
60
+ function generatedType(value, field) {
61
+ const source = record(value, field);
62
+ return Object.freeze({
63
+ schemaId: string(source["schemaId"], `${field}.schemaId`),
64
+ outputPath: path(source["outputPath"], `${field}.outputPath`)
65
+ });
66
+ }
67
+ function stateModel(value, field) {
68
+ const source = record(value, field);
69
+ if (source["kind"] === "none") {
70
+ return Object.freeze({ kind: "none" });
71
+ }
72
+ if (source["kind"] !== "xstate") {
73
+ inputError("EXECUTABLE_SPECIFICATION_CONFIG_INVALID", `${field}.kind is invalid.`);
74
+ }
75
+ return Object.freeze({
76
+ kind: "xstate",
77
+ axes: Object.freeze(list(source["axes"], `${field}.axes`).map((entry, index) => string(entry, `${field}.axes[${index}]`))),
78
+ modelPath: path(source["modelPath"], `${field}.modelPath`),
79
+ adapterPath: path(source["adapterPath"], `${field}.adapterPath`),
80
+ tracesPath: path(source["tracesPath"], `${field}.tracesPath`),
81
+ diagramPath: path(source["diagramPath"], `${field}.diagramPath`),
82
+ gateBinding: gate(source["gateBinding"], `${field}.gateBinding`)
83
+ });
84
+ }
85
+ function specification(value, index) {
86
+ const field = `specifications[${index}]`;
87
+ const source = record(value, field);
88
+ const gates = record(source["gateBindings"], `${field}.gateBindings`);
89
+ const generatedTypes = Object.freeze(list(source["generatedTypes"], `${field}.generatedTypes`).map((entry, typeIndex) => generatedType(entry, `${field}.generatedTypes[${typeIndex}]`)));
90
+ return Object.freeze({
91
+ id: string(source["id"], `${field}.id`),
92
+ ownerDocs: Object.freeze(list(source["ownerDocs"], `${field}.ownerDocs`).map((entry, pathIndex) => path(entry, `${field}.ownerDocs[${pathIndex}]`))),
93
+ adrRefs: Object.freeze(list(source["adrRefs"], `${field}.adrRefs`).map((entry, pathIndex) => path(entry, `${field}.adrRefs[${pathIndex}]`))),
94
+ schemaPaths: Object.freeze(list(source["schemaPaths"], `${field}.schemaPaths`).map((entry, pathIndex) => path(entry, `${field}.schemaPaths[${pathIndex}]`))),
95
+ documents: Object.freeze(list(source["documents"], `${field}.documents`).map((entry, documentIndex) => document(entry, `${field}.documents[${documentIndex}]`))),
96
+ generatedTypes,
97
+ gateBindings: Object.freeze({
98
+ ...(generatedTypes.length === 0
99
+ ? {}
100
+ : {
101
+ typeGeneration: gate(gates["typeGeneration"], `${field}.gateBindings.typeGeneration`)
102
+ }),
103
+ property: gate(gates["property"], `${field}.gateBindings.property`),
104
+ mutation: gate(gates["mutation"], `${field}.gateBindings.mutation`)
105
+ }),
106
+ stateModel: stateModel(source["stateModel"], `${field}.stateModel`)
107
+ });
108
+ }
109
+ async function readCatalog(consumerRoot, catalogPath) {
110
+ let bytes;
111
+ try {
112
+ bytes = await readContainedRegularFile({
113
+ candidate: resolve(consumerRoot, catalogPath),
114
+ maxBytes: MAX_CATALOG_BYTES,
115
+ root: consumerRoot
116
+ });
117
+ }
118
+ catch (error) {
119
+ if (error instanceof ContainedFileReadError) {
120
+ inputError(`EXECUTABLE_SPECIFICATION_CATALOG_${error.failure.toUpperCase()}`, `Executable specification catalog is not a contained regular file: ${catalogPath}.`);
121
+ }
122
+ throw error;
123
+ }
124
+ try {
125
+ return parseStrictJson(bytes.toString("utf8"));
126
+ }
127
+ catch (error) {
128
+ if (error instanceof StrictJsonError && error.failure === "duplicate-key") {
129
+ inputError("EXECUTABLE_SPECIFICATION_CATALOG_DUPLICATE_KEY", `Executable specification catalog contains duplicate object keys: ${catalogPath}.`);
130
+ }
131
+ inputError("EXECUTABLE_SPECIFICATION_CATALOG_INVALID", `Executable specification catalog is not valid JSON: ${catalogPath}.`);
132
+ }
133
+ }
134
+ export async function loadCapabilityConfig(consumerRoot, configPath, signal) {
135
+ path(configPath, "configPath");
136
+ const input = await loadStrictYamlFile(consumerRoot, configPath, "executable-specification-config", signal);
137
+ assertNotCancelled(signal);
138
+ await assertSchema("quality-executable-specifications/v1", input, "executable-specification-config");
139
+ const config = record(input, "executable specification config");
140
+ const catalogPath = path(config["catalogPath"], "catalogPath");
141
+ if (!catalogPath.endsWith(".json")) {
142
+ inputError("EXECUTABLE_SPECIFICATION_CATALOG_PATH_INVALID", "catalogPath must name a JSON file.");
143
+ }
144
+ const catalogInput = await readCatalog(consumerRoot, catalogPath);
145
+ assertNotCancelled(signal);
146
+ await assertSchema("quality-executable-specification-catalog/v1", catalogInput, "executable-specification-catalog");
147
+ const catalog = record(catalogInput, "executable specification catalog");
148
+ return Object.freeze({
149
+ schemaVersion: 1,
150
+ configPath,
151
+ catalogPath,
152
+ specifications: Object.freeze(list(catalog["specifications"], "specifications").map(specification))
153
+ });
154
+ }
155
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/capabilities/executable-specifications/contract/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { type CapabilityDefinition } from "../../capability-runtime.js";
2
+ import { EXECUTABLE_SPECIFICATION_RULES, EXECUTABLE_SPECIFICATION_RULES_BY_ID } from "./application/rules.js";
3
+ export { FilesystemExecutableSpecificationInspector } from "./adapters/outbound/filesystem/filesystem-executable-specification-inspector.js";
4
+ export type { ConsumerGateBinding, ExecutableSpecification, ExecutableSpecificationCatalog, ExecutableSpecificationDocument, ExecutableSpecificationObservation, GeneratedTypeBinding, NoStateModel, ObservedGateBinding, XstateStateModel } from "./application/model/executable-specification.js";
5
+ export { evaluateExecutableSpecifications } from "./application/policies/evaluate-executable-specifications.js";
6
+ export type { ExecutableSpecificationInspector } from "./application/ports/executable-specification-inspector.js";
7
+ export { EXECUTABLE_SPECIFICATION_RULES, EXECUTABLE_SPECIFICATION_RULES_BY_ID };
8
+ export { analyzeExecutableSpecifications } from "./application/use-cases/analyze-executable-specifications.js";
9
+ export declare function createExecutableSpecificationsCapability(): CapabilityDefinition;
10
+ //# sourceMappingURL=module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../src/capabilities/executable-specifications/module.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,oBAAoB,EAE1B,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EACL,8BAA8B,EAC9B,oCAAoC,EACrC,MAAM,wBAAwB,CAAC;AAOhC,OAAO,EAAE,0CAA0C,EAAE,MAAM,iFAAiF,CAAC;AAC7I,YAAY,EACV,mBAAmB,EACnB,uBAAuB,EACvB,8BAA8B,EAC9B,+BAA+B,EAC/B,kCAAkC,EAClC,oBAAoB,EACpB,YAAY,EACZ,mBAAmB,EACnB,gBAAgB,EACjB,MAAM,iDAAiD,CAAC;AACzD,OAAO,EAAE,gCAAgC,EAAE,MAAM,8DAA8D,CAAC;AAChH,YAAY,EAAE,gCAAgC,EAAE,MAAM,2DAA2D,CAAC;AAClH,OAAO,EACL,8BAA8B,EAC9B,oCAAoC,EACrC,CAAC;AACF,OAAO,EAAE,+BAA+B,EAAE,MAAM,8DAA8D,CAAC;AAE/G,wBAAgB,wCAAwC,IAAI,oBAAoB,CA+C/E"}
@@ -0,0 +1,52 @@
1
+ import { CapabilityInputError, capabilityReport } from "../../capability-runtime.js";
2
+ import { FilesystemExecutableSpecificationInspector } from "./adapters/outbound/filesystem/filesystem-executable-specification-inspector.js";
3
+ import { analyzeExecutableSpecifications } from "./application/use-cases/analyze-executable-specifications.js";
4
+ import { EXECUTABLE_SPECIFICATION_RULES, EXECUTABLE_SPECIFICATION_RULES_BY_ID } from "./application/rules.js";
5
+ import { CAPABILITY_CONFIG_SCHEMA_VERSION, CAPABILITY_ID, loadCapabilityConfig } from "./contract/config.js";
6
+ export { FilesystemExecutableSpecificationInspector } from "./adapters/outbound/filesystem/filesystem-executable-specification-inspector.js";
7
+ export { evaluateExecutableSpecifications } from "./application/policies/evaluate-executable-specifications.js";
8
+ export { EXECUTABLE_SPECIFICATION_RULES, EXECUTABLE_SPECIFICATION_RULES_BY_ID };
9
+ export { analyzeExecutableSpecifications } from "./application/use-cases/analyze-executable-specifications.js";
10
+ export function createExecutableSpecificationsCapability() {
11
+ const inspector = new FilesystemExecutableSpecificationInspector();
12
+ return Object.freeze({
13
+ id: CAPABILITY_ID,
14
+ configSchemaVersion: CAPABILITY_CONFIG_SCHEMA_VERSION,
15
+ async run(invocation) {
16
+ try {
17
+ const catalog = await loadCapabilityConfig(invocation.consumerRoot, invocation.configPath, invocation.signal);
18
+ return capabilityReport({
19
+ capabilityId: CAPABILITY_ID,
20
+ capabilityConfigSchemaVersion: CAPABILITY_CONFIG_SCHEMA_VERSION,
21
+ diagnostics: await analyzeExecutableSpecifications({
22
+ consumerRoot: invocation.consumerRoot,
23
+ catalog,
24
+ ...(invocation.signal === undefined ? {} : { signal: invocation.signal })
25
+ }, inspector)
26
+ });
27
+ }
28
+ catch (error) {
29
+ if (error instanceof CapabilityInputError) {
30
+ return capabilityReport({
31
+ capabilityId: CAPABILITY_ID,
32
+ capabilityConfigSchemaVersion: CAPABILITY_CONFIG_SCHEMA_VERSION,
33
+ outcome: error.problem.code === "EXECUTION_CANCELLED" ? "cancelled" : "invalid-input",
34
+ problem: error.problem
35
+ });
36
+ }
37
+ return capabilityReport({
38
+ capabilityId: CAPABILITY_ID,
39
+ capabilityConfigSchemaVersion: CAPABILITY_CONFIG_SCHEMA_VERSION,
40
+ outcome: "failed",
41
+ problem: {
42
+ code: "CAPABILITY_EXECUTION_FAILED",
43
+ message: "Executable specifications capability execution failed.",
44
+ phase: "executable-specification-execution",
45
+ retryable: false
46
+ }
47
+ });
48
+ }
49
+ }
50
+ });
51
+ }
52
+ //# sourceMappingURL=module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../../../src/capabilities/executable-specifications/module.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAGjB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,0CAA0C,EAAE,MAAM,iFAAiF,CAAC;AAC7I,OAAO,EAAE,+BAA+B,EAAE,MAAM,8DAA8D,CAAC;AAC/G,OAAO,EACL,8BAA8B,EAC9B,oCAAoC,EACrC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,gCAAgC,EAChC,aAAa,EACb,oBAAoB,EACrB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,0CAA0C,EAAE,MAAM,iFAAiF,CAAC;AAY7I,OAAO,EAAE,gCAAgC,EAAE,MAAM,8DAA8D,CAAC;AAEhH,OAAO,EACL,8BAA8B,EAC9B,oCAAoC,EACrC,CAAC;AACF,OAAO,EAAE,+BAA+B,EAAE,MAAM,8DAA8D,CAAC;AAE/G,MAAM,UAAU,wCAAwC;IACtD,MAAM,SAAS,GAAG,IAAI,0CAA0C,EAAE,CAAC;IACnE,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,EAAE,EAAE,aAAa;QACjB,mBAAmB,EAAE,gCAAgC;QACrD,KAAK,CAAC,GAAG,CAAC,UAAgC;YACxC,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,oBAAoB,CACxC,UAAU,CAAC,YAAY,EACvB,UAAU,CAAC,UAAU,EACrB,UAAU,CAAC,MAAM,CAClB,CAAC;gBACF,OAAO,gBAAgB,CAAC;oBACtB,YAAY,EAAE,aAAa;oBAC3B,6BAA6B,EAAE,gCAAgC;oBAC/D,WAAW,EAAE,MAAM,+BAA+B,CAChD;wBACE,YAAY,EAAE,UAAU,CAAC,YAAY;wBACrC,OAAO;wBACP,GAAG,CAAC,UAAU,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC;qBAC1E,EACD,SAAS,CACV;iBACF,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,KAAK,YAAY,oBAAoB,EAAE,CAAC;oBAC1C,OAAO,gBAAgB,CAAC;wBACtB,YAAY,EAAE,aAAa;wBAC3B,6BAA6B,EAAE,gCAAgC;wBAC/D,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,qBAAqB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,eAAe;wBACrF,OAAO,EAAE,KAAK,CAAC,OAAO;qBACvB,CAAC,CAAC;gBACL,CAAC;gBACD,OAAO,gBAAgB,CAAC;oBACtB,YAAY,EAAE,aAAa;oBAC3B,6BAA6B,EAAE,gCAAgC;oBAC/D,OAAO,EAAE,QAAQ;oBACjB,OAAO,EAAE;wBACP,IAAI,EAAE,6BAA6B;wBACnC,OAAO,EAAE,wDAAwD;wBACjE,KAAK,EAAE,oCAAoC;wBAC3C,SAAS,EAAE,KAAK;qBACjB;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -24,6 +24,8 @@ interface ParsedSourceFile extends SourceFileSnapshot {
24
24
  }
25
25
  export interface ArchitectureBoundaryPolicy {
26
26
  readonly id: string;
27
+ /** Runtime is the safe default; development admits runtime imports from devDependencies. */
28
+ readonly dependencyMode: "runtime" | "development";
27
29
  readonly roots: readonly string[];
28
30
  /** Explicit inbound local-import surface declared by the consumer. */
29
31
  readonly entrypoints: readonly string[];
@@ -1 +1 @@
1
- {"version":3,"file":"source-workspace.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/source-dependencies/application/model/source-workspace.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"source-workspace.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/source-dependencies/application/model/source-workspace.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ interface EvaluationInput {
4
4
  readonly edge: ObservedSourceDependencyEdge;
5
5
  readonly policy: SourceArchitecturePolicy;
6
6
  readonly boundariesById: ReadonlyMap<string, ArchitectureBoundaryPolicy>;
7
+ readonly developmentBoundariesByPackage: ReadonlyMap<string, readonly string[]>;
7
8
  }
8
9
  export declare function evaluateResolvedSourceDependency(input: EvaluationInput): readonly FoundationDiagnostic[];
9
10
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"evaluate-resolved-source-dependency.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/source-dependencies/application/policies/evaluate-resolved-source-dependency.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,oBAAoB,EACrB,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EACV,0BAA0B,EAC1B,4BAA4B,EAE5B,wBAAwB,EACzB,MAAM,8BAA8B,CAAC;AAWtC,UAAU,eAAe;IACvB,QAAQ,CAAC,IAAI,EAAE,4BAA4B,CAAC;IAC5C,QAAQ,CAAC,MAAM,EAAE,wBAAwB,CAAC;IAC1C,QAAQ,CAAC,cAAc,EAAE,WAAW,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAC;CAC1E;AAyTD,wBAAgB,gCAAgC,CAC9C,KAAK,EAAE,eAAe,GACrB,SAAS,oBAAoB,EAAE,CA2BjC"}
1
+ {"version":3,"file":"evaluate-resolved-source-dependency.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/source-dependencies/application/policies/evaluate-resolved-source-dependency.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,oBAAoB,EACrB,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EACV,0BAA0B,EAC1B,4BAA4B,EAE5B,wBAAwB,EACzB,MAAM,8BAA8B,CAAC;AAWtC,UAAU,eAAe;IACvB,QAAQ,CAAC,IAAI,EAAE,4BAA4B,CAAC;IAC5C,QAAQ,CAAC,MAAM,EAAE,wBAAwB,CAAC;IAC1C,QAAQ,CAAC,cAAc,EAAE,WAAW,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAC;IACzE,QAAQ,CAAC,8BAA8B,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC;CACjF;AAkXD,wBAAgB,gCAAgC,CAC9C,KAAK,EAAE,eAAe,GACrB,SAAS,oBAAoB,EAAE,CAgCjC"}
@@ -14,7 +14,9 @@ function diagnostic(input) {
14
14
  }
15
15
  function declarationDiagnostics(input) {
16
16
  if (input.declaration === "runtime" ||
17
- (input.declaration === "development" && input.edge.mode === "type-only")) {
17
+ (input.declaration === "development" &&
18
+ (input.edge.mode === "type-only" ||
19
+ input.sourceBoundary.dependencyMode === "development"))) {
18
20
  return [];
19
21
  }
20
22
  const rule = input.declaration === "development"
@@ -130,6 +132,7 @@ function evaluateExternalPackageDependency(edge, resolution, sourceBoundary) {
130
132
  edge,
131
133
  packageName: resolution.packageName,
132
134
  declaration: resolution.declaration,
135
+ sourceBoundary,
133
136
  workspace: false
134
137
  })
135
138
  ];
@@ -159,6 +162,22 @@ function forbiddenBoundaryDiagnostics(input) {
159
162
  })
160
163
  ];
161
164
  }
165
+ function developmentTargetDiagnostics(input) {
166
+ if (input.sourceBoundary.dependencyMode !== "runtime" ||
167
+ input.targetBoundary.dependencyMode !== "development") {
168
+ return [];
169
+ }
170
+ return [
171
+ diagnostic({
172
+ rule: SOURCE_DEPENDENCY_RULES.runtimeBoundaryImportsDevelopmentBoundary,
173
+ subject: `${input.sourceBoundary.id}->${input.targetBoundary.id}`,
174
+ message: `Runtime boundary ${input.sourceBoundary.id} cannot import development boundary ${input.targetBoundary.id}.`,
175
+ path: input.edge.fromPath,
176
+ relatedPath: input.targetPath,
177
+ evidence: [{ kind: "specifier", value: input.edge.specifier }]
178
+ })
179
+ ];
180
+ }
162
181
  function evaluateLocalFileDependency(input) {
163
182
  if (input.resolution.workspacePackageName !== input.edge.fromWorkspacePackageName) {
164
183
  return [crossPackageRelativeImportDiagnostic(input.edge, input.resolution)];
@@ -170,6 +189,12 @@ function evaluateLocalFileDependency(input) {
170
189
  return [];
171
190
  }
172
191
  return [
192
+ ...developmentTargetDiagnostics({
193
+ edge: input.edge,
194
+ sourceBoundary: input.sourceBoundary,
195
+ targetBoundary,
196
+ targetPath: input.resolution.path
197
+ }),
173
198
  ...forbiddenBoundaryDiagnostics({
174
199
  edge: input.edge,
175
200
  sourceBoundary: input.sourceBoundary,
@@ -183,7 +208,7 @@ function evaluateLocalFileDependency(input) {
183
208
  })
184
209
  ];
185
210
  }
186
- function evaluateWorkspacePackageDependency(edge, resolution, sourceBoundary) {
211
+ function evaluateWorkspacePackageDependency(edge, resolution, sourceBoundary, developmentBoundariesByPackage) {
187
212
  if (resolution.workspacePackageName === edge.fromWorkspacePackageName) {
188
213
  return selfPackageImportDiagnostics({
189
214
  edge,
@@ -193,7 +218,25 @@ function evaluateWorkspacePackageDependency(edge, resolution, sourceBoundary) {
193
218
  subpath: resolution.subpath
194
219
  });
195
220
  }
221
+ const developmentBoundaryIds = developmentBoundariesByPackage.get(resolution.workspacePackageName);
222
+ const developmentPackageDiagnostics = sourceBoundary.dependencyMode === "runtime" &&
223
+ developmentBoundaryIds !== undefined
224
+ ? [
225
+ diagnostic({
226
+ rule: SOURCE_DEPENDENCY_RULES.runtimeBoundaryImportsDevelopmentWorkspacePackage,
227
+ subject: `${sourceBoundary.id}->${resolution.workspacePackageName}`,
228
+ message: `Runtime boundary ${sourceBoundary.id} cannot import workspace package ${resolution.workspacePackageName} because that package contains a development boundary and package exports do not prove exact runtime-boundary ownership.`,
229
+ path: edge.fromPath,
230
+ relatedPath: resolution.workspacePackageManifestPath,
231
+ evidence: [
232
+ { kind: "specifier", value: edge.specifier },
233
+ { kind: "development-boundaries", value: developmentBoundaryIds.join(",") }
234
+ ]
235
+ })
236
+ ]
237
+ : [];
196
238
  return [
239
+ ...developmentPackageDiagnostics,
197
240
  ...forbiddenPackageDiagnostics({
198
241
  edge,
199
242
  sourceBoundary,
@@ -205,6 +248,7 @@ function evaluateWorkspacePackageDependency(edge, resolution, sourceBoundary) {
205
248
  edge,
206
249
  packageName: resolution.workspacePackageName,
207
250
  declaration: resolution.declaration,
251
+ sourceBoundary,
208
252
  workspace: true
209
253
  }),
210
254
  ...exportDiagnostics({
@@ -256,7 +300,7 @@ export function evaluateResolvedSourceDependency(input) {
256
300
  case "unresolved":
257
301
  return [unclassifiedResolutionDiagnostic(input.edge, resolution)];
258
302
  case "workspace-package":
259
- return evaluateWorkspacePackageDependency(input.edge, resolution, sourceBoundary);
303
+ return evaluateWorkspacePackageDependency(input.edge, resolution, sourceBoundary, input.developmentBoundariesByPackage);
260
304
  }
261
305
  }
262
306
  //# sourceMappingURL=evaluate-resolved-source-dependency.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"evaluate-resolved-source-dependency.js","sourceRoot":"","sources":["../../../../../src/capabilities/source-dependencies/application/policies/evaluate-resolved-source-dependency.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evaluate-resolved-source-dependency.js","sourceRoot":"","sources":["../../../../../src/capabilities/source-dependencies/application/policies/evaluate-resolved-source-dependency.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"evaluate-source-dependencies.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/source-dependencies/application/policies/evaluate-source-dependencies.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,oBAAoB,EACrB,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EACV,mBAAmB,EACnB,wBAAwB,EACzB,MAAM,8BAA8B,CAAC;AAQtC,UAAU,eAAe;IACvB,QAAQ,CAAC,MAAM,EAAE,wBAAwB,CAAC;IAC1C,QAAQ,CAAC,KAAK,EAAE,mBAAmB,CAAC;CACrC;AAqDD,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,eAAe,GACrB,SAAS,oBAAoB,EAAE,CAwDjC"}
1
+ {"version":3,"file":"evaluate-source-dependencies.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/source-dependencies/application/policies/evaluate-source-dependencies.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,oBAAoB,EACrB,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EACV,mBAAmB,EACnB,wBAAwB,EACzB,MAAM,8BAA8B,CAAC;AAQtC,UAAU,eAAe;IACvB,QAAQ,CAAC,MAAM,EAAE,wBAAwB,CAAC;IAC1C,QAAQ,CAAC,KAAK,EAAE,mBAAmB,CAAC;CACrC;AAqDD,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,eAAe,GACrB,SAAS,oBAAoB,EAAE,CAqEjC"}
@@ -39,6 +39,18 @@ function entrypointDeclarationDiagnostics(policy, graph) {
39
39
  export function evaluateSourceDependencies(input) {
40
40
  const diagnostics = [];
41
41
  const boundariesById = new Map(input.policy.boundaries.map((boundary) => [boundary.id, boundary]));
42
+ const developmentBoundariesByPackage = new Map();
43
+ for (const node of input.graph.nodes) {
44
+ if (boundariesById.get(node.boundaryId)?.dependencyMode !== "development") {
45
+ continue;
46
+ }
47
+ const boundaryIds = developmentBoundariesByPackage.get(node.workspacePackageName) ?? [];
48
+ if (!boundaryIds.includes(node.boundaryId)) {
49
+ boundaryIds.push(node.boundaryId);
50
+ boundaryIds.sort();
51
+ }
52
+ developmentBoundariesByPackage.set(node.workspacePackageName, boundaryIds);
53
+ }
42
54
  for (const path of input.graph.unclassifiedSourcePaths) {
43
55
  diagnostics.push(diagnostic({
44
56
  rule: SOURCE_DEPENDENCY_RULES.unclassifiedSourceFile,
@@ -77,7 +89,8 @@ export function evaluateSourceDependencies(input) {
77
89
  diagnostics.push(...evaluateResolvedSourceDependency({
78
90
  edge,
79
91
  policy: input.policy,
80
- boundariesById
92
+ boundariesById,
93
+ developmentBoundariesByPackage
81
94
  }));
82
95
  }
83
96
  diagnostics.push(...evaluateSourceDependencyCycles(input.graph));
@@ -1 +1 @@
1
- {"version":3,"file":"evaluate-source-dependencies.js","sourceRoot":"","sources":["../../../../../src/capabilities/source-dependencies/application/policies/evaluate-source-dependencies.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,8BAA8B,EAAE,MAAM,wCAAwC,CAAC;AACxF,OAAO,EAAE,gCAAgC,EAAE,MAAM,0CAA0C,CAAC;AAC5F,OAAO,EACL,uBAAuB,EAExB,MAAM,aAAa,CAAC;AAOrB,SAAS,UAAU,CAAC,KAOnB;IACC,OAAO;QACL,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE;QACrB,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ;QAC7B,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,QAAQ,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE;QAC9B,gBAAgB,EACd,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC;QACtE,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,EAAE;QAC9B,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,WAAW;QACnC,0BAA0B,EAAE,KAAK,CAAC,IAAI,CAAC,0BAA0B;KAClE,CAAC;AACJ,CAAC;AAED,SAAS,gCAAgC,CACvC,MAAgC,EAChC,KAA0B;IAE1B,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAC1E,MAAM,WAAW,GAA2B,EAAE,CAAC;IAC/C,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACzC,KAAK,MAAM,UAAU,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;YAC9C,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACzC,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,CAAC,EAAE,EAAE,CAAC;gBAC1D,SAAS;YACX,CAAC;YACD,WAAW,CAAC,IAAI,CACd,UAAU,CAAC;gBACT,IAAI,EAAE,uBAAuB,CAAC,yBAAyB;gBACvD,OAAO,EAAE,GAAG,QAAQ,CAAC,EAAE,IAAI,UAAU,EAAE;gBACvC,OAAO,EACL,IAAI,KAAK,SAAS;oBAChB,CAAC,CAAC,iEAAiE,UAAU,GAAG;oBAChF,CAAC,CAAC,kCAAkC,IAAI,CAAC,UAAU,SAAS,QAAQ,CAAC,EAAE,KAAK,UAAU,GAAG;gBAC7F,IAAI,EAAE,UAAU;gBAChB,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC;aACrD,CAAC,CACH,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,KAAsB;IAEtB,MAAM,WAAW,GAA2B,EAAE,CAAC;IAC/C,MAAM,cAAc,GAAG,IAAI,GAAG,CAC5B,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CACnE,CAAC;IACF,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,uBAAuB,EAAE,CAAC;QACvD,WAAW,CAAC,IAAI,CACd,UAAU,CAAC;YACT,IAAI,EAAE,uBAAuB,CAAC,sBAAsB;YACpD,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,mEAAmE;YAC5E,IAAI;SACL,CAAC,CACH,CAAC;IACJ,CAAC;IACD,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;QAChD,WAAW,CAAC,IAAI,CACd,UAAU,CAAC;YACT,IAAI,EAAE,uBAAuB,CAAC,gBAAgB;YAC9C,OAAO,EAAE,OAAO,CAAC,IAAI;YACrB,OAAO,EAAE,0BAA0B,OAAO,CAAC,eAAe,YAAY;YACtE,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;SAClF,CAAC,CACH,CAAC;IACJ,CAAC;IACD,KAAK,MAAM,mBAAmB,IAAI,KAAK,CAAC,KAAK,CAAC,2BAA2B,EAAE,CAAC;QAC1E,MAAM,QAAQ,GAAG,cAAc,CAAC,GAAG,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;QACpE,IAAI,QAAQ,EAAE,wBAAwB,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;YACnF,SAAS;QACX,CAAC;QACD,WAAW,CAAC,IAAI,CACd,UAAU,CAAC;YACT,IAAI,EAAE,uBAAuB,CAAC,0BAA0B;YACxD,OAAO,EAAE,GAAG,mBAAmB,CAAC,IAAI,IAAI,mBAAmB,CAAC,IAAI,IAAI,mBAAmB,CAAC,KAAK,EAAE;YAC/F,OAAO,EAAE,eAAe,mBAAmB,CAAC,IAAI,qCAAqC;YACrF,IAAI,EAAE,mBAAmB,CAAC,IAAI;YAC9B,QAAQ,EAAE;gBACR,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,mBAAmB,CAAC,IAAI,EAAE;gBAC3D,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE;aAC7D;SACF,CAAC,CACH,CAAC;IACJ,CAAC;IACD,WAAW,CAAC,IAAI,CAAC,GAAG,gCAAgC,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACjF,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACrC,WAAW,CAAC,IAAI,CACd,GAAG,gCAAgC,CAAC;YAClC,IAAI;YACJ,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,cAAc;SACf,CAAC,CACH,CAAC;IACJ,CAAC;IACD,WAAW,CAAC,IAAI,CAAC,GAAG,8BAA8B,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACjE,OAAO,WAAW,CAAC;AACrB,CAAC"}
1
+ {"version":3,"file":"evaluate-source-dependencies.js","sourceRoot":"","sources":["../../../../../src/capabilities/source-dependencies/application/policies/evaluate-source-dependencies.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,8BAA8B,EAAE,MAAM,wCAAwC,CAAC;AACxF,OAAO,EAAE,gCAAgC,EAAE,MAAM,0CAA0C,CAAC;AAC5F,OAAO,EACL,uBAAuB,EAExB,MAAM,aAAa,CAAC;AAOrB,SAAS,UAAU,CAAC,KAOnB;IACC,OAAO;QACL,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE;QACrB,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ;QAC7B,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,QAAQ,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE;QAC9B,gBAAgB,EACd,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC;QACtE,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,EAAE;QAC9B,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,WAAW;QACnC,0BAA0B,EAAE,KAAK,CAAC,IAAI,CAAC,0BAA0B;KAClE,CAAC;AACJ,CAAC;AAED,SAAS,gCAAgC,CACvC,MAAgC,EAChC,KAA0B;IAE1B,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAC1E,MAAM,WAAW,GAA2B,EAAE,CAAC;IAC/C,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACzC,KAAK,MAAM,UAAU,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;YAC9C,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACzC,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,CAAC,EAAE,EAAE,CAAC;gBAC1D,SAAS;YACX,CAAC;YACD,WAAW,CAAC,IAAI,CACd,UAAU,CAAC;gBACT,IAAI,EAAE,uBAAuB,CAAC,yBAAyB;gBACvD,OAAO,EAAE,GAAG,QAAQ,CAAC,EAAE,IAAI,UAAU,EAAE;gBACvC,OAAO,EACL,IAAI,KAAK,SAAS;oBAChB,CAAC,CAAC,iEAAiE,UAAU,GAAG;oBAChF,CAAC,CAAC,kCAAkC,IAAI,CAAC,UAAU,SAAS,QAAQ,CAAC,EAAE,KAAK,UAAU,GAAG;gBAC7F,IAAI,EAAE,UAAU;gBAChB,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC;aACrD,CAAC,CACH,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,KAAsB;IAEtB,MAAM,WAAW,GAA2B,EAAE,CAAC;IAC/C,MAAM,cAAc,GAAG,IAAI,GAAG,CAC5B,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CACnE,CAAC;IACF,MAAM,8BAA8B,GAAG,IAAI,GAAG,EAAoB,CAAC;IACnE,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACrC,IAAI,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,cAAc,KAAK,aAAa,EAAE,CAAC;YAC1E,SAAS;QACX,CAAC;QACD,MAAM,WAAW,GAAG,8BAA8B,CAAC,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,CAAC;QACxF,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3C,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAClC,WAAW,CAAC,IAAI,EAAE,CAAC;QACrB,CAAC;QACD,8BAA8B,CAAC,GAAG,CAAC,IAAI,CAAC,oBAAoB,EAAE,WAAW,CAAC,CAAC;IAC7E,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,uBAAuB,EAAE,CAAC;QACvD,WAAW,CAAC,IAAI,CACd,UAAU,CAAC;YACT,IAAI,EAAE,uBAAuB,CAAC,sBAAsB;YACpD,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,mEAAmE;YAC5E,IAAI;SACL,CAAC,CACH,CAAC;IACJ,CAAC;IACD,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;QAChD,WAAW,CAAC,IAAI,CACd,UAAU,CAAC;YACT,IAAI,EAAE,uBAAuB,CAAC,gBAAgB;YAC9C,OAAO,EAAE,OAAO,CAAC,IAAI;YACrB,OAAO,EAAE,0BAA0B,OAAO,CAAC,eAAe,YAAY;YACtE,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;SAClF,CAAC,CACH,CAAC;IACJ,CAAC;IACD,KAAK,MAAM,mBAAmB,IAAI,KAAK,CAAC,KAAK,CAAC,2BAA2B,EAAE,CAAC;QAC1E,MAAM,QAAQ,GAAG,cAAc,CAAC,GAAG,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;QACpE,IAAI,QAAQ,EAAE,wBAAwB,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;YACnF,SAAS;QACX,CAAC;QACD,WAAW,CAAC,IAAI,CACd,UAAU,CAAC;YACT,IAAI,EAAE,uBAAuB,CAAC,0BAA0B;YACxD,OAAO,EAAE,GAAG,mBAAmB,CAAC,IAAI,IAAI,mBAAmB,CAAC,IAAI,IAAI,mBAAmB,CAAC,KAAK,EAAE;YAC/F,OAAO,EAAE,eAAe,mBAAmB,CAAC,IAAI,qCAAqC;YACrF,IAAI,EAAE,mBAAmB,CAAC,IAAI;YAC9B,QAAQ,EAAE;gBACR,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,mBAAmB,CAAC,IAAI,EAAE;gBAC3D,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE;aAC7D;SACF,CAAC,CACH,CAAC;IACJ,CAAC;IACD,WAAW,CAAC,IAAI,CAAC,GAAG,gCAAgC,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACjF,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACrC,WAAW,CAAC,IAAI,CACd,GAAG,gCAAgC,CAAC;YAClC,IAAI;YACJ,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,cAAc;YACd,8BAA8B;SAC/B,CAAC,CACH,CAAC;IACJ,CAAC;IACD,WAAW,CAAC,IAAI,CAAC,GAAG,8BAA8B,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACjE,OAAO,WAAW,CAAC;AACrB,CAAC"}
@@ -10,6 +10,8 @@ export interface SourceDependencyRuleMetadata {
10
10
  export declare const SOURCE_DEPENDENCY_RULES: Readonly<{
11
11
  boundaryRuntimeCycle: SourceDependencyRuleMetadata;
12
12
  boundaryTypeOnlyCycle: SourceDependencyRuleMetadata;
13
+ runtimeBoundaryImportsDevelopmentBoundary: SourceDependencyRuleMetadata;
14
+ runtimeBoundaryImportsDevelopmentWorkspacePackage: SourceDependencyRuleMetadata;
13
15
  crossPackageRelativeImport: SourceDependencyRuleMetadata;
14
16
  crossBoundaryLocalImportNotEntrypoint: SourceDependencyRuleMetadata;
15
17
  forbiddenBoundaryDependency: SourceDependencyRuleMetadata;
@@ -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;;;;;;;;;;;;;;;;;;;;;EAoHlC,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;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"}
@@ -11,6 +11,8 @@ function rule(suffix, rationale, remediation, requiresArchitectureReview = false
11
11
  export const SOURCE_DEPENDENCY_RULES = Object.freeze({
12
12
  boundaryRuntimeCycle: rule("boundary-runtime-cycle", "A runtime cycle between architecture boundaries prevents an independent ownership direction.", "Break the boundary cycle with a port, event, or extracted shared contract.", true),
13
13
  boundaryTypeOnlyCycle: rule("boundary-type-only-cycle", "A type-only cycle still couples architecture boundaries and makes their public contracts mutually recursive.", "Move shared types to an explicit contract boundary or remove the cyclic type dependency.", true),
14
+ runtimeBoundaryImportsDevelopmentBoundary: rule("runtime-boundary-imports-development-boundary", "Runtime source cannot depend directly or transitively on a development-only boundary.", "Move the shared contract into a runtime boundary or keep the dependency entirely inside development boundaries.", true),
15
+ runtimeBoundaryImportsDevelopmentWorkspacePackage: rule("runtime-boundary-imports-development-workspace-package", "A workspace package containing development-only source cannot be a proven runtime-only package import target without explicit export ownership evidence.", "Move development source to a separate workspace package or import it only from a development boundary.", true),
14
16
  crossPackageRelativeImport: rule("cross-package-relative-import", "Cross-package relative imports bypass package identity and public exports.", "Import the target package through an exported package subpath.", true),
15
17
  crossBoundaryLocalImportNotEntrypoint: rule("cross-boundary-local-import-not-entrypoint", "Every cross-boundary local import must use a deliberately declared target entrypoint.", "Import the target boundary through one of its declared entrypoint source files.", true),
16
18
  forbiddenBoundaryDependency: rule("forbidden-boundary-dependency", "Source boundaries must follow the consumer-owned architecture graph.", "Move the dependency behind a port or approve the boundary edge.", true),
@@ -1 +1 @@
1
- {"version":3,"file":"rules.js","sourceRoot":"","sources":["../../../../src/capabilities/source-dependencies/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,8EAA8E;QAC7F,0BAA0B;KAC3B,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG,MAAM,CAAC,MAAM,CAAC;IACnD,oBAAoB,EAAE,IAAI,CACxB,wBAAwB,EACxB,8FAA8F,EAC9F,4EAA4E,EAC5E,IAAI,CACL;IACD,qBAAqB,EAAE,IAAI,CACzB,0BAA0B,EAC1B,8GAA8G,EAC9G,0FAA0F,EAC1F,IAAI,CACL;IACD,0BAA0B,EAAE,IAAI,CAC9B,+BAA+B,EAC/B,4EAA4E,EAC5E,gEAAgE,EAChE,IAAI,CACL;IACD,qCAAqC,EAAE,IAAI,CACzC,4CAA4C,EAC5C,uFAAuF,EACvF,iFAAiF,EACjF,IAAI,CACL;IACD,2BAA2B,EAAE,IAAI,CAC/B,+BAA+B,EAC/B,sEAAsE,EACtE,iEAAiE,EACjE,IAAI,CACL;IACD,0BAA0B,EAAE,IAAI,CAC9B,8BAA8B,EAC9B,uEAAuE,EACvE,wEAAwE,EACxE,IAAI,CACL;IACD,0BAA0B,EAAE,IAAI,CAC9B,8BAA8B,EAC9B,kEAAkE,EAClE,yEAAyE,EACzE,IAAI,CACL;IACD,yBAAyB,EAAE,IAAI,CAC7B,6BAA6B,EAC7B,qGAAqG,EACrG,yFAAyF,EACzF,IAAI,CACL;IACD,mBAAmB,EAAE,IAAI,CACvB,uBAAuB,EACvB,yGAAyG,EACzG,gFAAgF,EAChF,IAAI,CACL;IACD,oBAAoB,EAAE,IAAI,CACxB,yBAAyB,EACzB,oGAAoG,EACpG,gGAAgG,EAChG,IAAI,CACL;IACD,yBAAyB,EAAE,IAAI,CAC7B,8BAA8B,EAC9B,+DAA+D,EAC/D,yEAAyE,EACzE,IAAI,CACL;IACD,gBAAgB,EAAE,IAAI,CACpB,oBAAoB,EACpB,8EAA8E,EAC9E,kEAAkE,CACnE;IACD,4BAA4B,EAAE,IAAI,CAChC,gCAAgC,EAChC,qEAAqE,EACrE,0FAA0F,CAC3F;IACD,6BAA6B,EAAE,IAAI,CACjC,iCAAiC,EACjC,6EAA6E,EAC7E,4EAA4E,CAC7E;IACD,qBAAqB,EAAE,IAAI,CACzB,yBAAyB,EACzB,4EAA4E,EAC5E,yEAAyE,CAC1E;IACD,0BAA0B,EAAE,IAAI,CAC9B,8BAA8B,EAC9B,+EAA+E,EAC/E,uFAAuF,EACvF,IAAI,CACL;IACD,sCAAsC,EAAE,IAAI,CAC1C,4CAA4C,EAC5C,0EAA0E,EAC1E,mEAAmE,CACpE;IACD,mCAAmC,EAAE,IAAI,CACvC,yCAAyC,EACzC,6GAA6G,EAC7G,gIAAgI,EAChI,IAAI,CACL;IACD,0BAA0B,EAAE,IAAI,CAC9B,8BAA8B,EAC9B,gFAAgF,EAChF,uFAAuF,EACvF,IAAI,CACL;IACD,sBAAsB,EAAE,IAAI,CAC1B,0BAA0B,EAC1B,uFAAuF,EACvF,yFAAyF,EACzF,IAAI,CACL;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,6BAA6B,GAGtC,IAAI,GAAG,CACT,MAAM,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAClF,CAAC"}
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":"config.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/source-dependencies/contract/config.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAGV,wBAAwB,EACzB,MAAM,0CAA0C,CAAC;AAElD,eAAO,MAAM,aAAa,EAAG,kCAA2C,CAAC;AACzE,eAAO,MAAM,gCAAgC,EAAG,CAAU,CAAC;AA4J3D,wBAAsB,oBAAoB,CACxC,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,wBAAwB,CAAC,CAgCnC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/source-dependencies/contract/config.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAGV,wBAAwB,EACzB,MAAM,0CAA0C,CAAC;AAElD,eAAO,MAAM,aAAa,EAAG,kCAA2C,CAAC;AACzE,eAAO,MAAM,gCAAgC,EAAG,CAAU,CAAC;AAiK3D,wBAAsB,oBAAoB,CACxC,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,wBAAwB,CAAC,CAgCnC"}
@@ -106,8 +106,13 @@ function mapBoundary(value, index) {
106
106
  const boundary = record(value, `boundaries[${index}]`);
107
107
  const allow = record(boundary["allow"], `boundaries[${index}].allow`);
108
108
  const entrypoints = Object.freeze(sortedStrings(boundary["entrypoints"], `boundaries[${index}].entrypoints`).map(normalizeRepositoryPath));
109
+ const dependencyMode = boundary["dependencyMode"] ?? "runtime";
110
+ if (dependencyMode !== "runtime" && dependencyMode !== "development") {
111
+ inputError(`boundaries[${index}].dependencyMode is invalid.`);
112
+ }
109
113
  return Object.freeze({
110
114
  id: string(boundary["id"], `boundaries[${index}].id`),
115
+ dependencyMode,
111
116
  roots: Object.freeze(sortedStrings(boundary["roots"], `boundaries[${index}].roots`).map(normalizeRepositoryPath)),
112
117
  entrypoints,
113
118
  allowedBoundaries: sortedStrings(allow["boundaries"], `boundaries[${index}].allow.boundaries`),
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/capabilities/source-dependencies/contract/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/capabilities/source-dependencies/contract/config.ts"],"names":[],"mappings":"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"}
@@ -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;AAyBrE,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;AA2BrE,eAAO,MAAM,mBAAmB,EAAE,WAAW,CAAC,MAAM,EAAE,oBAAoB,CACF,CAAC"}