@beignet/cli 0.0.41 → 0.0.42
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +10 -0
- package/README.md +77 -21
- package/dist/choices.d.ts +18 -0
- package/dist/choices.d.ts.map +1 -1
- package/dist/choices.js +35 -0
- package/dist/choices.js.map +1 -1
- package/dist/db.d.ts +18 -7
- package/dist/db.d.ts.map +1 -1
- package/dist/db.js +20 -7
- package/dist/db.js.map +1 -1
- package/dist/doctor-fixes.d.ts +64 -0
- package/dist/doctor-fixes.d.ts.map +1 -0
- package/dist/doctor-fixes.js +142 -0
- package/dist/doctor-fixes.js.map +1 -0
- package/dist/explain.d.ts +3 -1
- package/dist/explain.d.ts.map +1 -1
- package/dist/explain.js +136 -42
- package/dist/explain.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +92 -25
- package/dist/index.js.map +1 -1
- package/dist/inspect.d.ts +33 -9
- package/dist/inspect.d.ts.map +1 -1
- package/dist/inspect.js +353 -116
- package/dist/inspect.js.map +1 -1
- package/dist/lib.d.ts +6 -2
- package/dist/lib.d.ts.map +1 -1
- package/dist/lib.js +3 -2
- package/dist/lib.js.map +1 -1
- package/dist/make/shared.js +3 -3
- package/dist/make/shared.js.map +1 -1
- package/dist/mcp.d.ts.map +1 -1
- package/dist/mcp.js +121 -13
- package/dist/mcp.js.map +1 -1
- package/dist/templates/agents.d.ts.map +1 -1
- package/dist/templates/agents.js +26 -10
- package/dist/templates/agents.js.map +1 -1
- package/dist/templates/base.d.ts.map +1 -1
- package/dist/templates/base.js +3 -3
- package/dist/templates/base.js.map +1 -1
- package/dist/templates/shared.d.ts +2 -1
- package/dist/templates/shared.d.ts.map +1 -1
- package/dist/templates/shared.js +7 -4
- package/dist/templates/shared.js.map +1 -1
- package/package.json +3 -2
- package/skills/app-structure/SKILL.md +34 -10
- package/src/choices.ts +57 -0
- package/src/db.ts +45 -15
- package/src/doctor-fixes.ts +252 -0
- package/src/explain.ts +151 -43
- package/src/index.ts +130 -35
- package/src/inspect.ts +497 -145
- package/src/lib.ts +28 -1
- package/src/make/shared.ts +3 -3
- package/src/mcp.ts +187 -13
- package/src/templates/agents.ts +26 -10
- package/src/templates/base.ts +3 -2
- package/src/templates/shared.ts +14 -6
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import { createHash } from "node:crypto";
|
|
2
|
+
import { mkdir, readFile, rm, writeFile } from "node:fs/promises";
|
|
3
|
+
import path from "node:path";
|
|
4
|
+
import { createTwoFilesPatch } from "diff";
|
|
5
|
+
import { doctorFixOperationIds } from "./choices.js";
|
|
6
|
+
export { doctorFixOperationIds } from "./choices.js";
|
|
7
|
+
export function planDoctorFixFileChange(options) {
|
|
8
|
+
const oldName = options.before === undefined ? "/dev/null" : `a/${options.file}`;
|
|
9
|
+
const newName = `b/${options.file}`;
|
|
10
|
+
return {
|
|
11
|
+
file: options.file,
|
|
12
|
+
kind: options.before === undefined ? "create" : "update",
|
|
13
|
+
beforeHash: options.before === undefined ? null : contentHash(options.before),
|
|
14
|
+
afterHash: contentHash(options.after),
|
|
15
|
+
patch: createTwoFilesPatch(oldName, newName, options.before ?? "", options.after, "", "", { context: 3 }),
|
|
16
|
+
before: options.before,
|
|
17
|
+
after: options.after,
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
export function createDoctorFixPlan(options) {
|
|
21
|
+
const operationOrder = new Map(doctorFixOperationIds.map((id, index) => [id, index]));
|
|
22
|
+
const operations = [...options.operations].sort((left, right) => (operationOrder.get(left.id) ?? Number.MAX_SAFE_INTEGER) -
|
|
23
|
+
(operationOrder.get(right.id) ?? Number.MAX_SAFE_INTEGER));
|
|
24
|
+
const fingerprint = {
|
|
25
|
+
targetDir: path.resolve(options.targetDir),
|
|
26
|
+
operations: operations.map((operation) => ({
|
|
27
|
+
id: operation.id,
|
|
28
|
+
changes: operation.changes.map((change) => ({
|
|
29
|
+
file: change.file,
|
|
30
|
+
beforeHash: change.beforeHash,
|
|
31
|
+
afterHash: change.afterHash,
|
|
32
|
+
})),
|
|
33
|
+
})),
|
|
34
|
+
};
|
|
35
|
+
return {
|
|
36
|
+
schemaVersion: 1,
|
|
37
|
+
targetDir: path.resolve(options.targetDir),
|
|
38
|
+
strict: options.strict,
|
|
39
|
+
planId: contentHash(JSON.stringify(fingerprint)),
|
|
40
|
+
operations,
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
export function publicDoctorFixPlan(plan) {
|
|
44
|
+
return {
|
|
45
|
+
...plan,
|
|
46
|
+
operations: plan.operations.map((operation) => ({
|
|
47
|
+
id: operation.id,
|
|
48
|
+
fixes: operation.fixes,
|
|
49
|
+
changes: operation.changes.map(({ before: _before, after: _after, ...change }) => change),
|
|
50
|
+
})),
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
export async function applyPlannedDoctorFixes(plan, fixIds, hooks = {}) {
|
|
54
|
+
const requested = fixIds ? new Set(fixIds) : undefined;
|
|
55
|
+
const operations = requested
|
|
56
|
+
? plan.operations.filter((operation) => requested.has(operation.id))
|
|
57
|
+
: plan.operations;
|
|
58
|
+
if (requested) {
|
|
59
|
+
const available = new Set(plan.operations.map((operation) => operation.id));
|
|
60
|
+
const missing = [...requested].filter((id) => !available.has(id));
|
|
61
|
+
if (missing.length > 0) {
|
|
62
|
+
throw new Error(`Doctor fix operations are not available in this plan: ${missing.join(", ")}. Run beignet doctor --fix --dry-run again.`);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
const changes = operations.flatMap((operation) => operation.changes);
|
|
66
|
+
const duplicateFiles = duplicateValues(changes.map((change) => change.file));
|
|
67
|
+
if (duplicateFiles.length > 0) {
|
|
68
|
+
throw new Error(`Doctor fix operations overlap on ${duplicateFiles.join(", ")}; no files were changed.`);
|
|
69
|
+
}
|
|
70
|
+
for (const change of changes) {
|
|
71
|
+
const current = await readOptionalFile(path.join(plan.targetDir, change.file));
|
|
72
|
+
const currentHash = current === undefined ? null : contentHash(current);
|
|
73
|
+
if (currentHash !== change.beforeHash) {
|
|
74
|
+
throw new Error(`Doctor fix plan is stale because ${change.file} changed. No files were changed; run beignet doctor --fix --dry-run again.`);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
const attempted = [];
|
|
78
|
+
try {
|
|
79
|
+
for (const [index, change] of changes.entries()) {
|
|
80
|
+
attempted.push(change);
|
|
81
|
+
await hooks.beforeWrite?.(change, index);
|
|
82
|
+
const destination = path.join(plan.targetDir, change.file);
|
|
83
|
+
await mkdir(path.dirname(destination), { recursive: true });
|
|
84
|
+
await writeFile(destination, change.after);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
catch (error) {
|
|
88
|
+
const rollbackErrors = [];
|
|
89
|
+
for (const change of attempted.reverse()) {
|
|
90
|
+
const destination = path.join(plan.targetDir, change.file);
|
|
91
|
+
try {
|
|
92
|
+
if (change.before === undefined) {
|
|
93
|
+
await rm(destination, { force: true });
|
|
94
|
+
}
|
|
95
|
+
else {
|
|
96
|
+
await mkdir(path.dirname(destination), { recursive: true });
|
|
97
|
+
await writeFile(destination, change.before);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
catch (rollbackError) {
|
|
101
|
+
rollbackErrors.push(rollbackError instanceof Error
|
|
102
|
+
? rollbackError.message
|
|
103
|
+
: String(rollbackError));
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
107
|
+
throw new Error(rollbackErrors.length === 0
|
|
108
|
+
? `Doctor fix application failed and was rolled back: ${message}`
|
|
109
|
+
: `Doctor fix application failed: ${message}. Rollback also failed: ${rollbackErrors.join("; ")}`, { cause: error });
|
|
110
|
+
}
|
|
111
|
+
return {
|
|
112
|
+
schemaVersion: 1,
|
|
113
|
+
targetDir: plan.targetDir,
|
|
114
|
+
planId: plan.planId,
|
|
115
|
+
operationIds: operations.map((operation) => operation.id),
|
|
116
|
+
fixes: operations.flatMap((operation) => operation.fixes),
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
function contentHash(value) {
|
|
120
|
+
return createHash("sha256").update(value).digest("hex");
|
|
121
|
+
}
|
|
122
|
+
async function readOptionalFile(file) {
|
|
123
|
+
try {
|
|
124
|
+
return await readFile(file, "utf8");
|
|
125
|
+
}
|
|
126
|
+
catch (error) {
|
|
127
|
+
if (error.code === "ENOENT")
|
|
128
|
+
return undefined;
|
|
129
|
+
throw error;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
function duplicateValues(values) {
|
|
133
|
+
const seen = new Set();
|
|
134
|
+
const duplicates = new Set();
|
|
135
|
+
for (const value of values) {
|
|
136
|
+
if (seen.has(value))
|
|
137
|
+
duplicates.add(value);
|
|
138
|
+
seen.add(value);
|
|
139
|
+
}
|
|
140
|
+
return [...duplicates].sort();
|
|
141
|
+
}
|
|
142
|
+
//# sourceMappingURL=doctor-fixes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"doctor-fixes.js","sourceRoot":"","sources":["../src/doctor-fixes.ts"],"names":[],"mappings":"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"}
|
package/dist/explain.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type AppMapEdge, type AppMapNodeKind, type AppMapNodeStatus, type AppMapResult, type AppMapSource } from "./app-map.js";
|
|
2
2
|
/** Targets supported by `beignet explain` and the MCP `explain` tool. */
|
|
3
|
-
export declare const explainTargetKinds: readonly ["feature", "route", "provider", "diagnostic"];
|
|
3
|
+
export declare const explainTargetKinds: readonly ["feature", "contract", "route", "route-group", "use-case", "policy", "ability", "event", "listener", "job", "schedule", "task", "notification", "upload", "agent-capability", "registry", "port", "provider", "table", "openapi", "entrypoint", "test", "diagnostic"];
|
|
4
4
|
/** One supported explanation target kind. */
|
|
5
5
|
export type ExplainTargetKind = (typeof explainTargetKinds)[number];
|
|
6
6
|
/** Options for resolving one app concept into a deterministic explanation. */
|
|
@@ -14,6 +14,8 @@ export type ExplainTarget = {
|
|
|
14
14
|
kind: ExplainTargetKind;
|
|
15
15
|
id: string;
|
|
16
16
|
name: string;
|
|
17
|
+
runtimeName?: string;
|
|
18
|
+
feature?: string;
|
|
17
19
|
source?: AppMapSource;
|
|
18
20
|
status?: AppMapNodeStatus;
|
|
19
21
|
details?: Record<string, unknown>;
|
package/dist/explain.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"explain.d.ts","sourceRoot":"","sources":["../src/explain.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,UAAU,EAEf,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,YAAY,EAGlB,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"explain.d.ts","sourceRoot":"","sources":["../src/explain.ts"],"names":[],"mappings":"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"}
|
package/dist/explain.js
CHANGED
|
@@ -1,11 +1,7 @@
|
|
|
1
1
|
import { mapApp, projectAppMap, } from "./app-map.js";
|
|
2
|
+
import { appMapNodeKinds } from "./app-map-schema.js";
|
|
2
3
|
/** Targets supported by `beignet explain` and the MCP `explain` tool. */
|
|
3
|
-
export const explainTargetKinds = [
|
|
4
|
-
"feature",
|
|
5
|
-
"route",
|
|
6
|
-
"provider",
|
|
7
|
-
"diagnostic",
|
|
8
|
-
];
|
|
4
|
+
export const explainTargetKinds = [...appMapNodeKinds, "diagnostic"];
|
|
9
5
|
/** Explain one source-backed Beignet app concept without generating advice. */
|
|
10
6
|
export async function explainApp(options) {
|
|
11
7
|
const targetText = options.target.trim();
|
|
@@ -139,7 +135,10 @@ function resolveTargetNode(appMap, kind, target) {
|
|
|
139
135
|
const nodeKind = kind;
|
|
140
136
|
const candidates = appMap.nodes.filter((node) => node.kind === nodeKind);
|
|
141
137
|
const query = normalized(target);
|
|
142
|
-
|
|
138
|
+
const idMatches = candidates.filter((node) => normalized(node.id) === query);
|
|
139
|
+
if (idMatches.length === 1)
|
|
140
|
+
return idMatches[0];
|
|
141
|
+
let matches = candidates.filter((node) => aliasesForNode(node).some((alias) => normalized(alias) === query && normalized(node.id) !== query));
|
|
143
142
|
if (kind === "provider" && matches.length === 0) {
|
|
144
143
|
const portIds = new Set(appMap.nodes
|
|
145
144
|
.filter((node) => node.kind === "port" &&
|
|
@@ -157,16 +156,21 @@ function resolveTargetNode(appMap, kind, target) {
|
|
|
157
156
|
if (matches.length > 1) {
|
|
158
157
|
throw new Error(`The ${kind} target "${target}" is ambiguous. Matches: ${matches.map((node) => node.id).join(", ")}.`);
|
|
159
158
|
}
|
|
160
|
-
const available = candidates
|
|
161
|
-
.map((node) => node.name)
|
|
159
|
+
const available = [...new Set(candidates.map(canonicalNodeSelector))]
|
|
162
160
|
.sort()
|
|
163
161
|
.slice(0, 20);
|
|
164
|
-
throw new Error(`Could not explain ${kind} "${target}". ${available.length > 0 ? `Available ${kind}
|
|
162
|
+
throw new Error(`Could not explain ${kind} "${target}". ${available.length > 0 ? `Available ${kind} targets: ${available.join(", ")}.` : `This app has no mapped ${kind} targets.`}`);
|
|
163
|
+
}
|
|
164
|
+
function canonicalNodeSelector(node) {
|
|
165
|
+
return node.runtimeName ?? node.name;
|
|
165
166
|
}
|
|
166
167
|
function aliasesForNode(node) {
|
|
167
|
-
const aliases = [node.id, node.name];
|
|
168
|
+
const aliases = [node.id, node.name, node.source.file];
|
|
168
169
|
if (node.runtimeName)
|
|
169
170
|
aliases.push(node.runtimeName);
|
|
171
|
+
if (node.source.exportName) {
|
|
172
|
+
aliases.push(node.source.exportName, `${node.source.file}#${node.source.exportName}`);
|
|
173
|
+
}
|
|
170
174
|
if (node.id.includes("#"))
|
|
171
175
|
aliases.push(node.id.slice(node.id.lastIndexOf("#") + 1));
|
|
172
176
|
if (node.kind === "route" && typeof node.details?.path === "string") {
|
|
@@ -205,6 +209,8 @@ function nodeTarget(kind, node) {
|
|
|
205
209
|
kind,
|
|
206
210
|
id: node.id,
|
|
207
211
|
name: node.name,
|
|
212
|
+
...(node.runtimeName ? { runtimeName: node.runtimeName } : {}),
|
|
213
|
+
...(node.feature ? { feature: node.feature } : {}),
|
|
208
214
|
source: node.source,
|
|
209
215
|
...(node.status ? { status: node.status } : {}),
|
|
210
216
|
...(node.details ? { details: node.details } : {}),
|
|
@@ -404,15 +410,7 @@ function suggestedFilesFromEvidence(evidence) {
|
|
|
404
410
|
return [...files.values()];
|
|
405
411
|
}
|
|
406
412
|
function suggestedActions(target, findings, targetDir) {
|
|
407
|
-
const inspectCommand = target
|
|
408
|
-
? `beignet map --feature ${target.name} --json`
|
|
409
|
-
: target.kind === "route"
|
|
410
|
-
? "beignet routes --json"
|
|
411
|
-
: target.kind === "provider"
|
|
412
|
-
? "beignet provider audit --json"
|
|
413
|
-
: findings.some((finding) => finding.source === "lint")
|
|
414
|
-
? "beignet lint --json"
|
|
415
|
-
: "beignet doctor --strict --json";
|
|
413
|
+
const inspectCommand = inspectCommandForTarget(target, findings);
|
|
416
414
|
const actions = [
|
|
417
415
|
{
|
|
418
416
|
kind: "inspect",
|
|
@@ -436,6 +434,29 @@ function suggestedActions(target, findings, targetDir) {
|
|
|
436
434
|
});
|
|
437
435
|
return actions;
|
|
438
436
|
}
|
|
437
|
+
function inspectCommandForTarget(target, findings) {
|
|
438
|
+
if (target.kind === "feature") {
|
|
439
|
+
return `beignet map --feature ${target.name} --json`;
|
|
440
|
+
}
|
|
441
|
+
if (target.kind === "contract" ||
|
|
442
|
+
target.kind === "route" ||
|
|
443
|
+
target.kind === "route-group" ||
|
|
444
|
+
target.kind === "openapi") {
|
|
445
|
+
return "beignet routes --json";
|
|
446
|
+
}
|
|
447
|
+
if (target.kind === "port" || target.kind === "provider") {
|
|
448
|
+
return "beignet provider audit --json";
|
|
449
|
+
}
|
|
450
|
+
if (target.kind === "diagnostic") {
|
|
451
|
+
return findings.every((finding) => finding.source === "lint")
|
|
452
|
+
? "beignet lint --json"
|
|
453
|
+
: "beignet doctor --strict --json";
|
|
454
|
+
}
|
|
455
|
+
if (target.feature) {
|
|
456
|
+
return `beignet map --feature ${target.feature} --json`;
|
|
457
|
+
}
|
|
458
|
+
return `beignet map --kind ${target.kind} --json`;
|
|
459
|
+
}
|
|
439
460
|
function providerRegistrationSources(target) {
|
|
440
461
|
if (target.kind !== "provider")
|
|
441
462
|
return [];
|
|
@@ -460,29 +481,102 @@ function explainSummary(target, nodes, edges, findings) {
|
|
|
460
481
|
}
|
|
461
482
|
return `${target.name} is ${target.status ?? "mapped"} with ${countLabel(edges.length, "relationship")}, ${countLabel(fileCount, "source")}, and ${countLabel(findings.length, "relevant finding")}.`;
|
|
462
483
|
}
|
|
484
|
+
const conventionsByTargetKind = {
|
|
485
|
+
feature: [
|
|
486
|
+
"Feature-owned contracts, use cases, policies, ports, workflows, clients, components, and tests stay under features/<feature>/.",
|
|
487
|
+
"Feature route groups and workflow artifacts register through the central server entrypoints.",
|
|
488
|
+
],
|
|
489
|
+
contract: [
|
|
490
|
+
"Contracts own HTTP method, path, schemas, responses, metadata, and route errors.",
|
|
491
|
+
"Contracts stay transport-focused and bind to application behavior through feature routes.",
|
|
492
|
+
],
|
|
493
|
+
route: [
|
|
494
|
+
"Routes bind contracts to use cases and policies without importing concrete infrastructure.",
|
|
495
|
+
"Feature route groups compose centrally in server/routes.ts and runtime route adapters stay thin.",
|
|
496
|
+
],
|
|
497
|
+
"route-group": [
|
|
498
|
+
"Feature route groups are declared in features/<feature>/routes.ts and composed centrally in server/routes.ts.",
|
|
499
|
+
"Route groups bind contracts to use cases while preserving the app's dependency direction.",
|
|
500
|
+
],
|
|
501
|
+
"use-case": [
|
|
502
|
+
"Use cases own validated application workflows and may depend on ports, policies, and domain code, not concrete infrastructure or UI.",
|
|
503
|
+
"Use cases remain callable outside HTTP so routes, tasks, jobs, and agent capabilities can reuse the same behavior.",
|
|
504
|
+
],
|
|
505
|
+
policy: [
|
|
506
|
+
"Feature policies own business authorization for resources owned by that feature.",
|
|
507
|
+
"Authorization remains enforced in application workflows even when contract metadata also declares an ability.",
|
|
508
|
+
],
|
|
509
|
+
ability: [
|
|
510
|
+
"An ability belongs to the policy of the feature that owns the resource being authorized.",
|
|
511
|
+
"Contracts may name authorization abilities, while policies and use cases enforce the business rule.",
|
|
512
|
+
],
|
|
513
|
+
event: [
|
|
514
|
+
"Events represent facts that happened and belong to the feature that owns the fact.",
|
|
515
|
+
"Durable event publication registers through the app's workflow and outbox boundaries.",
|
|
516
|
+
],
|
|
517
|
+
listener: [
|
|
518
|
+
"Listeners react to registered events and delegate application work through ports, jobs, notifications, or use cases.",
|
|
519
|
+
"Feature listeners register through the central listener registry used by runtime wiring and integrity checks.",
|
|
520
|
+
],
|
|
521
|
+
job: [
|
|
522
|
+
"Jobs represent background work and remain explicit at provider-backed execution boundaries.",
|
|
523
|
+
"Feature jobs register through central runtime or outbox registries before workers can dispatch them.",
|
|
524
|
+
],
|
|
525
|
+
schedule: [
|
|
526
|
+
"Schedules represent time-based triggers and delegate work to application workflows.",
|
|
527
|
+
"Feature schedules register centrally so runtime wiring, doctor, and beignet schedule run inspect the same surface.",
|
|
528
|
+
],
|
|
529
|
+
task: [
|
|
530
|
+
"Tasks are explicit operational entrypoints for maintenance, backfills, and other bounded application work.",
|
|
531
|
+
"Feature tasks register centrally so beignet task run and runtime integrity checks use the same definitions.",
|
|
532
|
+
],
|
|
533
|
+
notification: [
|
|
534
|
+
"Notifications represent user-facing communication intent, separate from provider-specific delivery.",
|
|
535
|
+
"Queued notification definitions register with the central notification and job runtime.",
|
|
536
|
+
],
|
|
537
|
+
upload: [
|
|
538
|
+
"Uploads define feature-owned validation and storage workflows while storage remains behind an app port.",
|
|
539
|
+
"Upload route adapters stay thin and reuse the registered feature upload definition.",
|
|
540
|
+
],
|
|
541
|
+
"agent-capability": [
|
|
542
|
+
"Agent capabilities expose curated, validated inputs and outputs by adapting existing application use cases.",
|
|
543
|
+
"Delegated context and authorization resolve centrally before an agent capability executes.",
|
|
544
|
+
],
|
|
545
|
+
registry: [
|
|
546
|
+
"Registries explicitly compose feature declarations into the runtime surface inspected by doctor and app-map.",
|
|
547
|
+
"Central registries remain the source of truth for runtime wiring and integrity checks.",
|
|
548
|
+
],
|
|
549
|
+
port: [
|
|
550
|
+
"Ports define app-facing dependency interfaces; infrastructure adapters provide their concrete implementations.",
|
|
551
|
+
"App ports wire through infra/port-wiring.ts and remain available to use cases through application context.",
|
|
552
|
+
],
|
|
553
|
+
provider: [
|
|
554
|
+
"Ports define app-facing interfaces, providers adapt external systems, and app infrastructure wires them together.",
|
|
555
|
+
"Lifecycle providers register in server/providers.ts and provider-backed app ports wire through infra/port-wiring.ts.",
|
|
556
|
+
],
|
|
557
|
+
table: [
|
|
558
|
+
"Database tables remain infrastructure-owned persistence details rather than domain or use-case dependencies.",
|
|
559
|
+
"Configured schema sources and migrations must describe the same deployed database surface.",
|
|
560
|
+
],
|
|
561
|
+
openapi: [
|
|
562
|
+
"OpenAPI documents derive from the same registered contract surface served by the application.",
|
|
563
|
+
"Documented methods, paths, schemas, errors, and operation IDs stay aligned with their contracts.",
|
|
564
|
+
],
|
|
565
|
+
entrypoint: [
|
|
566
|
+
"Runtime entrypoints compose the server or expose thin framework adapters over registered routes.",
|
|
567
|
+
"Entrypoints reuse central context, routes, providers, and workflow registries instead of duplicating application behavior.",
|
|
568
|
+
],
|
|
569
|
+
test: [
|
|
570
|
+
"Feature behavior tests stay under features/<feature>/tests and exercise use cases, routes, policies, workflows, and UI.",
|
|
571
|
+
"Infrastructure and server integration tests may remain adjacent to the modules they exercise.",
|
|
572
|
+
],
|
|
573
|
+
diagnostic: [
|
|
574
|
+
"Doctor findings describe framework convention drift; lint findings describe dependency-direction violations.",
|
|
575
|
+
"Fix the app structure or wiring named by the finding, then run the complete validation loop.",
|
|
576
|
+
],
|
|
577
|
+
};
|
|
463
578
|
function conventionsFor(kind) {
|
|
464
|
-
|
|
465
|
-
case "feature":
|
|
466
|
-
return [
|
|
467
|
-
"Feature-owned contracts, use cases, policies, ports, workflows, clients, components, and tests stay under features/<feature>/.",
|
|
468
|
-
"Feature route groups and workflow artifacts register through the central server entrypoints.",
|
|
469
|
-
];
|
|
470
|
-
case "route":
|
|
471
|
-
return [
|
|
472
|
-
"Contracts own HTTP method, path, schemas, responses, metadata, and route errors; routes bind contracts to use cases.",
|
|
473
|
-
"Feature route groups compose centrally in server/routes.ts and runtime route adapters stay thin.",
|
|
474
|
-
];
|
|
475
|
-
case "provider":
|
|
476
|
-
return [
|
|
477
|
-
"Ports define app-facing interfaces, providers adapt external systems, and app infrastructure wires them together.",
|
|
478
|
-
"Lifecycle providers register in server/providers.ts and provider-backed app ports wire through infra/port-wiring.ts.",
|
|
479
|
-
];
|
|
480
|
-
case "diagnostic":
|
|
481
|
-
return [
|
|
482
|
-
"Doctor findings describe framework convention drift; lint findings describe dependency-direction violations.",
|
|
483
|
-
"Fix the app structure or wiring named by the finding, then run the complete validation loop.",
|
|
484
|
-
];
|
|
485
|
-
}
|
|
579
|
+
return [...conventionsByTargetKind[kind]];
|
|
486
580
|
}
|
|
487
581
|
function scopeFiles(nodes, edges) {
|
|
488
582
|
return new Set([
|
package/dist/explain.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"explain.js","sourceRoot":"","sources":["../src/explain.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"explain.js","sourceRoot":"","sources":["../src/explain.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAGA,OAAO,EAIL,KAAK,cAAc,EAInB,KAAK,4BAA4B,EACjC,KAAK,cAAc,EAEpB,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAGA,OAAO,EAIL,KAAK,cAAc,EAInB,KAAK,4BAA4B,EACjC,KAAK,cAAc,EAEpB,MAAM,eAAe,CAAC;AAoCvB,KAAK,UAAU,GAAG,cAAc,GAAG;IACjC,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;CAClC,CAAC;AAgyFF,wBAAsB,IAAI,CACxB,MAAM,WAAwB,EAC9B,OAAO,GAAE,4BAA4B,CAAC,UAAU,CAAe,GAC9D,OAAO,CAAC,IAAI,CAAC,CAiBf"}
|