@goodbones/core 0.1.0-beta.1 → 0.1.0-beta.2

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 (37) hide show
  1. package/build/dts/domain/manifest-location.d.ts +7 -0
  2. package/build/dts/domain/manifest-location.d.ts.map +1 -0
  3. package/build/dts/index.d.ts +5 -2
  4. package/build/dts/index.d.ts.map +1 -1
  5. package/build/dts/infrastructure/manifest-file.d.ts +10 -2
  6. package/build/dts/infrastructure/manifest-file.d.ts.map +1 -1
  7. package/build/dts/load/policy.d.ts +2 -0
  8. package/build/dts/load/policy.d.ts.map +1 -1
  9. package/build/dts/manifest/expand.d.ts +26 -0
  10. package/build/dts/manifest/expand.d.ts.map +1 -0
  11. package/build/dts/manifest/json-schema.d.ts +8 -0
  12. package/build/dts/manifest/json-schema.d.ts.map +1 -0
  13. package/build/dts/manifest/manifest.d.ts +5 -1
  14. package/build/dts/manifest/manifest.d.ts.map +1 -1
  15. package/build/esm/domain/manifest-location.js +6 -0
  16. package/build/esm/domain/manifest-location.js.map +1 -0
  17. package/build/esm/index.js +3 -1
  18. package/build/esm/index.js.map +1 -1
  19. package/build/esm/infrastructure/manifest-file.js +144 -7
  20. package/build/esm/infrastructure/manifest-file.js.map +1 -1
  21. package/build/esm/load/policy.js +1 -1
  22. package/build/esm/load/policy.js.map +1 -1
  23. package/build/esm/manifest/expand.js +111 -0
  24. package/build/esm/manifest/expand.js.map +1 -0
  25. package/build/esm/manifest/json-schema.js +76 -0
  26. package/build/esm/manifest/json-schema.js.map +1 -0
  27. package/build/esm/manifest/manifest.js +69 -4
  28. package/build/esm/manifest/manifest.js.map +1 -1
  29. package/package.json +7 -3
  30. package/schema/architecture.schema.json +1089 -0
  31. package/src/domain/manifest-location.ts +19 -0
  32. package/src/index.ts +22 -1
  33. package/src/infrastructure/manifest-file.ts +184 -8
  34. package/src/load/policy.ts +5 -1
  35. package/src/manifest/expand.ts +174 -0
  36. package/src/manifest/json-schema.ts +99 -0
  37. package/src/manifest/manifest.ts +110 -9
