@goodbones/core 0.1.0-beta.1 → 0.1.0-beta.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/dts/core/campaigns.d.ts +141 -0
- package/build/dts/core/campaigns.d.ts.map +1 -0
- package/build/dts/core/coverage.d.ts +20 -0
- package/build/dts/core/coverage.d.ts.map +1 -1
- package/build/dts/core/graph.d.ts +2 -0
- package/build/dts/core/graph.d.ts.map +1 -1
- package/build/dts/core/imports.d.ts +3 -1
- package/build/dts/core/imports.d.ts.map +1 -1
- package/build/dts/core/ledger.d.ts +61 -0
- package/build/dts/core/ledger.d.ts.map +1 -0
- package/build/dts/core/slack.d.ts +22 -0
- package/build/dts/core/slack.d.ts.map +1 -0
- package/build/dts/core/structure.d.ts +1 -0
- package/build/dts/core/structure.d.ts.map +1 -1
- package/build/dts/domain/architecture-config.d.ts +324 -1
- package/build/dts/domain/architecture-config.d.ts.map +1 -1
- package/build/dts/domain/architecture-error.d.ts +8 -0
- package/build/dts/domain/architecture-error.d.ts.map +1 -1
- package/build/dts/domain/facts.d.ts +1 -0
- package/build/dts/domain/facts.d.ts.map +1 -1
- package/build/dts/domain/manifest-location.d.ts +9 -0
- package/build/dts/domain/manifest-location.d.ts.map +1 -0
- package/build/dts/domain/report.d.ts +16 -0
- package/build/dts/domain/report.d.ts.map +1 -0
- package/build/dts/domain/snapshot.d.ts +224 -0
- package/build/dts/domain/snapshot.d.ts.map +1 -0
- package/build/dts/domain/violation.d.ts +1 -1
- package/build/dts/domain/violation.d.ts.map +1 -1
- package/build/dts/index.d.ts +24 -9
- package/build/dts/index.d.ts.map +1 -1
- package/build/dts/infrastructure/campaign-functions.d.ts +7 -0
- package/build/dts/infrastructure/campaign-functions.d.ts.map +1 -0
- package/build/dts/infrastructure/manifest-file.d.ts +11 -2
- package/build/dts/infrastructure/manifest-file.d.ts.map +1 -1
- package/build/dts/infrastructure/manifest-include.d.ts +16 -0
- package/build/dts/infrastructure/manifest-include.d.ts.map +1 -0
- package/build/dts/infrastructure/report-source-fake.d.ts +4 -0
- package/build/dts/infrastructure/report-source-fake.d.ts.map +1 -0
- package/build/dts/infrastructure/report-source-live.d.ts +3 -0
- package/build/dts/infrastructure/report-source-live.d.ts.map +1 -0
- package/build/dts/infrastructure/syntax-matcher-fake.d.ts +10 -0
- package/build/dts/infrastructure/syntax-matcher-fake.d.ts.map +1 -0
- package/build/dts/infrastructure/walk.d.ts +6 -0
- package/build/dts/infrastructure/walk.d.ts.map +1 -1
- package/build/dts/load/policy.d.ts +16 -0
- package/build/dts/load/policy.d.ts.map +1 -1
- package/build/dts/manifest/compile.d.ts +7 -2
- package/build/dts/manifest/compile.d.ts.map +1 -1
- package/build/dts/manifest/expand.d.ts +27 -0
- package/build/dts/manifest/expand.d.ts.map +1 -0
- package/build/dts/manifest/infer.d.ts +55 -0
- package/build/dts/manifest/infer.d.ts.map +1 -0
- package/build/dts/manifest/json-schema.d.ts +10 -0
- package/build/dts/manifest/json-schema.d.ts.map +1 -0
- package/build/dts/manifest/manifest.d.ts +381 -1
- package/build/dts/manifest/manifest.d.ts.map +1 -1
- package/build/dts/ports/campaign-predicate.d.ts +24 -0
- package/build/dts/ports/campaign-predicate.d.ts.map +1 -0
- package/build/dts/ports/language.d.ts +4 -0
- package/build/dts/ports/language.d.ts.map +1 -1
- package/build/dts/ports/report-source.d.ts +14 -0
- package/build/dts/ports/report-source.d.ts.map +1 -0
- package/build/dts/ports/syntax-matcher.d.ts +21 -0
- package/build/dts/ports/syntax-matcher.d.ts.map +1 -0
- package/build/dts/testing.d.ts +2 -0
- package/build/dts/testing.d.ts.map +1 -1
- package/build/esm/core/campaigns.js +778 -0
- package/build/esm/core/campaigns.js.map +1 -0
- package/build/esm/core/coverage.js +107 -32
- package/build/esm/core/coverage.js.map +1 -1
- package/build/esm/core/graph.js +45 -0
- package/build/esm/core/graph.js.map +1 -1
- package/build/esm/core/imports.js +14 -9
- package/build/esm/core/imports.js.map +1 -1
- package/build/esm/core/ledger.js +171 -0
- package/build/esm/core/ledger.js.map +1 -0
- package/build/esm/core/slack.js +76 -0
- package/build/esm/core/slack.js.map +1 -0
- package/build/esm/core/structure.js +5 -2
- package/build/esm/core/structure.js.map +1 -1
- package/build/esm/domain/architecture-config.js +158 -1
- package/build/esm/domain/architecture-config.js.map +1 -1
- package/build/esm/domain/architecture-error.js +27 -0
- package/build/esm/domain/architecture-error.js.map +1 -1
- package/build/esm/domain/manifest-location.js +21 -0
- package/build/esm/domain/manifest-location.js.map +1 -0
- package/build/esm/domain/report.js +168 -0
- package/build/esm/domain/report.js.map +1 -0
- package/build/esm/domain/snapshot.js +141 -0
- package/build/esm/domain/snapshot.js.map +1 -0
- package/build/esm/domain/violation.js.map +1 -1
- package/build/esm/index.js +21 -8
- package/build/esm/index.js.map +1 -1
- package/build/esm/infrastructure/campaign-functions.js +67 -0
- package/build/esm/infrastructure/campaign-functions.js.map +1 -0
- package/build/esm/infrastructure/manifest-file.js +158 -7
- package/build/esm/infrastructure/manifest-file.js.map +1 -1
- package/build/esm/infrastructure/manifest-include.js +187 -0
- package/build/esm/infrastructure/manifest-include.js.map +1 -0
- package/build/esm/infrastructure/report-source-fake.js +6 -0
- package/build/esm/infrastructure/report-source-fake.js.map +1 -0
- package/build/esm/infrastructure/report-source-live.js +165 -0
- package/build/esm/infrastructure/report-source-live.js.map +1 -0
- package/build/esm/infrastructure/syntax-matcher-fake.js +33 -0
- package/build/esm/infrastructure/syntax-matcher-fake.js.map +1 -0
- package/build/esm/infrastructure/walk.js +57 -1
- package/build/esm/infrastructure/walk.js.map +1 -1
- package/build/esm/load/policy.js +123 -3
- package/build/esm/load/policy.js.map +1 -1
- package/build/esm/manifest/compile.js +228 -26
- package/build/esm/manifest/compile.js.map +1 -1
- package/build/esm/manifest/expand.js +116 -0
- package/build/esm/manifest/expand.js.map +1 -0
- package/build/esm/manifest/infer.js +455 -0
- package/build/esm/manifest/infer.js.map +1 -0
- package/build/esm/manifest/json-schema.js +135 -0
- package/build/esm/manifest/json-schema.js.map +1 -0
- package/build/esm/manifest/manifest.js +243 -5
- package/build/esm/manifest/manifest.js.map +1 -1
- package/build/esm/ports/campaign-predicate.js +2 -0
- package/build/esm/ports/campaign-predicate.js.map +1 -0
- package/build/esm/ports/report-source.js +7 -0
- package/build/esm/ports/report-source.js.map +1 -0
- package/build/esm/ports/syntax-matcher.js +12 -0
- package/build/esm/ports/syntax-matcher.js.map +1 -0
- package/build/esm/testing.js +2 -0
- package/build/esm/testing.js.map +1 -1
- package/package.json +9 -3
- package/schema/architecture-node.schema.json +2405 -0
- package/schema/architecture.schema.json +2825 -0
- package/schema/conformance.schema.json +775 -0
- package/src/core/campaigns.ts +1056 -0
- package/src/core/coverage.ts +164 -34
- package/src/core/graph.ts +48 -0
- package/src/core/imports.ts +29 -13
- package/src/core/ledger.ts +242 -0
- package/src/core/slack.ts +135 -0
- package/src/core/structure.ts +10 -5
- package/src/domain/architecture-config.ts +205 -1
- package/src/domain/architecture-error.ts +30 -0
- package/src/domain/facts.ts +9 -4
- package/src/domain/manifest-location.ts +41 -0
- package/src/domain/report.ts +203 -0
- package/src/domain/snapshot.ts +302 -0
- package/src/domain/violation.ts +4 -1
- package/src/index.ts +172 -3
- package/src/infrastructure/campaign-functions.ts +98 -0
- package/src/infrastructure/manifest-file.ts +204 -8
- package/src/infrastructure/manifest-include.ts +318 -0
- package/src/infrastructure/report-source-fake.ts +10 -0
- package/src/infrastructure/report-source-live.ts +192 -0
- package/src/infrastructure/syntax-matcher-fake.ts +51 -0
- package/src/infrastructure/walk.ts +70 -1
- package/src/load/policy.ts +193 -3
- package/src/manifest/compile.ts +290 -28
- package/src/manifest/expand.ts +183 -0
- package/src/manifest/infer.ts +643 -0
- package/src/manifest/json-schema.ts +168 -0
- package/src/manifest/manifest.ts +339 -11
- package/src/ports/campaign-predicate.ts +30 -0
- package/src/ports/language.ts +17 -0
- package/src/ports/report-source.ts +35 -0
- package/src/ports/syntax-matcher.ts +42 -0
- package/src/testing.ts +2 -0
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
import * as Schema from "effect/Schema";
|
|
2
|
+
export declare const SNAPSHOT_SCHEMA_ID = "https://dataquail.github.io/goodbones/schema/conformance.schema.json";
|
|
3
|
+
export declare const SNAPSHOT_VERSION = 1;
|
|
4
|
+
export declare const CONFORMANCE_MEASURES: readonly ["residue", "vacant", "slack", "concentration"];
|
|
5
|
+
export type ConformanceMeasure = (typeof CONFORMANCE_MEASURES)[number];
|
|
6
|
+
export declare const SnapshotViolation: Schema.Struct<{
|
|
7
|
+
readonly fingerprint: Schema.String;
|
|
8
|
+
readonly kind: Schema.Literals<readonly ["import", "export", "structure", "member", "surface", "graph", "campaign"]>;
|
|
9
|
+
readonly ruleName: Schema.String;
|
|
10
|
+
readonly file: Schema.String;
|
|
11
|
+
readonly subject: Schema.NullOr<Schema.String>;
|
|
12
|
+
readonly message: Schema.String;
|
|
13
|
+
readonly baselined: Schema.Boolean;
|
|
14
|
+
readonly ledgered: Schema.Boolean;
|
|
15
|
+
}>;
|
|
16
|
+
export declare const SnapshotSlack: Schema.Struct<{
|
|
17
|
+
readonly node: Schema.String;
|
|
18
|
+
readonly kind: Schema.Literals<readonly ["allow", "external"]>;
|
|
19
|
+
readonly entry: Schema.String;
|
|
20
|
+
readonly fragment: Schema.optionalKey<Schema.String>;
|
|
21
|
+
readonly of: Schema.optionalKey<Schema.Finite>;
|
|
22
|
+
}>;
|
|
23
|
+
export declare const SnapshotConcentration: Schema.Struct<{
|
|
24
|
+
readonly fragment: Schema.String;
|
|
25
|
+
readonly kind: Schema.Literals<readonly ["allow", "external"]>;
|
|
26
|
+
readonly entry: Schema.String;
|
|
27
|
+
readonly usedAt: Schema.Finite;
|
|
28
|
+
readonly of: Schema.Finite;
|
|
29
|
+
}>;
|
|
30
|
+
export declare const SnapshotVacancy: Schema.Struct<{
|
|
31
|
+
readonly node: Schema.String;
|
|
32
|
+
readonly allowances: Schema.Finite;
|
|
33
|
+
}>;
|
|
34
|
+
export declare const SnapshotCampaign: Schema.Struct<{
|
|
35
|
+
readonly id: Schema.String;
|
|
36
|
+
readonly title: Schema.optionalKey<Schema.String>;
|
|
37
|
+
readonly owner: Schema.optionalKey<Schema.String>;
|
|
38
|
+
readonly initial: Schema.Finite;
|
|
39
|
+
readonly allowed: Schema.Finite;
|
|
40
|
+
readonly count: Schema.Finite;
|
|
41
|
+
readonly fixed: Schema.Finite;
|
|
42
|
+
readonly progress: Schema.Finite;
|
|
43
|
+
readonly lastProgress: Schema.String;
|
|
44
|
+
readonly regressions: Schema.Finite;
|
|
45
|
+
readonly stalled: Schema.Boolean;
|
|
46
|
+
readonly complete: Schema.Boolean;
|
|
47
|
+
readonly onComplete: Schema.Literals<readonly ["keep", "remove"]>;
|
|
48
|
+
readonly ledgered: Schema.Boolean;
|
|
49
|
+
}>;
|
|
50
|
+
export declare const Snapshot: Schema.Struct<{
|
|
51
|
+
readonly version: Schema.Literal<1>;
|
|
52
|
+
readonly manifest: Schema.Struct<{
|
|
53
|
+
readonly path: Schema.String;
|
|
54
|
+
readonly sha256: Schema.String;
|
|
55
|
+
}>;
|
|
56
|
+
readonly roots: Schema.$Array<Schema.String>;
|
|
57
|
+
readonly files: Schema.Finite;
|
|
58
|
+
readonly ok: Schema.Boolean;
|
|
59
|
+
readonly coverage: Schema.Struct<Record<"graph" | "imports" | "members" | "structure" | "surface", Schema.Struct<{
|
|
60
|
+
readonly covered: Schema.Finite;
|
|
61
|
+
readonly total: Schema.Finite;
|
|
62
|
+
readonly floor: Schema.optionalKey<Schema.Finite>;
|
|
63
|
+
}>>>;
|
|
64
|
+
readonly conformance: Schema.Struct<Record<"concentration" | "residue" | "slack" | "vacant", Schema.Struct<{
|
|
65
|
+
readonly count: Schema.Finite;
|
|
66
|
+
readonly ceiling: Schema.optionalKey<Schema.Finite>;
|
|
67
|
+
}>>>;
|
|
68
|
+
readonly residue: Schema.Struct<{
|
|
69
|
+
readonly files: Schema.$Array<Schema.String>;
|
|
70
|
+
readonly folders: Schema.$Array<Schema.String>;
|
|
71
|
+
}>;
|
|
72
|
+
readonly vacant: Schema.$Array<Schema.Struct<{
|
|
73
|
+
readonly node: Schema.String;
|
|
74
|
+
readonly allowances: Schema.Finite;
|
|
75
|
+
}>>;
|
|
76
|
+
readonly violations: Schema.$Array<Schema.Struct<{
|
|
77
|
+
readonly fingerprint: Schema.String;
|
|
78
|
+
readonly kind: Schema.Literals<readonly ["import", "export", "structure", "member", "surface", "graph", "campaign"]>;
|
|
79
|
+
readonly ruleName: Schema.String;
|
|
80
|
+
readonly file: Schema.String;
|
|
81
|
+
readonly subject: Schema.NullOr<Schema.String>;
|
|
82
|
+
readonly message: Schema.String;
|
|
83
|
+
readonly baselined: Schema.Boolean;
|
|
84
|
+
readonly ledgered: Schema.Boolean;
|
|
85
|
+
}>>;
|
|
86
|
+
readonly unresolved: Schema.$Array<Schema.Struct<{
|
|
87
|
+
readonly file: Schema.String;
|
|
88
|
+
readonly specifier: Schema.String;
|
|
89
|
+
readonly detail: Schema.String;
|
|
90
|
+
}>>;
|
|
91
|
+
readonly stale: Schema.$Array<Schema.String>;
|
|
92
|
+
readonly baseline: Schema.Struct<{
|
|
93
|
+
readonly size: Schema.Finite;
|
|
94
|
+
}>;
|
|
95
|
+
readonly cycles: Schema.Finite;
|
|
96
|
+
readonly slack: Schema.$Array<Schema.Struct<{
|
|
97
|
+
readonly node: Schema.String;
|
|
98
|
+
readonly kind: Schema.Literals<readonly ["allow", "external"]>;
|
|
99
|
+
readonly entry: Schema.String;
|
|
100
|
+
readonly fragment: Schema.optionalKey<Schema.String>;
|
|
101
|
+
readonly of: Schema.optionalKey<Schema.Finite>;
|
|
102
|
+
}>>;
|
|
103
|
+
readonly concentration: Schema.$Array<Schema.Struct<{
|
|
104
|
+
readonly fragment: Schema.String;
|
|
105
|
+
readonly kind: Schema.Literals<readonly ["allow", "external"]>;
|
|
106
|
+
readonly entry: Schema.String;
|
|
107
|
+
readonly usedAt: Schema.Finite;
|
|
108
|
+
readonly of: Schema.Finite;
|
|
109
|
+
}>>;
|
|
110
|
+
readonly adoption: Schema.Struct<{
|
|
111
|
+
readonly unrestricted: Schema.$Array<Schema.String>;
|
|
112
|
+
readonly partial: Schema.$Array<Schema.String>;
|
|
113
|
+
}>;
|
|
114
|
+
readonly campaigns: Schema.$Array<Schema.Struct<{
|
|
115
|
+
readonly id: Schema.String;
|
|
116
|
+
readonly title: Schema.optionalKey<Schema.String>;
|
|
117
|
+
readonly owner: Schema.optionalKey<Schema.String>;
|
|
118
|
+
readonly initial: Schema.Finite;
|
|
119
|
+
readonly allowed: Schema.Finite;
|
|
120
|
+
readonly count: Schema.Finite;
|
|
121
|
+
readonly fixed: Schema.Finite;
|
|
122
|
+
readonly progress: Schema.Finite;
|
|
123
|
+
readonly lastProgress: Schema.String;
|
|
124
|
+
readonly regressions: Schema.Finite;
|
|
125
|
+
readonly stalled: Schema.Boolean;
|
|
126
|
+
readonly complete: Schema.Boolean;
|
|
127
|
+
readonly onComplete: Schema.Literals<readonly ["keep", "remove"]>;
|
|
128
|
+
readonly ledgered: Schema.Boolean;
|
|
129
|
+
}>>;
|
|
130
|
+
}>;
|
|
131
|
+
export type Snapshot = typeof Snapshot.Type;
|
|
132
|
+
export type SnapshotViolation = typeof SnapshotViolation.Type;
|
|
133
|
+
export type SnapshotSlack = typeof SnapshotSlack.Type;
|
|
134
|
+
export type SnapshotConcentration = typeof SnapshotConcentration.Type;
|
|
135
|
+
export type SnapshotVacancy = typeof SnapshotVacancy.Type;
|
|
136
|
+
export type SnapshotCampaign = typeof SnapshotCampaign.Type;
|
|
137
|
+
export declare const decodeSnapshot: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => import("effect/Result").Result<Schema.Struct.ReadonlySide<{
|
|
138
|
+
readonly version: Schema.Literal<1>;
|
|
139
|
+
readonly manifest: Schema.Struct<{
|
|
140
|
+
readonly path: Schema.String;
|
|
141
|
+
readonly sha256: Schema.String;
|
|
142
|
+
}>;
|
|
143
|
+
readonly roots: Schema.$Array<Schema.String>;
|
|
144
|
+
readonly files: Schema.Finite;
|
|
145
|
+
readonly ok: Schema.Boolean;
|
|
146
|
+
readonly coverage: Schema.Struct<Record<"graph" | "imports" | "members" | "structure" | "surface", Schema.Struct<{
|
|
147
|
+
readonly covered: Schema.Finite;
|
|
148
|
+
readonly total: Schema.Finite;
|
|
149
|
+
readonly floor: Schema.optionalKey<Schema.Finite>;
|
|
150
|
+
}>>>;
|
|
151
|
+
readonly conformance: Schema.Struct<Record<"concentration" | "residue" | "slack" | "vacant", Schema.Struct<{
|
|
152
|
+
readonly count: Schema.Finite;
|
|
153
|
+
readonly ceiling: Schema.optionalKey<Schema.Finite>;
|
|
154
|
+
}>>>;
|
|
155
|
+
readonly residue: Schema.Struct<{
|
|
156
|
+
readonly files: Schema.$Array<Schema.String>;
|
|
157
|
+
readonly folders: Schema.$Array<Schema.String>;
|
|
158
|
+
}>;
|
|
159
|
+
readonly vacant: Schema.$Array<Schema.Struct<{
|
|
160
|
+
readonly node: Schema.String;
|
|
161
|
+
readonly allowances: Schema.Finite;
|
|
162
|
+
}>>;
|
|
163
|
+
readonly violations: Schema.$Array<Schema.Struct<{
|
|
164
|
+
readonly fingerprint: Schema.String;
|
|
165
|
+
readonly kind: Schema.Literals<readonly ["import", "export", "structure", "member", "surface", "graph", "campaign"]>;
|
|
166
|
+
readonly ruleName: Schema.String;
|
|
167
|
+
readonly file: Schema.String;
|
|
168
|
+
readonly subject: Schema.NullOr<Schema.String>;
|
|
169
|
+
readonly message: Schema.String;
|
|
170
|
+
readonly baselined: Schema.Boolean;
|
|
171
|
+
readonly ledgered: Schema.Boolean;
|
|
172
|
+
}>>;
|
|
173
|
+
readonly unresolved: Schema.$Array<Schema.Struct<{
|
|
174
|
+
readonly file: Schema.String;
|
|
175
|
+
readonly specifier: Schema.String;
|
|
176
|
+
readonly detail: Schema.String;
|
|
177
|
+
}>>;
|
|
178
|
+
readonly stale: Schema.$Array<Schema.String>;
|
|
179
|
+
readonly baseline: Schema.Struct<{
|
|
180
|
+
readonly size: Schema.Finite;
|
|
181
|
+
}>;
|
|
182
|
+
readonly cycles: Schema.Finite;
|
|
183
|
+
readonly slack: Schema.$Array<Schema.Struct<{
|
|
184
|
+
readonly node: Schema.String;
|
|
185
|
+
readonly kind: Schema.Literals<readonly ["allow", "external"]>;
|
|
186
|
+
readonly entry: Schema.String;
|
|
187
|
+
readonly fragment: Schema.optionalKey<Schema.String>;
|
|
188
|
+
readonly of: Schema.optionalKey<Schema.Finite>;
|
|
189
|
+
}>>;
|
|
190
|
+
readonly concentration: Schema.$Array<Schema.Struct<{
|
|
191
|
+
readonly fragment: Schema.String;
|
|
192
|
+
readonly kind: Schema.Literals<readonly ["allow", "external"]>;
|
|
193
|
+
readonly entry: Schema.String;
|
|
194
|
+
readonly usedAt: Schema.Finite;
|
|
195
|
+
readonly of: Schema.Finite;
|
|
196
|
+
}>>;
|
|
197
|
+
readonly adoption: Schema.Struct<{
|
|
198
|
+
readonly unrestricted: Schema.$Array<Schema.String>;
|
|
199
|
+
readonly partial: Schema.$Array<Schema.String>;
|
|
200
|
+
}>;
|
|
201
|
+
readonly campaigns: Schema.$Array<Schema.Struct<{
|
|
202
|
+
readonly id: Schema.String;
|
|
203
|
+
readonly title: Schema.optionalKey<Schema.String>;
|
|
204
|
+
readonly owner: Schema.optionalKey<Schema.String>;
|
|
205
|
+
readonly initial: Schema.Finite;
|
|
206
|
+
readonly allowed: Schema.Finite;
|
|
207
|
+
readonly count: Schema.Finite;
|
|
208
|
+
readonly fixed: Schema.Finite;
|
|
209
|
+
readonly progress: Schema.Finite;
|
|
210
|
+
readonly lastProgress: Schema.String;
|
|
211
|
+
readonly regressions: Schema.Finite;
|
|
212
|
+
readonly stalled: Schema.Boolean;
|
|
213
|
+
readonly complete: Schema.Boolean;
|
|
214
|
+
readonly onComplete: Schema.Literals<readonly ["keep", "remove"]>;
|
|
215
|
+
readonly ledgered: Schema.Boolean;
|
|
216
|
+
}>>;
|
|
217
|
+
}, "Type">, Schema.SchemaError>;
|
|
218
|
+
type JsonValue = string | number | boolean | null | JsonObject | ReadonlyArray<JsonValue>;
|
|
219
|
+
type JsonObject = {
|
|
220
|
+
readonly [key: string]: JsonValue;
|
|
221
|
+
};
|
|
222
|
+
export declare const snapshotJsonSchema: () => JsonObject;
|
|
223
|
+
export {};
|
|
224
|
+
//# sourceMappingURL=snapshot.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../../../src/domain/snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAiBxC,eAAO,MAAM,kBAAkB,yEACyC,CAAC;AAEzE,eAAO,MAAM,gBAAgB,IAAI,CAAC;AAgClC,eAAO,MAAM,oBAAoB,YAAI,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,CAAU,CAAC;AAE7F,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,CAAC,CAAC;AAcvE,eAAO,MAAM,iBAAiB;;;;;;;;;EAkB5B,CAAC;AASH,eAAO,MAAM,aAAa;;;;;;EAmBxB,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;EAMhC,CAAC;AAEH,eAAO,MAAM,eAAe;;;EAM1B,CAAC;AAIH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;EAsC3B,CAAC;AAEH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2FnB,CAAC;AAEH,MAAM,MAAM,QAAQ,GAAG,OAAO,QAAQ,CAAC,IAAI,CAAC;AAC5C,MAAM,MAAM,iBAAiB,GAAG,OAAO,iBAAiB,CAAC,IAAI,CAAC;AAC9D,MAAM,MAAM,aAAa,GAAG,OAAO,aAAa,CAAC,IAAI,CAAC;AACtD,MAAM,MAAM,qBAAqB,GAAG,OAAO,qBAAqB,CAAC,IAAI,CAAC;AACtE,MAAM,MAAM,eAAe,GAAG,OAAO,eAAe,CAAC,IAAI,CAAC;AAC1D,MAAM,MAAM,gBAAgB,GAAG,OAAO,gBAAgB,CAAC,IAAI,CAAC;AAK5D,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BAGzB,CAAC;AAEH,KAAK,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,UAAU,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;AAC1F,KAAK,UAAU,GAAG;IAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAC;AAIxD,eAAO,MAAM,kBAAkB,QAAO,UAcrC,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type ViolationKind = "import" | "export" | "structure" | "member" | "surface" | "graph";
|
|
1
|
+
export type ViolationKind = "import" | "export" | "structure" | "member" | "surface" | "graph" | "campaign";
|
|
2
2
|
export type Violation = {
|
|
3
3
|
readonly kind: ViolationKind;
|
|
4
4
|
readonly ruleName: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"violation.d.ts","sourceRoot":"","sources":["../../../src/domain/violation.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"violation.d.ts","sourceRoot":"","sources":["../../../src/domain/violation.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,aAAa,GACvB,QAAQ,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,GAAG,SAAS,GAAG,OAAO,GAAG,UAAU,CAAC;AAElF,MAAM,MAAM,SAAS,GAAG;IACtB,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAItB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC,CAAC;AAKF,eAAO,MAAM,aAAa,cAAe,SAAS,KAAG,MACoC,CAAC;AAI1F,eAAO,MAAM,aAAa,cAAe,SAAS,KAAG,MACyC,CAAC"}
|
package/build/dts/index.d.ts
CHANGED
|
@@ -1,23 +1,38 @@
|
|
|
1
1
|
export { type Baseline, type BaselineFilter, baselineOf, decodeBaseline, EMPTY_BASELINE, makeBaselineFilter, serializeBaseline, staleEntriesOf, unbaselined, } from "./core/baseline.js";
|
|
2
|
-
export { type
|
|
2
|
+
export { type CampaignHit, type CampaignInput, campaignsFailingTheirProbe, campaignsSelecting, compileCampaignRule, compileCampaignRules, type CompiledCampaign, type CompiledDetector, evaluateCampaign, evaluateCampaigns, explainCampaign, type FailedProbe, leafTermsOf, matchKeyOf, probeInputOf, reportSpecsOf, type TermAnswer, } from "./core/campaigns.js";
|
|
3
|
+
export { type Coverage, type CoverageFamily, type CoverageFloors, coverageOf, coverageShortfalls, fractionsOf, type Reach, reachOf, type Residue, residueOf, type Vacancy, vacancyOf, } from "./core/coverage.js";
|
|
3
4
|
export { type BindingEdge, type CompiledExportRule, compileExportRule, compileExportRules, evaluateBindingEdge, evaluateSelectedBindings, exportRulesFailingTheirProbe, exportRulesSelecting, type ExportViolation, type SelectedExportRule, } from "./core/exports.js";
|
|
4
|
-
export { type CompiledGraph, compileGraphRules, EMPTY_GRAPH_RULES, evaluateGraph, type Graph, graphRulesFailingTheirProbe, hasGraphRules, } from "./core/graph.js";
|
|
5
|
-
export { type CompiledImportRule, compileImportRule, compileImportRules, evaluateImportEdge, evaluateSelectedEdge, type ImportEdge, probeTargetOf, rulesFailingTheirProbe, rulesSelecting, type SelectedRule, } from "./core/imports.js";
|
|
5
|
+
export { type CompiledGraph, compileGraphRules, cyclesIn, EMPTY_GRAPH_RULES, evaluateGraph, type Graph, graphRulesFailingTheirProbe, hasGraphRules, heightOf, } from "./core/graph.js";
|
|
6
|
+
export { type CompiledImportRule, compileImportRule, compileImportRules, evaluateImportEdge, evaluateResolvedEdge, evaluateSelectedEdge, type ImportEdge, probeTargetOf, rulesFailingTheirProbe, rulesSelecting, type SelectedRule, } from "./core/imports.js";
|
|
7
|
+
export { allowed, decodeLedger, EMPTY_LEDGER, entryOf, isComplete, isStalled, type Ledger, ledgerArithmeticHolds, ledgerOf, Ledger as LedgerSchema, newEntriesOf, progressOf, pruned, reconcile, type Reconciliation, type Regression, type RegressionRecord, serializeLedger, staleEntriesOf as staleLedgerEntriesOf, } from "./core/ledger.js";
|
|
6
8
|
export { type CompiledMemberRule, compileMemberRules, evaluateMemberSite, memberRulesFailingTheirProbe, memberRulesSelecting, } from "./core/members.js";
|
|
9
|
+
export { type Concentration, type ObservedEdge, type Slack, slackOf, type SlackReport, } from "./core/slack.js";
|
|
7
10
|
export { type CompiledStructure, compileStructure, EMPTY_STRUCTURE, evaluateStructure, requiredSiblingsOf, structureRulesFailingTheirProbe, } from "./core/structure.js";
|
|
8
11
|
export { type CompiledSurfaceRule, compileSurfaceRules, evaluateSurface, surfaceRulesFailingTheirProbe, surfaceRulesSelecting, } from "./core/surface.js";
|
|
9
|
-
export { type BindingKind, type DeclarationKind, type ExportFix, type ExportRule, type GraphConfig, type GraphCycleRule, type GraphOrphanRule, type GraphReachRule, type ImportProbe, type ImportProbeTarget, type ImportRule, type MemberRule, type MemberSubject, type ResolveConfig, type ResolveScope, type StructureConfig, type SurfaceRule, } from "./domain/architecture-config.js";
|
|
10
|
-
export { ConfigInvalid, ImportUnresolved, PatternInvalid, ScopeInvalid, } from "./domain/architecture-error.js";
|
|
12
|
+
export { type Allowance, type BindingKind, type CampaignProbe, type CampaignRule, type CampaignUnit, type DeclarationKind, type Detector, type ExportFix, type ExportRule, type GraphConfig, type GraphCycleRule, type GraphOrphanRule, type GraphReachRule, type ImportProbe, type ImportProbeTarget, type ImportRule, type MemberRule, type MemberSubject, type ProbeDiagnostic, type ResolveConfig, type ResolveScope, type StructureConfig, type SurfaceRule, } from "./domain/architecture-config.js";
|
|
13
|
+
export { ConfigInvalid, ImportUnresolved, PatternInvalid, ReportUnavailable, ScopeInvalid, } from "./domain/architecture-error.js";
|
|
11
14
|
export { type Binding, type ExportSite, type MemberSite, type SourceFacts, } from "./domain/facts.js";
|
|
15
|
+
export { type ManifestLocator, type ManifestPath, type ManifestPosition, renderManifestPath, } from "./domain/manifest-location.js";
|
|
16
|
+
export { type Diagnostic, indexByFile, parseReport, type ParseReportOptions, type ReportFormat, uniqueDiagnostics, } from "./domain/report.js";
|
|
17
|
+
export { CONFORMANCE_MEASURES, type ConformanceMeasure, decodeSnapshot, type Snapshot, SNAPSHOT_SCHEMA_ID, SNAPSHOT_VERSION, type SnapshotCampaign, type SnapshotConcentration, snapshotJsonSchema, Snapshot as SnapshotSchema, type SnapshotSlack, type SnapshotVacancy, type SnapshotViolation, } from "./domain/snapshot.js";
|
|
12
18
|
export { fingerprintOf, formatMessage, type Violation, type ViolationKind, } from "./domain/violation.js";
|
|
19
|
+
export { loadCampaignFunctions, type LoadedCampaignFunctions, } from "./infrastructure/campaign-functions.js";
|
|
13
20
|
export { makeFileSystemLive } from "./infrastructure/file-system-live.js";
|
|
14
|
-
export {
|
|
15
|
-
export {
|
|
21
|
+
export { findManifestFile, formatManifestYaml, MANIFEST_FILENAMES, type ManifestFile, readManifestFile, } from "./infrastructure/manifest-file.js";
|
|
22
|
+
export { expandIncludes, type IncludedManifest, type IncludeReader, type SourceDocument, } from "./infrastructure/manifest-include.js";
|
|
23
|
+
export { makeReportSourceLive } from "./infrastructure/report-source-live.js";
|
|
24
|
+
export { listPackageRoots, listSourceFiles, type PackagedLanguage, type PackageRoot, type WalkedLanguage, } from "./infrastructure/walk.js";
|
|
16
25
|
export { type LoadedPolicy, loadPolicy, type LoadPolicyInput } from "./load/policy.js";
|
|
17
|
-
export { type LoweredRules, lowerManifest, type ProbeLanguage } from "./manifest/compile.js";
|
|
18
|
-
export { type
|
|
26
|
+
export { type LoweredRules, lowerManifest, type LowerOptions, type ProbeLanguage, } from "./manifest/compile.js";
|
|
27
|
+
export { type ExpandedManifest, type ExpandIssue, expandManifest, type Origin, originOf, type Substitution, } from "./manifest/expand.js";
|
|
28
|
+
export { type Candidate, candidatesOf, type Generalization, type InferInput, inferManifest, type InferOptions, type InferPackage, type Inferred, type InferredTarget, singularOf, } from "./manifest/infer.js";
|
|
29
|
+
export { MANIFEST_NODE_SCHEMA_ID, MANIFEST_SCHEMA_ID, manifestJsonSchema, manifestNodeJsonSchema, } from "./manifest/json-schema.js";
|
|
30
|
+
export { type CampaignSpec, type DecodedManifest, decodeManifest, type DecodeManifestOptions, DEFAULT_LEDGER_DIR, type DetectorSpec, durationMs, type Manifest, type ManifestNode, Manifest as ManifestSchema, } from "./manifest/manifest.js";
|
|
31
|
+
export { type CampaignPredicate, type CampaignPredicateInput, type CampaignSubject, type Range, } from "./ports/campaign-predicate.js";
|
|
19
32
|
export { type FactExtractor } from "./ports/fact-extractor.js";
|
|
20
33
|
export { type FileSystem } from "./ports/file-system.js";
|
|
21
34
|
export { type Language } from "./ports/language.js";
|
|
22
35
|
export { type DependencyKind, type ModuleResolver, type ResolvedTarget, } from "./ports/module-resolver.js";
|
|
36
|
+
export { NO_REPORTS, type ReportSource, reportSourcesOf, type ReportSpec, } from "./ports/report-source.js";
|
|
37
|
+
export { type Position, type SyntaxMatch, type SyntaxMatcher, type SyntaxTree, } from "./ports/syntax-matcher.js";
|
|
23
38
|
//# sourceMappingURL=index.d.ts.map
|
package/build/dts/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,KAAK,QAAQ,EACb,KAAK,cAAc,EACnB,UAAU,EACV,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,EACd,WAAW,GACZ,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,KAAK,QAAQ,EACb,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,UAAU,EACV,kBAAkB,EAClB,WAAW,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { CampaignPredicate } from "../ports/campaign-predicate.js";
|
|
2
|
+
export type LoadedCampaignFunctions = {
|
|
3
|
+
readonly functions: ReadonlyMap<string, CampaignPredicate>;
|
|
4
|
+
readonly manifest: unknown;
|
|
5
|
+
};
|
|
6
|
+
export declare const loadCampaignFunctions: (manifestPath: string, rawManifest: unknown) => Promise<LoadedCampaignFunctions>;
|
|
7
|
+
//# sourceMappingURL=campaign-functions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"campaign-functions.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/campaign-functions.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAcxE,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IAE3D,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5B,CAAC;AAWF,eAAO,MAAM,qBAAqB,iBAClB,MAAM,eACP,OAAO,KACnB,OAAO,CAAC,uBAAuB,CA6DjC,CAAC"}
|
|
@@ -1,3 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
export declare const
|
|
1
|
+
import type { ManifestLocator } from "../domain/manifest-location.js";
|
|
2
|
+
export declare const MANIFEST_FILENAMES: readonly ["architecture.yaml", "architecture.yml", "architecture.json", "architecture.config.mjs"];
|
|
3
|
+
export type ManifestFile = {
|
|
4
|
+
readonly configPath: string;
|
|
5
|
+
readonly manifest: unknown;
|
|
6
|
+
readonly locate: ManifestLocator | undefined;
|
|
7
|
+
readonly files: ReadonlyArray<string>;
|
|
8
|
+
};
|
|
9
|
+
export declare const findManifestFile: (repoRoot: string) => string;
|
|
10
|
+
export declare const readManifestFile: (configPath: string) => Promise<ManifestFile>;
|
|
11
|
+
export declare const formatManifestYaml: (manifest: unknown) => string;
|
|
3
12
|
//# sourceMappingURL=manifest-file.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manifest-file.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/manifest-file.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"manifest-file.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/manifest-file.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EACV,eAAe,EAGhB,MAAM,gCAAgC,CAAC;AAexC,eAAO,MAAM,kBAAkB,YAC7B,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,yBAAyB,CACjB,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAG3B,QAAQ,CAAC,MAAM,EAAE,eAAe,GAAG,SAAS,CAAC;IAG7C,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;CACvC,CAAC;AAEF,eAAO,MAAM,gBAAgB,aAAc,MAAM,KAAG,MAoBnD,CAAC;AAYF,eAAO,MAAM,gBAAgB,eAAsB,MAAM,KAAG,OAAO,CAAC,YAAY,CAqB/E,CAAC;AAuGF,eAAO,MAAM,kBAAkB,aAAc,OAAO,KAAG,MACyB,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { type ManifestLocator } from "../domain/manifest-location.js";
|
|
2
|
+
export type SourceDocument = {
|
|
3
|
+
readonly value: unknown;
|
|
4
|
+
readonly locate: ManifestLocator | undefined;
|
|
5
|
+
};
|
|
6
|
+
export type IncludeReader = {
|
|
7
|
+
readonly exists: (file: string) => boolean;
|
|
8
|
+
readonly read: (file: string) => SourceDocument;
|
|
9
|
+
};
|
|
10
|
+
export type IncludedManifest = {
|
|
11
|
+
readonly value: unknown;
|
|
12
|
+
readonly locate: ManifestLocator | undefined;
|
|
13
|
+
readonly files: ReadonlyArray<string>;
|
|
14
|
+
};
|
|
15
|
+
export declare const expandIncludes: (rootPath: string, root: SourceDocument, reader: IncludeReader) => IncludedManifest;
|
|
16
|
+
//# sourceMappingURL=manifest-include.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manifest-include.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/manifest-include.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,eAAe,EAGrB,MAAM,gCAAgC,CAAC;AAiBxC,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,eAAe,GAAG,SAAS,CAAC;CAC9C,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IAE3C,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,cAAc,CAAC;CACjD,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IAGxB,QAAQ,CAAC,MAAM,EAAE,eAAe,GAAG,SAAS,CAAC;IAE7C,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;CACvC,CAAC;AA6DF,eAAO,MAAM,cAAc,aACf,MAAM,QACV,cAAc,UACZ,aAAa,KACpB,gBAkNF,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { Diagnostic } from "../domain/report.js";
|
|
2
|
+
import type { ReportSource } from "../ports/report-source.js";
|
|
3
|
+
export declare const makeReportSourceFake: (staged: Readonly<Record<string, ReadonlyArray<Omit<Diagnostic, "file">>>>) => ReportSource;
|
|
4
|
+
//# sourceMappingURL=report-source-fake.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"report-source-fake.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/report-source-fake.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAI9D,eAAO,MAAM,oBAAoB,WACvB,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,KACxE,YAED,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"report-source-live.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/report-source-live.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,YAAY,EAAoC,MAAM,2BAA2B,CAAC;AAoHhG,eAAO,MAAM,oBAAoB,aAAc,MAAM,KAAG,YAoEvD,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { SyntaxMatcher } from "../ports/syntax-matcher.js";
|
|
2
|
+
export type StagedMatch = {
|
|
3
|
+
readonly text: string;
|
|
4
|
+
readonly captures?: Readonly<Record<string, string>>;
|
|
5
|
+
readonly anchor?: string | null;
|
|
6
|
+
readonly line?: number;
|
|
7
|
+
readonly rule?: unknown;
|
|
8
|
+
};
|
|
9
|
+
export declare const makeSyntaxMatcherFake: (staged: Readonly<Record<string, ReadonlyArray<StagedMatch>>>, extensions?: ReadonlyArray<string> | null) => SyntaxMatcher;
|
|
10
|
+
//# sourceMappingURL=syntax-matcher-fake.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"syntax-matcher-fake.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/syntax-matcher-fake.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAe,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAO7E,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACrD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC;AASF,eAAO,MAAM,qBAAqB,WACxB,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,eAChD,aAAa,CAAC,MAAM,CAAC,GAAG,IAAI,KACvC,aAyBD,CAAC"}
|
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
import type { Language } from "../ports/language.js";
|
|
2
2
|
export type WalkedLanguage = Pick<Language, "extensions" | "ignoredFiles">;
|
|
3
3
|
export declare const listSourceFiles: (repoRoot: string, roots: ReadonlyArray<string>, languages: ReadonlyArray<WalkedLanguage>) => ReadonlyArray<string>;
|
|
4
|
+
export type PackagedLanguage = Pick<Language, "packageMarkers" | "sourceRoots">;
|
|
5
|
+
export type PackageRoot = {
|
|
6
|
+
readonly root: string;
|
|
7
|
+
readonly source: string | null;
|
|
8
|
+
};
|
|
9
|
+
export declare const listPackageRoots: (repoRoot: string, roots: ReadonlyArray<string>, languages: ReadonlyArray<PackagedLanguage>) => ReadonlyArray<PackageRoot>;
|
|
4
10
|
//# sourceMappingURL=walk.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"walk.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/walk.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAiBrD,MAAM,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,EAAE,YAAY,GAAG,cAAc,CAAC,CAAC;AAO3E,eAAO,MAAM,eAAe,aAChB,MAAM,SACT,aAAa,CAAC,MAAM,CAAC,aACjB,aAAa,CAAC,cAAc,CAAC,KACvC,aAAa,CAAC,MAAM,CAsBtB,CAAC"}
|
|
1
|
+
{"version":3,"file":"walk.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/walk.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAiBrD,MAAM,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,EAAE,YAAY,GAAG,cAAc,CAAC,CAAC;AAO3E,eAAO,MAAM,eAAe,aAChB,MAAM,SACT,aAAa,CAAC,MAAM,CAAC,aACjB,aAAa,CAAC,cAAc,CAAC,KACvC,aAAa,CAAC,MAAM,CAsBtB,CAAC;AAIF,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,QAAQ,EAAE,gBAAgB,GAAG,aAAa,CAAC,CAAC;AAEhF,MAAM,MAAM,WAAW,GAAG;IAExB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAGtB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC,CAAC;AAKF,eAAO,MAAM,gBAAgB,aACjB,MAAM,SACT,aAAa,CAAC,MAAM,CAAC,aACjB,aAAa,CAAC,gBAAgB,CAAC,KACzC,aAAa,CAAC,WAAW,CAgD3B,CAAC"}
|
|
@@ -1,18 +1,23 @@
|
|
|
1
1
|
import * as Result from "effect/Result";
|
|
2
2
|
import { type BaselineFilter } from "../core/baseline.js";
|
|
3
|
+
import { type CampaignPredicate, type CompiledCampaign } from "../core/campaigns.js";
|
|
3
4
|
import { type CompiledExportRule } from "../core/exports.js";
|
|
4
5
|
import { type CompiledGraph } from "../core/graph.js";
|
|
5
6
|
import { type CompiledImportRule } from "../core/imports.js";
|
|
7
|
+
import { type Ledger } from "../core/ledger.js";
|
|
6
8
|
import { type CompiledMemberRule } from "../core/members.js";
|
|
7
9
|
import { type CompiledStructure } from "../core/structure.js";
|
|
8
10
|
import { type CompiledSurfaceRule } from "../core/surface.js";
|
|
9
11
|
import { ConfigInvalid, type PatternInvalid } from "../domain/architecture-error.js";
|
|
12
|
+
import type { ManifestLocator } from "../domain/manifest-location.js";
|
|
10
13
|
import { type LoweredRules } from "../manifest/compile.js";
|
|
11
14
|
import { type Manifest } from "../manifest/manifest.js";
|
|
12
15
|
import type { FactExtractor } from "../ports/fact-extractor.js";
|
|
13
16
|
import type { FileSystem } from "../ports/file-system.js";
|
|
14
17
|
import type { Language } from "../ports/language.js";
|
|
15
18
|
import type { ModuleResolver } from "../ports/module-resolver.js";
|
|
19
|
+
import { type ReportSource } from "../ports/report-source.js";
|
|
20
|
+
import type { SyntaxMatcher } from "../ports/syntax-matcher.js";
|
|
16
21
|
export type LoadedPolicy = {
|
|
17
22
|
readonly repoRoot: string;
|
|
18
23
|
readonly config: Manifest;
|
|
@@ -23,11 +28,18 @@ export type LoadedPolicy = {
|
|
|
23
28
|
readonly graph: CompiledGraph;
|
|
24
29
|
readonly adoption: LoweredRules["adoption"];
|
|
25
30
|
readonly structure: CompiledStructure;
|
|
31
|
+
readonly campaignRules: ReadonlyArray<CompiledCampaign>;
|
|
32
|
+
readonly ledgers: ReadonlyMap<string, Ledger>;
|
|
33
|
+
readonly ledgerDir: string;
|
|
34
|
+
readonly functions: ReadonlyMap<string, CampaignPredicate>;
|
|
35
|
+
readonly reports: ReportSource;
|
|
36
|
+
readonly now: number;
|
|
26
37
|
readonly fileSystem: FileSystem;
|
|
27
38
|
readonly languages: ReadonlyArray<Language>;
|
|
28
39
|
readonly baseline: BaselineFilter;
|
|
29
40
|
readonly resolver: ModuleResolver;
|
|
30
41
|
readonly extractor: FactExtractor;
|
|
42
|
+
readonly syntax: SyntaxMatcher;
|
|
31
43
|
readonly ignoreUnresolved: ReadonlyArray<RegExp>;
|
|
32
44
|
readonly notices: ReadonlyArray<string>;
|
|
33
45
|
};
|
|
@@ -35,8 +47,12 @@ export type LoadPolicyInput = {
|
|
|
35
47
|
readonly repoRoot: string;
|
|
36
48
|
readonly configPath: string;
|
|
37
49
|
readonly manifest: unknown;
|
|
50
|
+
readonly locate?: ManifestLocator | undefined;
|
|
38
51
|
readonly languages: ReadonlyArray<Language>;
|
|
39
52
|
readonly fileSystem: FileSystem;
|
|
53
|
+
readonly functions?: ReadonlyMap<string, CampaignPredicate> | undefined;
|
|
54
|
+
readonly reports?: ReportSource | undefined;
|
|
55
|
+
readonly now?: number | undefined;
|
|
40
56
|
};
|
|
41
57
|
export declare const loadPolicy: (input: LoadPolicyInput) => Result.Result<LoadedPolicy, ConfigInvalid | PatternInvalid>;
|
|
42
58
|
//# sourceMappingURL=policy.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../../src/load/policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAEL,KAAK,cAAc,EAIpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,KAAK,kBAAkB,EAGxB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,KAAK,aAAa,EAGnB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,KAAK,kBAAkB,EAGxB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,KAAK,kBAAkB,EAGxB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,KAAK,iBAAiB,EAGvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,KAAK,mBAAmB,EAGzB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,aAAa,EAEb,KAAK,cAAc,EACpB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,KAAK,YAAY,EAAiB,MAAM,wBAAwB,CAAC;AAC1E,OAAO,
|
|
1
|
+
{"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../../src/load/policy.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { type ExportRule, type GraphConfig, type ImportRule, type MemberRule, type StructureFolder, type StructureNaming, type StructureParity, type StructureRoot, type SurfaceRule } from "../domain/architecture-config.js";
|
|
1
|
+
import { type CampaignRule, type ExportRule, type GraphConfig, type ImportRule, type MemberRule, type StructureFolder, type StructureNaming, type StructureParity, type StructureRoot, type SurfaceRule } from "../domain/architecture-config.js";
|
|
2
|
+
import { type Substitution } from "./expand.js";
|
|
2
3
|
import { type Manifest } from "./manifest.js";
|
|
3
4
|
export type LoweredRules = {
|
|
4
5
|
readonly imports: ReadonlyArray<ImportRule>;
|
|
@@ -6,6 +7,7 @@ export type LoweredRules = {
|
|
|
6
7
|
readonly members: ReadonlyArray<MemberRule>;
|
|
7
8
|
readonly surface: ReadonlyArray<SurfaceRule>;
|
|
8
9
|
readonly graph: GraphConfig;
|
|
10
|
+
readonly campaigns: ReadonlyArray<CampaignRule>;
|
|
9
11
|
readonly adoption: {
|
|
10
12
|
readonly unrestricted: ReadonlyArray<string>;
|
|
11
13
|
readonly partial: ReadonlyArray<string>;
|
|
@@ -22,5 +24,8 @@ export type ProbeLanguage = {
|
|
|
22
24
|
readonly id: string;
|
|
23
25
|
readonly extensions: ReadonlyArray<string>;
|
|
24
26
|
};
|
|
25
|
-
export
|
|
27
|
+
export type LowerOptions = {
|
|
28
|
+
readonly substitutions?: ReadonlyArray<Substitution>;
|
|
29
|
+
};
|
|
30
|
+
export declare const lowerManifest: (manifest: Manifest, languages?: ReadonlyArray<ProbeLanguage>, options?: LowerOptions) => LoweredRules;
|
|
26
31
|
//# sourceMappingURL=compile.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compile.d.ts","sourceRoot":"","sources":["../../../src/manifest/compile.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"compile.d.ts","sourceRoot":"","sources":["../../../src/manifest/compile.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,YAAY,EAEjB,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,UAAU,EAEf,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,WAAW,EACjB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAc,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAE5D,OAAO,EAML,KAAK,QAAQ,EAId,MAAM,eAAe,CAAC;AAKvB,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IAC5C,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IAC5C,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IAC5C,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;IAC7C,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAE5B,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;IAGhD,QAAQ,CAAC,QAAQ,EAAE;QACjB,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;QAC7C,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;KACzC,CAAC;IACF,QAAQ,CAAC,SAAS,EAAE;QAClB,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;QAC7C,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC;QACjD,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC;QAChD,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC;KACjD,CAAC;CACH,CAAC;AAMF,eAAO,MAAM,QAAQ,SAAc,CAAC;AAoDpC,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;CAC5C,CAAC;AAgMF,MAAM,MAAM,YAAY,GAAG;IAIzB,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;CACtD,CAAC;AAEF,eAAO,MAAM,aAAa,aACd,QAAQ,cACP,aAAa,CAAC,aAAa,CAAC,YAC9B,YAAY,KACpB,YAmvBF,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import * as Result from "effect/Result";
|
|
2
|
+
import type { ManifestPath } from "../domain/manifest-location.js";
|
|
3
|
+
export type ExpandIssue = {
|
|
4
|
+
readonly path: ManifestPath;
|
|
5
|
+
readonly detail: string;
|
|
6
|
+
};
|
|
7
|
+
export type Substitution = {
|
|
8
|
+
readonly at: ManifestPath;
|
|
9
|
+
readonly ref: ManifestPath;
|
|
10
|
+
readonly name: string;
|
|
11
|
+
readonly overrides: ReadonlySet<string>;
|
|
12
|
+
};
|
|
13
|
+
export type ExpandedManifest = {
|
|
14
|
+
readonly value: unknown;
|
|
15
|
+
readonly substitutions: ReadonlyArray<Substitution>;
|
|
16
|
+
};
|
|
17
|
+
export type Origin = {
|
|
18
|
+
readonly path: ManifestPath;
|
|
19
|
+
readonly via: ReadonlyArray<{
|
|
20
|
+
readonly at: ManifestPath;
|
|
21
|
+
readonly name: string;
|
|
22
|
+
}>;
|
|
23
|
+
};
|
|
24
|
+
export declare const expandManifest: (input: unknown) => Result.Result<ExpandedManifest, ExpandIssue>;
|
|
25
|
+
export declare const originOf: (substitutions: ReadonlyArray<Substitution>, path: ManifestPath) => Origin;
|
|
26
|
+
export declare const fragmentOf: (substitutions: ReadonlyArray<Substitution>, path: ManifestPath) => string | undefined;
|
|
27
|
+
//# sourceMappingURL=expand.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expand.d.ts","sourceRoot":"","sources":["../../../src/manifest/expand.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAcnE,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB,CAAC;AAMF,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,CAAC,EAAE,EAAE,YAAY,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACzC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;CACrD,CAAC;AAMF,MAAM,MAAM,MAAM,GAAG;IACnB,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,GAAG,EAAE,aAAa,CAAC;QAAE,QAAQ,CAAC,EAAE,EAAE,YAAY,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACnF,CAAC;AAQF,eAAO,MAAM,cAAc,UAAW,OAAO,KAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,EAAE,WAAW,CA6F1F,CAAC;AAMF,eAAO,MAAM,QAAQ,kBACJ,aAAa,CAAC,YAAY,CAAC,QACpC,YAAY,KACjB,MAmBF,CAAC;AAMF,eAAO,MAAM,UAAU,kBACN,aAAa,CAAC,YAAY,CAAC,QACpC,YAAY,KACjB,MAAM,GAAG,SAA2D,CAAC"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import type { Manifest } from "./manifest.js";
|
|
2
|
+
export type InferredTarget = {
|
|
3
|
+
readonly kind: "local";
|
|
4
|
+
readonly path: string;
|
|
5
|
+
} | {
|
|
6
|
+
readonly kind: "external";
|
|
7
|
+
readonly package: string;
|
|
8
|
+
} | {
|
|
9
|
+
readonly kind: "builtin";
|
|
10
|
+
readonly path: string;
|
|
11
|
+
};
|
|
12
|
+
export type InferPackage = {
|
|
13
|
+
readonly root: string;
|
|
14
|
+
readonly source: string | null;
|
|
15
|
+
};
|
|
16
|
+
export type InferInput = {
|
|
17
|
+
readonly files: ReadonlyArray<string>;
|
|
18
|
+
readonly targetsOf: (file: string) => ReadonlyArray<InferredTarget>;
|
|
19
|
+
readonly roots: ReadonlyArray<string>;
|
|
20
|
+
readonly packages: ReadonlyArray<InferPackage>;
|
|
21
|
+
readonly depth: number;
|
|
22
|
+
};
|
|
23
|
+
export type Candidate = {
|
|
24
|
+
readonly parent: string;
|
|
25
|
+
readonly members: ReadonlyArray<string>;
|
|
26
|
+
readonly sharedFolders: ReadonlyArray<string>;
|
|
27
|
+
readonly sharedStereotypes: ReadonlyArray<string>;
|
|
28
|
+
readonly capture: string;
|
|
29
|
+
readonly crossEdges: number;
|
|
30
|
+
readonly crossReach: string | null;
|
|
31
|
+
};
|
|
32
|
+
export type Generalization = {
|
|
33
|
+
readonly parent: string;
|
|
34
|
+
readonly members: ReadonlyArray<string>;
|
|
35
|
+
readonly capture: string;
|
|
36
|
+
readonly crossReach: string | null;
|
|
37
|
+
};
|
|
38
|
+
export type InferOptions = {
|
|
39
|
+
readonly generalize: ReadonlyArray<Generalization>;
|
|
40
|
+
readonly collapse: boolean;
|
|
41
|
+
readonly date: string;
|
|
42
|
+
readonly resolve: Manifest["resolve"];
|
|
43
|
+
readonly aliases?: Readonly<Record<string, string>> | undefined;
|
|
44
|
+
readonly baseline: string;
|
|
45
|
+
readonly hasCycles: boolean;
|
|
46
|
+
};
|
|
47
|
+
export type Inferred = {
|
|
48
|
+
readonly manifest: Manifest;
|
|
49
|
+
readonly nodes: number;
|
|
50
|
+
readonly files: number;
|
|
51
|
+
};
|
|
52
|
+
export declare const singularOf: (plural: string) => string;
|
|
53
|
+
export declare const candidatesOf: (input: InferInput, generalize?: ReadonlyArray<Generalization>) => ReadonlyArray<Candidate>;
|
|
54
|
+
export declare const inferManifest: (input: InferInput, options: InferOptions) => Inferred;
|
|
55
|
+
//# sourceMappingURL=infer.d.ts.map
|