@tacuchi/agent-workflow-cli 21.0.0 → 21.1.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.
- package/README.md +1 -0
- package/dist/application/capability/compose.js +161 -0
- package/dist/application/capability/compose.js.map +1 -0
- package/dist/application/capability/descriptor-loader.js +109 -0
- package/dist/application/capability/descriptor-loader.js.map +1 -0
- package/dist/application/capability/design-handler.js +299 -0
- package/dist/application/capability/design-handler.js.map +1 -0
- package/dist/application/capability/dispatcher.js +312 -0
- package/dist/application/capability/dispatcher.js.map +1 -0
- package/dist/application/capability/durable-effect.js +220 -0
- package/dist/application/capability/durable-effect.js.map +1 -0
- package/dist/application/capability/installed-inventory.js +168 -0
- package/dist/application/capability/installed-inventory.js.map +1 -0
- package/dist/application/capability/readiness.js +204 -0
- package/dist/application/capability/readiness.js.map +1 -0
- package/dist/application/capability/resolution.js +264 -0
- package/dist/application/capability/resolution.js.map +1 -0
- package/dist/application/capability/wrapper.js +187 -0
- package/dist/application/capability/wrapper.js.map +1 -0
- package/dist/application/context/manifest.js +11 -5
- package/dist/application/context/manifest.js.map +1 -1
- package/dist/application/context/measure.js +5 -2
- package/dist/application/context/measure.js.map +1 -1
- package/dist/application/context/plan-service.js +6 -6
- package/dist/application/context/plan-service.js.map +1 -1
- package/dist/application/design/design-bundle-service.js +148 -0
- package/dist/application/design/design-bundle-service.js.map +1 -0
- package/dist/application/design/design-proposal-service.js +69 -0
- package/dist/application/design/design-proposal-service.js.map +1 -0
- package/dist/application/design/design-publish-service.js +275 -7
- package/dist/application/design/design-publish-service.js.map +1 -1
- package/dist/application/design/design-record-service.js +100 -0
- package/dist/application/design/design-record-service.js.map +1 -0
- package/dist/application/flow/advance.js +533 -0
- package/dist/application/flow/advance.js.map +1 -0
- package/dist/application/flow/flow-service.js +65 -0
- package/dist/application/flow/flow-service.js.map +1 -0
- package/dist/application/flow/run-projection.js +80 -0
- package/dist/application/flow/run-projection.js.map +1 -0
- package/dist/application/flow/run-state-service.js +107 -0
- package/dist/application/flow/run-state-service.js.map +1 -0
- package/dist/application/flow/submit.js +423 -0
- package/dist/application/flow/submit.js.map +1 -0
- package/dist/application/resume-service.js +23 -10
- package/dist/application/resume-service.js.map +1 -1
- package/dist/application/self/install-skill.js +11 -0
- package/dist/application/self/install-skill.js.map +1 -1
- package/dist/application/self/uninstall.js +21 -0
- package/dist/application/self/uninstall.js.map +1 -1
- package/dist/application/skills-resolver-service.js +8 -2
- package/dist/application/skills-resolver-service.js.map +1 -1
- package/dist/application/status-service.js +4 -1
- package/dist/application/status-service.js.map +1 -1
- package/dist/application/workspace-init-service.js +13 -1
- package/dist/application/workspace-init-service.js.map +1 -1
- package/dist/cli/commands/capability.js +182 -0
- package/dist/cli/commands/capability.js.map +1 -0
- package/dist/cli/commands/flow.js +71 -0
- package/dist/cli/commands/flow.js.map +1 -0
- package/dist/cli/commands/index.js +4 -0
- package/dist/cli/commands/index.js.map +1 -1
- package/dist/cli/commands/skills.js +55 -2
- package/dist/cli/commands/skills.js.map +1 -1
- package/dist/cli/commands/status.js +5 -0
- package/dist/cli/commands/status.js.map +1 -1
- package/dist/cli/help-groups.js +6 -0
- package/dist/cli/help-groups.js.map +1 -1
- package/dist/cli/parser.js +6 -0
- package/dist/cli/parser.js.map +1 -1
- package/dist/cli/tui/data/workflow-content.js +5 -0
- package/dist/cli/tui/data/workflow-content.js.map +1 -1
- package/dist/cli/tui/tabs/workflow-tab.js +5 -1
- package/dist/cli/tui/tabs/workflow-tab.js.map +1 -1
- package/dist/domain/capability/descriptor.js +553 -0
- package/dist/domain/capability/descriptor.js.map +1 -0
- package/dist/domain/capability/effects.js +90 -0
- package/dist/domain/capability/effects.js.map +1 -0
- package/dist/domain/capability/protocol.js +494 -0
- package/dist/domain/capability/protocol.js.map +1 -0
- package/dist/domain/contract-reader.js +84 -0
- package/dist/domain/contract-reader.js.map +1 -0
- package/dist/domain/design/adapter.js +161 -0
- package/dist/domain/design/adapter.js.map +1 -0
- package/dist/domain/design/artifact.js +148 -4
- package/dist/domain/design/artifact.js.map +1 -1
- package/dist/domain/design/capability.js +263 -4
- package/dist/domain/design/capability.js.map +1 -1
- package/dist/domain/design/direct.js +108 -0
- package/dist/domain/design/direct.js.map +1 -0
- package/dist/domain/design/external-send.js +65 -0
- package/dist/domain/design/external-send.js.map +1 -0
- package/dist/domain/design/maturity.js +71 -0
- package/dist/domain/design/maturity.js.map +1 -1
- package/dist/domain/design/offline.js +92 -0
- package/dist/domain/design/offline.js.map +1 -0
- package/dist/domain/design/profiles.js +212 -0
- package/dist/domain/design/profiles.js.map +1 -0
- package/dist/domain/design/proposal.js +234 -0
- package/dist/domain/design/proposal.js.map +1 -0
- package/dist/domain/design/render-bundle.js +0 -0
- package/dist/domain/design/render-bundle.js.map +1 -0
- package/dist/domain/design/rendition.js +472 -0
- package/dist/domain/design/rendition.js.map +1 -0
- package/dist/domain/design/sources.js +180 -0
- package/dist/domain/design/sources.js.map +1 -0
- package/dist/domain/design/validation.js +12 -68
- package/dist/domain/design/validation.js.map +1 -1
- package/dist/domain/design/visual-evidence.js +155 -0
- package/dist/domain/design/visual-evidence.js.map +1 -0
- package/dist/domain/flow/answer.js +459 -0
- package/dist/domain/flow/answer.js.map +1 -0
- package/dist/domain/flow/authority.js +2276 -0
- package/dist/domain/flow/authority.js.map +1 -0
- package/dist/domain/flow/authorization.js +62 -0
- package/dist/domain/flow/authorization.js.map +1 -0
- package/dist/domain/flow/directive.js +421 -0
- package/dist/domain/flow/directive.js.map +1 -0
- package/dist/domain/flow/rules.js +140 -0
- package/dist/domain/flow/rules.js.map +1 -0
- package/dist/domain/flow/run-state.js +317 -0
- package/dist/domain/flow/run-state.js.map +1 -0
- package/dist/domain/harnesses.js +21 -0
- package/dist/domain/harnesses.js.map +1 -1
- package/dist/domain/skills.js +13 -14
- package/dist/domain/skills.js.map +1 -1
- package/package.json +1 -1
- package/skills/w/SKILL.md +5 -5
- package/skills/w/context/MANIFEST.json +38 -1
- package/skills/w/harness/HARNESS.md +20 -0
- package/skills/w/loops/CHASSIS.md +11 -20
- package/skills/w/loops/CODE-POLICIES.md +9 -15
- package/skills/w/loops/plan-exec-loop/LOOP.md +11 -13
- package/skills/w/loops/plan-new-loop/LOOP.md +6 -4
- package/skills/w/loops/plan-refine-loop/LOOP.md +5 -3
- package/skills/w/loops/quick-loop/LOOP.md +18 -26
- package/skills/w/loops/spec-refine-loop/LOOP.md +14 -18
- package/skills/w/modules/COMPACTION.md +2 -6
- package/skills/w/modules/DB-SCRIPTS-ONLY.md +2 -0
- package/skills/w/modules/DESIGN-REFERENCES.md +15 -11
- package/skills/w/modules/IDEATION-GATE.md +3 -3
- package/skills/w/modules/PLAN-EXECUTION-BATCHES.md +17 -36
- package/skills/w/modules/PLAN-INPUT.md +5 -3
- package/skills/w/modules/PLAN-REFINE-SPLIT.md +3 -1
- package/skills/w/modules/PLAN-SPLIT-GATE.md +7 -5
- package/skills/w/modules/PROMPT-CONTINUITY.md +3 -1
- package/skills/w/modules/SPEC-CHANGE-SHAPE.md +4 -4
- package/skills/w/roles/README.md +2 -0
- package/skills/w/roles/design/CONTRACT.md +80 -0
- package/skills/w/roles/design/ROLE.md +7 -0
- package/skills/w/schemas/capability-descriptor.schema.json +260 -0
- package/skills/w/schemas/design/design-render-bundle.v1.schema.json +191 -0
- package/skills/w/schemas/design/design-rendition.v1.schema.json +232 -0
- package/skills/w/schemas/design/ui-screen.v1.schema.json +29 -1
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The shared machinery every hand-written contract validator is built on.
|
|
3
|
+
*
|
|
4
|
+
* Three properties hold across every published contract — the design formats and
|
|
5
|
+
* the capability descriptor alike — and they live here so no validator can
|
|
6
|
+
* quietly drop one:
|
|
7
|
+
*
|
|
8
|
+
* - **Every diagnostic names an artifact and a corrective action.** A rejection
|
|
9
|
+
* that only says "invalid" is a dead end for whoever has to fix it.
|
|
10
|
+
* - **Objects are closed.** The published JSON Schemas declare
|
|
11
|
+
* `additionalProperties: false`, so a key the contract does not declare is a
|
|
12
|
+
* typo of a real one, never an extension.
|
|
13
|
+
* - **Coverage is measured, not promised.** Every property read is recorded, and
|
|
14
|
+
* each drift guard compares that set against its published schema. A property
|
|
15
|
+
* declared in the schema and forgotten in the validator cannot ship.
|
|
16
|
+
*
|
|
17
|
+
* The failure CODE prefix is a constructor argument rather than a literal: the
|
|
18
|
+
* design formats answer `DESIGN_*` and the capability descriptor `CAPABILITY_*`,
|
|
19
|
+
* and a caller reading a code should learn which contract rejected it. That one
|
|
20
|
+
* parameter is the whole reason this is shared instead of copied — a second copy
|
|
21
|
+
* of `closed()` is a second place for the closed-object rule to rot.
|
|
22
|
+
*/
|
|
23
|
+
export class ContractReader {
|
|
24
|
+
codePrefix;
|
|
25
|
+
allowedKeys;
|
|
26
|
+
touched = new Set();
|
|
27
|
+
failures = [];
|
|
28
|
+
constructor(codePrefix, allowedKeys) {
|
|
29
|
+
this.codePrefix = codePrefix;
|
|
30
|
+
this.allowedKeys = allowedKeys;
|
|
31
|
+
}
|
|
32
|
+
/** Read `path`'s last segment off `node`, recording the property as covered. */
|
|
33
|
+
read(node, path) {
|
|
34
|
+
this.touched.add(path);
|
|
35
|
+
const segments = path.split(".");
|
|
36
|
+
const key = segments[segments.length - 1].replace("[]", "");
|
|
37
|
+
return node[key];
|
|
38
|
+
}
|
|
39
|
+
fail(code, artifact, message, action) {
|
|
40
|
+
this.failures.push({ code, artifact, message, action });
|
|
41
|
+
}
|
|
42
|
+
invalid(artifact, message, action) {
|
|
43
|
+
this.fail(`${this.codePrefix}_FIELD_INVALID`, artifact, message, action);
|
|
44
|
+
}
|
|
45
|
+
/** Reject anything the contract does not declare at `path` (closed objects). */
|
|
46
|
+
closed(node, path, artifact) {
|
|
47
|
+
const allowed = this.allowedKeys[path];
|
|
48
|
+
if (allowed === undefined)
|
|
49
|
+
return;
|
|
50
|
+
for (const key of Object.keys(node)) {
|
|
51
|
+
if (allowed.includes(key))
|
|
52
|
+
continue;
|
|
53
|
+
this.fail(`${this.codePrefix}_KEY_UNKNOWN`, artifact, `${path === "" ? "el documento" : `'${path}'`} no admite la clave '${key}'`, `quitala o corregí el nombre; las claves válidas son: ${allowed.join(", ")}`);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Walk an array-of-objects field. Every list in every contract shares the same
|
|
59
|
+
* three failure modes — not an array, an item that is not an object, an item
|
|
60
|
+
* carrying a key the schema does not declare — so they are stated once here and
|
|
61
|
+
* each reader stays about ITS own fields.
|
|
62
|
+
*/
|
|
63
|
+
export function* eachRecord(r, node, path, artifact, emptyMeans = "") {
|
|
64
|
+
const list = r.read(node, path);
|
|
65
|
+
if (!Array.isArray(list)) {
|
|
66
|
+
r.invalid(artifact, `'${path}' debe ser un array${emptyMeans}`, `escribí '${path}': []`);
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
for (const entry of list) {
|
|
70
|
+
if (!isRecord(entry)) {
|
|
71
|
+
r.invalid(artifact, `cada entrada de '${path}' debe ser un objeto`, `revisá el array '${path}'`);
|
|
72
|
+
continue;
|
|
73
|
+
}
|
|
74
|
+
r.closed(entry, `${path}[]`, artifact);
|
|
75
|
+
yield entry;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
export function isRecord(value) {
|
|
79
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
80
|
+
}
|
|
81
|
+
export function isNonEmptyString(value) {
|
|
82
|
+
return typeof value === "string" && value.trim().length > 0;
|
|
83
|
+
}
|
|
84
|
+
//# sourceMappingURL=contract-reader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contract-reader.js","sourceRoot":"","sources":["../../src/domain/contract-reader.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What a renderer or adapter says it can do — and the refusal to infer the rest.
|
|
3
|
+
*
|
|
4
|
+
* Every integration declares a COMPLETE matrix. That is the whole content of
|
|
5
|
+
* this module: an absent capability is never "probably fine", never "try it and
|
|
6
|
+
* see", never a call that silently does half the job. Asking for one that was
|
|
7
|
+
* not declared comes back as an explicit degradation naming what is missing and
|
|
8
|
+
* what does exist instead — or, when the caller cannot continue without it, as a
|
|
9
|
+
* failure. Never as silence.
|
|
10
|
+
*
|
|
11
|
+
* The matrix is a TYPE, not a document: `Record<RenderCapability, boolean>` is
|
|
12
|
+
* exhaustive, so a profile that forgets to answer for `compare` does not
|
|
13
|
+
* compile. There is no JSON schema here on purpose — a profile is code shipped
|
|
14
|
+
* with the CLI, and validating it at runtime would be checking a fact the
|
|
15
|
+
* compiler already proved.
|
|
16
|
+
*
|
|
17
|
+
* A one-way adapter is perfectly valid. `handoff + record` — prepare the context,
|
|
18
|
+
* register where the result ended up — is the whole Figma conformance profile of
|
|
19
|
+
* v1, and it is honest precisely because it declares the other five as absent.
|
|
20
|
+
*/
|
|
21
|
+
/**
|
|
22
|
+
* The seven capabilities, in decreasing order of how local they are.
|
|
23
|
+
*
|
|
24
|
+
* - `handoff` — hand the bundle over. The floor: no account, no network.
|
|
25
|
+
* - `record` — register where a result lives, as a rendition.
|
|
26
|
+
* - `snapshot` — keep a local, consultable copy of the result.
|
|
27
|
+
* - `generate` — create the visual result in the tool, automatically.
|
|
28
|
+
* - `push` — write Workline's semantics into the tool.
|
|
29
|
+
* - `pull` — bring the tool's state back.
|
|
30
|
+
* - `compare` — diff the tool's state against a revision.
|
|
31
|
+
*/
|
|
32
|
+
export const RENDER_CAPABILITIES = [
|
|
33
|
+
"handoff",
|
|
34
|
+
"record",
|
|
35
|
+
"snapshot",
|
|
36
|
+
"generate",
|
|
37
|
+
"push",
|
|
38
|
+
"pull",
|
|
39
|
+
"compare",
|
|
40
|
+
];
|
|
41
|
+
/**
|
|
42
|
+
* The three v1 conformance is defined in terms of. Optional means "may be
|
|
43
|
+
* declared false", never "may be left out of the matrix": the difference between
|
|
44
|
+
* those two is exactly what this contract exists to remove.
|
|
45
|
+
*/
|
|
46
|
+
export const CONFORMANCE_CAPABILITIES = ["handoff", "record", "snapshot"];
|
|
47
|
+
/** The four that no v1 profile implements, and that all of them must declare. */
|
|
48
|
+
export const OPTIONAL_CAPABILITIES = ["generate", "push", "pull", "compare"];
|
|
49
|
+
/**
|
|
50
|
+
* The nearest declared capability that answers the SAME need, so a degradation
|
|
51
|
+
* can offer a way forward instead of just a refusal. `handoff` has none below
|
|
52
|
+
* it: it is the floor, and a profile that cannot even hand the bundle over has
|
|
53
|
+
* nothing to fall back to.
|
|
54
|
+
*/
|
|
55
|
+
const FALLBACK = {
|
|
56
|
+
handoff: null,
|
|
57
|
+
record: "handoff",
|
|
58
|
+
snapshot: "record",
|
|
59
|
+
generate: "handoff",
|
|
60
|
+
push: "handoff",
|
|
61
|
+
pull: "record",
|
|
62
|
+
compare: "snapshot",
|
|
63
|
+
};
|
|
64
|
+
const HOW_TO_INSTEAD = {
|
|
65
|
+
handoff: "entregá el bundle y operá la herramienta a mano",
|
|
66
|
+
record: "registrá el resultado como rendition con su locator",
|
|
67
|
+
snapshot: "conservá una copia local del resultado y sellala con su source_digest",
|
|
68
|
+
generate: "creá el diseño en la herramienta a partir del bundle",
|
|
69
|
+
push: "aplicá los cambios en la herramienta a mano",
|
|
70
|
+
pull: "traé el resultado a mano y registralo como propuesta",
|
|
71
|
+
compare: "compará contra el snapshot local",
|
|
72
|
+
};
|
|
73
|
+
/**
|
|
74
|
+
* Resolve a request against the matrix.
|
|
75
|
+
*
|
|
76
|
+
* The two outcomes are the contract: a declared capability is exercised, an
|
|
77
|
+
* undeclared one degrades. There is no third branch where the caller guesses,
|
|
78
|
+
* and no branch at all where the answer is nothing.
|
|
79
|
+
*/
|
|
80
|
+
export function resolveCapability(adapter, capability) {
|
|
81
|
+
if (adapter.capabilities[capability])
|
|
82
|
+
return { ok: true, capability };
|
|
83
|
+
const fallback = FALLBACK[capability];
|
|
84
|
+
const alternative = fallback !== null && adapter.capabilities[fallback]
|
|
85
|
+
? fallback
|
|
86
|
+
: (RENDER_CAPABILITIES.find((c) => adapter.capabilities[c]) ?? null);
|
|
87
|
+
return {
|
|
88
|
+
ok: false,
|
|
89
|
+
degradation: {
|
|
90
|
+
adapter: adapter.id,
|
|
91
|
+
capability,
|
|
92
|
+
message: `el perfil '${adapter.id}' no declara '${capability}'`,
|
|
93
|
+
alternative,
|
|
94
|
+
action: alternative === null
|
|
95
|
+
? "este perfil no declara ninguna capacidad: elegí otro adapter, o hacé el handoff neutral local"
|
|
96
|
+
: `usá '${alternative}': ${HOW_TO_INSTEAD[alternative]}`,
|
|
97
|
+
},
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
/** The same degradation as a failure, for a caller that cannot continue without it. */
|
|
101
|
+
export function degradationFailure(degradation, artifact) {
|
|
102
|
+
return {
|
|
103
|
+
code: "DESIGN_CAPABILITY_UNDECLARED",
|
|
104
|
+
artifact,
|
|
105
|
+
message: degradation.message,
|
|
106
|
+
action: degradation.action,
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
/** Look an adapter up. Null — never a guess — when the registry does not have it. */
|
|
110
|
+
export function findAdapter(id, registry) {
|
|
111
|
+
return registry[id] ?? null;
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Ask for an adapter that has to be there. Separate from `findAdapter` so the
|
|
115
|
+
* diagnostic can list what IS registered: "no existe 'figma-api'" is a dead end
|
|
116
|
+
* when the answer the caller needed was "hay 'figma' y 'portable-html'".
|
|
117
|
+
*/
|
|
118
|
+
export function requireAdapter(id, registry, artifact) {
|
|
119
|
+
const found = findAdapter(id, registry);
|
|
120
|
+
if (found !== null)
|
|
121
|
+
return { ok: true, value: found };
|
|
122
|
+
const known = Object.keys(registry).sort();
|
|
123
|
+
return {
|
|
124
|
+
ok: false,
|
|
125
|
+
failure: {
|
|
126
|
+
code: "DESIGN_ADAPTER_UNKNOWN",
|
|
127
|
+
artifact,
|
|
128
|
+
message: `no hay ningún perfil de renderer/adapter '${id}'`,
|
|
129
|
+
action: known.length === 0
|
|
130
|
+
? "no hay perfiles registrados: el camino local (validar, leer y handoff neutral) no necesita ninguno"
|
|
131
|
+
: `los perfiles registrados son: ${known.join(", ")}`,
|
|
132
|
+
},
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
/** The adapter facet a bundle records. */
|
|
136
|
+
export function bundleAdapterOf(adapter) {
|
|
137
|
+
return { profile: adapter.id, version: adapter.version };
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Everything this profile cannot represent, as a bundle's loss report.
|
|
141
|
+
*
|
|
142
|
+
* Its own declared losses PLUS one entry per undeclared capability. The second
|
|
143
|
+
* half is what makes the report answer "what can this not do with my design"
|
|
144
|
+
* rather than only "what does this renderer draw badly".
|
|
145
|
+
*/
|
|
146
|
+
export function declaredLosses(adapter) {
|
|
147
|
+
return [
|
|
148
|
+
...adapter.losses,
|
|
149
|
+
...RENDER_CAPABILITIES.filter((c) => !adapter.capabilities[c]).map((c) => ({
|
|
150
|
+
subject: `capability:${c}`,
|
|
151
|
+
why: `el perfil '${adapter.id}' no declara '${c}'${FALLBACK[c] !== null && adapter.capabilities[FALLBACK[c]]
|
|
152
|
+
? `; lo más cercano que declara es '${FALLBACK[c]}'`
|
|
153
|
+
: ""}`,
|
|
154
|
+
})),
|
|
155
|
+
];
|
|
156
|
+
}
|
|
157
|
+
/** Does this profile satisfy v1 conformance for the capabilities it claims? */
|
|
158
|
+
export function conformanceOf(adapter) {
|
|
159
|
+
return CONFORMANCE_CAPABILITIES.filter((c) => adapter.capabilities[c]);
|
|
160
|
+
}
|
|
161
|
+
//# sourceMappingURL=adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/domain/design/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,6 +20,11 @@ export const SCHEMA_ID = {
|
|
|
20
20
|
flow: FLOW_SCHEMA_ID,
|
|
21
21
|
screen: SCREEN_SCHEMA_ID,
|
|
22
22
|
};
|
|
23
|
+
export const CRITERION_CLASSIFICATIONS = [
|
|
24
|
+
"visual",
|
|
25
|
+
"interaction",
|
|
26
|
+
"not_visual",
|
|
27
|
+
];
|
|
23
28
|
const COMMON_KEYS = [
|
|
24
29
|
"schema",
|
|
25
30
|
"id",
|
|
@@ -43,7 +48,7 @@ export const FLOW_ALLOWED_KEYS = {
|
|
|
43
48
|
export const SCREEN_ALLOWED_KEYS = {
|
|
44
49
|
"": [...COMMON_KEYS, "title", "default_state", "states", "flow_refs", "dependencies"],
|
|
45
50
|
"states[]": ["anchor", "purpose"],
|
|
46
|
-
"trace[]": ["criterion", "source"],
|
|
51
|
+
"trace[]": ["criterion", "source", "classification", "states", "renditions", "reason"],
|
|
47
52
|
"unknowns[]": ["question", "blocking"],
|
|
48
53
|
"external[]": ["provider", "revision", "digest"],
|
|
49
54
|
dependencies: ["rules", "tokens", "assets"],
|
|
@@ -113,6 +118,12 @@ export function validateDesignArtifact(text, kind, artifact) {
|
|
|
113
118
|
const body = parseBody(split.body, split.bodyLine);
|
|
114
119
|
checkHeadings(r, body, kind, artifact);
|
|
115
120
|
checkNotApplicable(r, common.not_applicable, kind, artifact);
|
|
121
|
+
// The classification matrix names states, so it can only be checked once the
|
|
122
|
+
// states have been read. Coherence only — whether the matrix is COMPLETE is
|
|
123
|
+
// the `handoff` gate's question, and an `outline` is allowed to leave it open.
|
|
124
|
+
if (kind === "screen") {
|
|
125
|
+
checkTraceCoherence(r, artifact, common.trace, specific.states);
|
|
126
|
+
}
|
|
116
127
|
checkBodyAgainstFrontmatter(r, body, kind, artifact, common, specific);
|
|
117
128
|
if (r.failures.length > 0) {
|
|
118
129
|
return { ok: false, value: null, failures: r.failures, touched: r.touched };
|
|
@@ -153,7 +164,7 @@ function readCommon(r, front, kind, artifact) {
|
|
|
153
164
|
supersedes: typeof supersedes === "string" ? supersedes : null,
|
|
154
165
|
purpose: typeof purpose === "string" ? purpose : "",
|
|
155
166
|
platform: typeof platform === "string" ? platform : "",
|
|
156
|
-
trace: readTrace(r, front, artifact),
|
|
167
|
+
trace: readTrace(r, front, artifact, kind),
|
|
157
168
|
unknowns: readUnknowns(r, front, artifact),
|
|
158
169
|
not_applicable: readNotApplicable(r, front, artifact),
|
|
159
170
|
external: readExternal(r, front, artifact),
|
|
@@ -219,7 +230,7 @@ function checkSupersedes(r, supersedes, artifact, rawId, revision) {
|
|
|
219
230
|
r.fail("DESIGN_RELATION_BROKEN", artifact, `'supersedes' apunta a r${ref.revision} y esta revisión es r${revision}`, "solo se supersede una revisión anterior");
|
|
220
231
|
}
|
|
221
232
|
}
|
|
222
|
-
function readTrace(r, front, artifact) {
|
|
233
|
+
function readTrace(r, front, artifact, kind) {
|
|
223
234
|
const out = [];
|
|
224
235
|
for (const entry of eachRecord(r, front, "trace", artifact, " de entradas de trazabilidad")) {
|
|
225
236
|
const criterion = r.read(entry, "trace[].criterion");
|
|
@@ -232,10 +243,136 @@ function readTrace(r, front, artifact) {
|
|
|
232
243
|
!checkText(r, artifact, `trace[${criterion}].source`, source, "poné el path del documento que define el criterio, o null")) {
|
|
233
244
|
continue;
|
|
234
245
|
}
|
|
235
|
-
|
|
246
|
+
const base = { criterion, source: typeof source === "string" ? source : null };
|
|
247
|
+
// Only a screen declares the evidence half, so only a screen's validator may
|
|
248
|
+
// READ those properties: the drift guard proves a validator reads nothing the
|
|
249
|
+
// published schema does not declare, and `ui-flow/v1` does not declare them.
|
|
250
|
+
out.push(kind === "flow" ? base : { ...base, ...readEvidence(r, entry, artifact, criterion) });
|
|
236
251
|
}
|
|
237
252
|
return out;
|
|
238
253
|
}
|
|
254
|
+
/** The evidence half of a screen's trace entry. Shape only — completeness is the gate's. */
|
|
255
|
+
function readEvidence(r, entry, artifact, criterion) {
|
|
256
|
+
const empty = { classification: null, states: [], renditions: [], reason: null };
|
|
257
|
+
const raw = r.read(entry, "trace[].classification");
|
|
258
|
+
const states = r.read(entry, "trace[].states");
|
|
259
|
+
const renditions = r.read(entry, "trace[].renditions");
|
|
260
|
+
const reason = r.read(entry, "trace[].reason");
|
|
261
|
+
const classification = raw === undefined || raw === null
|
|
262
|
+
? null
|
|
263
|
+
: CRITERION_CLASSIFICATIONS.includes(raw)
|
|
264
|
+
? raw
|
|
265
|
+
: undefined;
|
|
266
|
+
if (classification === undefined) {
|
|
267
|
+
r.invalid(artifact, `trace['${criterion}']: 'classification' debe ser ${CRITERION_CLASSIFICATIONS.join(", ")} o null y llegó ${JSON.stringify(raw)}`, "clasificá cómo se demuestra el criterio, o dejalo en null hasta hacerlo");
|
|
268
|
+
return empty;
|
|
269
|
+
}
|
|
270
|
+
const anchors = readAnchorList(r, artifact, `trace['${criterion}'].states`, states);
|
|
271
|
+
const shown = readRenditionList(r, artifact, `trace['${criterion}'].renditions`, renditions);
|
|
272
|
+
const why = reason === null || reason === undefined
|
|
273
|
+
? null
|
|
274
|
+
: checkText(r, artifact, `trace['${criterion}'].reason`, reason, "escribí por qué el criterio no tiene nada que mirar, o poné null")
|
|
275
|
+
? reason
|
|
276
|
+
: null;
|
|
277
|
+
const contradiction = contradictionIn(classification, anchors.length + shown.length, why);
|
|
278
|
+
if (contradiction !== null) {
|
|
279
|
+
r.invalid(artifact, `trace['${criterion}']: ${contradiction.what}`, contradiction.action);
|
|
280
|
+
return empty;
|
|
281
|
+
}
|
|
282
|
+
return { classification, states: anchors, renditions: shown, reason: why };
|
|
283
|
+
}
|
|
284
|
+
/**
|
|
285
|
+
* The three ways the evidence half can contradict its own classification.
|
|
286
|
+
*
|
|
287
|
+
* A contradiction is malformed whatever the maturity: `not_visual` MEANS there is
|
|
288
|
+
* nothing to look at, so enumerating a picture of it is not an incomplete claim to
|
|
289
|
+
* be finished later — it is two claims that cannot both hold. Incompleteness is a
|
|
290
|
+
* different verdict and belongs to the `handoff` gate.
|
|
291
|
+
*/
|
|
292
|
+
function contradictionIn(classification, enumerated, reason) {
|
|
293
|
+
if (classification === null) {
|
|
294
|
+
if (enumerated === 0 && reason === null)
|
|
295
|
+
return null;
|
|
296
|
+
return {
|
|
297
|
+
what: "declara evidencia sin clasificar el criterio",
|
|
298
|
+
action: "poné 'classification' en visual, interaction o not_visual",
|
|
299
|
+
};
|
|
300
|
+
}
|
|
301
|
+
if (classification === "not_visual") {
|
|
302
|
+
if (enumerated === 0)
|
|
303
|
+
return null;
|
|
304
|
+
return {
|
|
305
|
+
what: "está clasificado 'not_visual' y enumera estados o renditions",
|
|
306
|
+
action: "si hay algo que mirar, clasificalo 'visual' o 'interaction'",
|
|
307
|
+
};
|
|
308
|
+
}
|
|
309
|
+
if (reason === null)
|
|
310
|
+
return null;
|
|
311
|
+
return {
|
|
312
|
+
what: `'reason' explica por qué NO hay nada que mirar y este criterio es '${classification}'`,
|
|
313
|
+
action: "quitá 'reason', o reclasificá el criterio como 'not_visual'",
|
|
314
|
+
};
|
|
315
|
+
}
|
|
316
|
+
function readAnchorList(r, artifact, path, raw) {
|
|
317
|
+
if (raw === undefined)
|
|
318
|
+
return [];
|
|
319
|
+
if (!Array.isArray(raw)) {
|
|
320
|
+
r.invalid(artifact, `'${path}' debe ser un array de anchors`, `escribí '${path}': []`);
|
|
321
|
+
return [];
|
|
322
|
+
}
|
|
323
|
+
const out = [];
|
|
324
|
+
for (const value of raw) {
|
|
325
|
+
if (typeof value !== "string" || !ANCHOR_RE.test(value)) {
|
|
326
|
+
r.invalid(artifact, `'${path}' trae un anchor inválido: ${JSON.stringify(value)}`, "nombrá el anchor de un estado declarado, sin '#'");
|
|
327
|
+
continue;
|
|
328
|
+
}
|
|
329
|
+
if (out.includes(value)) {
|
|
330
|
+
r.fail("DESIGN_ID_DUPLICATE", artifact, `'${path}' repite '${value}'`, "dejá una sola aparición");
|
|
331
|
+
continue;
|
|
332
|
+
}
|
|
333
|
+
out.push(value);
|
|
334
|
+
}
|
|
335
|
+
return out;
|
|
336
|
+
}
|
|
337
|
+
function readRenditionList(r, artifact, path, raw) {
|
|
338
|
+
if (raw === undefined)
|
|
339
|
+
return [];
|
|
340
|
+
if (!Array.isArray(raw)) {
|
|
341
|
+
r.invalid(artifact, `'${path}' debe ser un array de referencias`, `escribí '${path}': []`);
|
|
342
|
+
return [];
|
|
343
|
+
}
|
|
344
|
+
const out = [];
|
|
345
|
+
for (const value of raw) {
|
|
346
|
+
const ref = parseArtifactRef(value);
|
|
347
|
+
if (ref === null || !ref.artifact.startsWith("VIS-")) {
|
|
348
|
+
r.invalid(artifact, `'${path}' solo admite renditions DES-NNN/VIS-NNN@rN y llegó ${JSON.stringify(value)}`, "referenciá la rendition exacta que muestra el criterio");
|
|
349
|
+
continue;
|
|
350
|
+
}
|
|
351
|
+
if (out.includes(value)) {
|
|
352
|
+
r.fail("DESIGN_ID_DUPLICATE", artifact, `'${path}' repite ${value}`, "dejá una sola aparición");
|
|
353
|
+
continue;
|
|
354
|
+
}
|
|
355
|
+
out.push(value);
|
|
356
|
+
}
|
|
357
|
+
return out;
|
|
358
|
+
}
|
|
359
|
+
/**
|
|
360
|
+
* The matrix names states of THIS screen. A criterion demonstrated on an anchor
|
|
361
|
+
* the revision does not declare points at nothing, and a gate that accepted it
|
|
362
|
+
* would report coverage of a state nobody can open.
|
|
363
|
+
*/
|
|
364
|
+
function checkTraceCoherence(r, artifact, trace, states) {
|
|
365
|
+
if (states.length === 0)
|
|
366
|
+
return; // ya reportado por readScreen
|
|
367
|
+
const anchors = new Set(states.map((s) => s.anchor));
|
|
368
|
+
for (const entry of trace) {
|
|
369
|
+
for (const anchor of entry.states ?? []) {
|
|
370
|
+
if (anchors.has(anchor))
|
|
371
|
+
continue;
|
|
372
|
+
r.fail("DESIGN_RELATION_BROKEN", artifact, `trace['${entry.criterion}'] se demuestra en '${anchor}' y no está entre los states declarados (${[...anchors].join(", ")})`, "declaralo en 'states' o nombrá uno existente");
|
|
373
|
+
}
|
|
374
|
+
}
|
|
375
|
+
}
|
|
239
376
|
function readUnknowns(r, front, artifact) {
|
|
240
377
|
const out = [];
|
|
241
378
|
for (const entry of eachRecord(r, front, "unknowns", artifact, " (vacío si no quedan incógnitas)")) {
|
|
@@ -587,6 +724,13 @@ function declaredReferences(common, specific) {
|
|
|
587
724
|
const declared = new Set();
|
|
588
725
|
if (common.supersedes !== null)
|
|
589
726
|
declared.add(common.supersedes);
|
|
727
|
+
// The evidence a screen's matrix enumerates IS declared in the frontmatter, so
|
|
728
|
+
// prose that names it is citing something the document already committed to.
|
|
729
|
+
// Without this, the section that explains the evidence could not mention it.
|
|
730
|
+
for (const entry of common.trace) {
|
|
731
|
+
for (const ref of entry.renditions ?? [])
|
|
732
|
+
declared.add(ref);
|
|
733
|
+
}
|
|
590
734
|
if ("nodes" in specific) {
|
|
591
735
|
for (const ref of [...specific.nodes, ...specific.dependencies])
|
|
592
736
|
declared.add(ref);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"artifact.js","sourceRoot":"","sources":["../../../src/domain/design/artifact.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"artifact.js","sourceRoot":"","sources":["../../../src/domain/design/artifact.ts"],"names":[],"mappings":"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"}
|