@@ -0,0 +1,76 @@
1
+ import * as Schema from "effect/Schema";
2
+ import { Manifest } from "./manifest.js";
3
+ // The manifest's shape as a JSON Schema, generated from the same codec that
4
+ // decodes it, so the two cannot disagree. A YAML file names it in a header
5
+ // comment and a JSON file in a `$schema` key; either way the editor completes
6
+ // keys and flags a misspelled one before the loader ever runs.
7
+ //
8
+ // Two things the codec does not know are added here: the `defs` map, and the
9
+ // `{ use }` reference form that may stand in for any object — both belong to
10
+ // the expansion pass that runs before decoding.
11
+ export const MANIFEST_SCHEMA_ID = "https://dataquail.github.io/goodbones/schema/architecture.schema.json";
12
+ const entriesOf = (value) => Object.entries(value);
13
+ const isObject = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
14
+ // The generator names the recursive node after its own internal wrapper. A
15
+ // stable name is what a `$ref` in an error message or a docs page can point at.
16
+ const DEFINITION_NAMES = { Suspend_: "ManifestNode" };
17
+ const USE_REFERENCE = "#/$defs/Use";
18
+ const Use = {
19
+ type: "object",
20
+ description: "A reference to a fragment under the top-level `defs`. Replaced by a copy of the fragment before the manifest is decoded; any other key written beside `use` overrides the fragment's key of the same name.",
21
+ properties: { use: { type: "string" } },
22
+ required: ["use"],
23
+ };
24
+ // Every object schema below the root becomes "this object, or a `use` of a
25
+ // fragment shaped like it". The expansion pass replaces a reference wherever
26
+ // it stands, so the schema admits one wherever an object may stand.
27
+ const admitReferences = (value) => {
28
+ if (Array.isArray(value))
29
+ return value.map(admitReferences);
30
+ if (!isObject(value))
31
+ return value;
32
+ const rebuilt = {};
33
+ for (const [key, entry] of entriesOf(value)) {
34
+ if (key === "$ref" && typeof entry === "string") {
35
+ const name = entry.replace(/^#\/\$defs\//, "");
36
+ rebuilt[key] = `#/$defs/${DEFINITION_NAMES[name] ?? name}`;
37
+ }
38
+ else {
39
+ rebuilt[key] = admitReferences(entry);
40
+ }
41
+ }
42
+ const isObjectSchema = rebuilt.type === "object" && "properties" in rebuilt;
43
+ return isObjectSchema ? { anyOf: [{ $ref: USE_REFERENCE }, rebuilt] } : rebuilt;
44
+ };
45
+ export const manifestJsonSchema = () => {
46
+ const generated = Schema.toJsonSchemaDocument(Manifest);
47
+ const { properties, ...root } = generated.schema;
48
+ if (properties === undefined || !isObject(properties)) {
49
+ throw new Error("the manifest schema generated with no properties");
50
+ }
51
+ const definitions = {};
52
+ for (const [name, definition] of entriesOf(generated.definitions)) {
53
+ definitions[DEFINITION_NAMES[name] ?? name] = admitReferences(definition);
54
+ }
55
+ return {
56
+ $schema: "https://json-schema.org/draft/2020-12/schema",
57
+ $id: MANIFEST_SCHEMA_ID,
58
+ title: "Architecture manifest",
59
+ description: "One manifest of a repository's architecture, read by @goodbones/cli and @goodbones/oxlint. See https://dataquail.github.io/goodbones/architecture-rules/manifest/.",
60
+ ...root,
61
+ properties: {
62
+ $schema: {
63
+ type: "string",
64
+ description: "For editors. Ignored by the loader.",
65
+ },
66
+ defs: {
67
+ type: "object",
68
+ description: 'Named fragments, referenced elsewhere in the manifest as `{ use: "<name>" }`. A fragment may itself contain `use`.',
69
+ additionalProperties: true,
70
+ },
71
+ ...Object.fromEntries(entriesOf(properties).map(([key, value]) => [key, admitReferences(value)])),
72
+ },
73
+ $defs: { ...definitions, Use },
74
+ };
75
+ };
76
+ //# sourceMappingURL=json-schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-schema.js","sourceRoot":"","sources":["../../../src/manifest/json-schema.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,9 @@
1
1
  import * as Result from "effect/Result";
2
2
  import * as Schema from "effect/Schema";
3
+ import * as SchemaIssue from "effect/SchemaIssue";
3
4
  import { DeclarationKind, ResolveConfig } from "../domain/architecture-config.js";
4
5
  import { ConfigInvalid } from "../domain/architecture-error.js";
6
+ import { expandManifest, originOf } from "./expand.js";
5
7
  // A manifest is a tree of nodes keyed by path pattern, where everything the
6
8
  // architecture says about a part of the tree is written at that part of the tree.
7
9
  // A node is a folder (it has `children` and/or `files`) or a file (its key names
@@ -220,7 +222,12 @@ export const Manifest = Schema.Struct({
220
222
  tree: Schema.Record(Schema.String, ManifestNodeSchema),
221
223
  });
222
224
  export const globsOf = (globs) => typeof globs === "string" ? [globs] : globs;
223
- const decode = Schema.decodeUnknownResult(Manifest);
225
+ // Every issue, not the first: a manifest is edited by hand, and the reader
226
+ // fixing one line wants to know about the other three. A key the schema does
227
+ // not declare is refused rather than dropped — a misspelled `matchNot` that
228
+ // decoded to nothing would be a rule quietly enforcing less than it says.
229
+ const decode = Schema.decodeUnknownResult(Manifest, { errors: "all", onExcessProperty: "error" });
230
+ const flatten = SchemaIssue.makeFormatterStandardSchemaV1();
224
231
  const isRecord = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
225
232
  const isList = (value) => Array.isArray(value);
226
233
  // The three resolver options that used to sit on `resolve` itself, when every
@@ -295,9 +302,67 @@ const normalizeLegacyMembers = (input) => {
295
302
  const tree = Object.fromEntries(Object.entries(input.tree).map(([key, value]) => [key, node(key, value)]));
296
303
  return { input: { ...input, tree }, notices };
297
304
  };
298
- export const decodeManifest = (configPath, input) => {
299
- const resolve = normalizeLegacyResolve(input);
305
+ const isIdentifier = (key) => /^[A-Za-z_$][\w$]*$/.test(key);
306
+ // `tree["~/core/"].members[0].subject` dotted where a key reads as a name,
307
+ // bracketed where it does not, so a node key that is a path pattern stays
308
+ // legible.
309
+ const renderPath = (path) => path.length === 0
310
+ ? "(root)"
311
+ : path
312
+ .map((segment, index) => {
313
+ if (typeof segment === "number")
314
+ return `[${String(segment)}]`;
315
+ const key = String(segment);
316
+ if (isIdentifier(key))
317
+ return index === 0 ? key : `.${key}`;
318
+ return `[${JSON.stringify(key)}]`;
319
+ })
320
+ .join("");
321
+ const fileLabelOf = (configPath) => configPath.split(/[\\/]/).at(-1) ?? configPath;
322
+ const positionOf = (file, locate, path) => {
323
+ const found = locate?.(path) ?? null;
324
+ return found === null ? null : `${file}:${String(found.line)}:${String(found.column)}`;
325
+ };
326
+ // One line per issue: where in the file, which path, what was wrong — and,
327
+ // when the value came in through a `use`, the reference that pulled it in,
328
+ // since the fragment's own line may sit far from where the reader is looking.
329
+ const describeIssue = (configPath, locate, substitutions, path, detail) => {
330
+ const file = fileLabelOf(configPath);
331
+ const origin = originOf(substitutions, path);
332
+ const at = positionOf(file, locate, origin.path);
333
+ const via = origin.via.map(({ at: ref, name }) => {
334
+ const position = positionOf(file, locate, ref);
335
+ return `via \`use: ${JSON.stringify(name)}\`${position === null ? "" : ` at ${position}`}`;
336
+ });
337
+ return (` ${at === null ? "" : `${at} `}${renderPath(origin.path)}: ${detail}` +
338
+ (via.length === 0 ? "" : ` (${via.join(", ")})`));
339
+ };
340
+ // The standard-schema formatter flattens the issue tree to `{ path, message }`
341
+ // pairs; a path segment may arrive wrapped as `{ key }`.
342
+ const pathOf = (issue) => (issue.path ?? []).map((segment) => (typeof segment === "object" ? segment.key : segment));
343
+ export const decodeManifest = (configPath, input, options = {}) => {
344
+ const expanded = expandManifest(input);
345
+ if (Result.isFailure(expanded)) {
346
+ return Result.fail(new ConfigInvalid({
347
+ configPath,
348
+ detail: "the manifest does not expand:\n" +
349
+ describeIssue(configPath, options.locate, [], expanded.failure.path, expanded.failure.detail),
350
+ }));
351
+ }
352
+ const { substitutions, value } = expanded.success;
353
+ const resolve = normalizeLegacyResolve(value);
300
354
  const members = normalizeLegacyMembers(resolve.input);
301
- return Result.map(Result.mapError(decode(members.input), (issue) => new ConfigInvalid({ configPath, detail: String(issue) })), (manifest) => ({ manifest, notices: [...resolve.notices, ...members.notices] }));
355
+ const decoded = decode(members.input);
356
+ if (Result.isFailure(decoded)) {
357
+ const lines = flatten(decoded.failure.issue).issues.map((issue) => describeIssue(configPath, options.locate, substitutions, pathOf(issue), issue.message));
358
+ return Result.fail(new ConfigInvalid({
359
+ configPath,
360
+ detail: `the manifest does not decode:\n${lines.join("\n")}`,
361
+ }));
362
+ }
363
+ return Result.succeed({
364
+ manifest: decoded.success,
365
+ notices: [...resolve.notices, ...members.notices],
366
+ });
302
367
  };
303
368
  //# sourceMappingURL=manifest.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../../src/manifest/manifest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../../src/manifest/manifest.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@goodbones/core",
3
- "version": "0.1.0-beta.1",
3
+ "version": "0.1.0-beta.2",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "description": "Architecture policy as one manifest of your repository, language-agnostic: the manifest schema, the evaluators for imports, exports, members, surface, structure and the import graph, the ports a language pack implements, and the loader that turns a manifest into a policy every rule of which has proven it can fire.",
@@ -33,20 +33,24 @@
33
33
  "types": "./build/dts/testing.d.ts",
34
34
  "default": "./build/esm/testing.js"
35
35
  },
36
+ "./schema/architecture.schema.json": "./schema/architecture.schema.json",
36
37
  "./package.json": "./package.json"
37
38
  },
38
39
  "types": "./build/dts/index.d.ts",
39
40
  "files": [
40
41
  "build/dts",
41
42
  "build/esm",
43
+ "schema",
42
44
  "src",
43
45
  "!src/**/*.test.ts"
44
46
  ],
45
47
  "dependencies": {
46
- "effect": "4.0.0-beta.94"
48
+ "effect": "4.0.0-beta.94",
49
+ "yaml": "^2.9.0"
47
50
  },
48
51
  "devDependencies": {
49
- "@types/node": "^25.9.4"
52
+ "@types/node": "^25.9.4",
53
+ "ajv": "^8.20.0"
50
54
  },
51
55
  "nx": {
52
56
  "includedScripts": []