@milehimikey/em 1.17.0 → 1.18.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/.claude/skills/event-modeling/SKILL.md +1 -1
- package/.claude/skills/event-modeling-conform/SKILL.md +1 -1
- package/.claude/skills/event-modeling-design/SKILL.md +46 -5
- package/.claude/skills/event-modeling-discover/SKILL.md +43 -8
- package/.claude/skills/event-modeling-discover/reference/extract.md +6 -1
- package/.claude/skills/event-modeling-discover/reference/prd-rubric.md +102 -0
- package/.claude/skills/event-modeling-discover/reference/prd-spec-path.md +171 -0
- package/.claude/skills/event-modeling-engagement/SKILL.md +8 -3
- package/.claude/skills/event-modeling-implement/SKILL.md +1 -1
- package/.claude/skills/event-modeling-implement/reference/implement.md +8 -0
- package/.claude/skills/event-modeling-review/SKILL.md +1 -1
- package/.claude/skills/event-modeling-shared/reference/em-dsl.md +90 -5
- package/.claude/skills/event-modeling-shared/reference/methodology.md +268 -0
- package/.claude/skills/event-modeling-shared/reference/slice-doc-schema.md +96 -2
- package/.claude/skills/event-modeling-shared/templates/slice.md +11 -3
- package/.claude-plugin/marketplace.json +2 -2
- package/dist/catalog/docModelConsistencyValidate.js +160 -0
- package/dist/catalog/docModelConsistencyValidate.js.map +1 -1
- package/dist/catalog/invariantsValidate.d.ts +2 -0
- package/dist/catalog/invariantsValidate.js +67 -1
- package/dist/catalog/invariantsValidate.js.map +1 -1
- package/dist/catalog/scenarioQualityValidate.d.ts +4 -0
- package/dist/catalog/scenarioQualityValidate.js +148 -0
- package/dist/catalog/scenarioQualityValidate.js.map +1 -0
- package/dist/catalog/scenarios.d.ts +5 -0
- package/dist/catalog/scenarios.js +80 -0
- package/dist/catalog/scenarios.js.map +1 -1
- package/dist/catalog/sliceReadyValidate.d.ts +8 -0
- package/dist/catalog/sliceReadyValidate.js +35 -3
- package/dist/catalog/sliceReadyValidate.js.map +1 -1
- package/dist/catalog/sliceSections.d.ts +3 -2
- package/dist/catalog/sliceSections.js +99 -9
- package/dist/catalog/sliceSections.js.map +1 -1
- package/dist/cli/ciInit.d.ts +4 -11
- package/dist/cli/ciInit.js +24 -6
- package/dist/cli/ciInit.js.map +1 -1
- package/dist/cli/coverage.d.ts +9 -0
- package/dist/cli/coverage.js +18 -0
- package/dist/cli/coverage.js.map +1 -1
- package/dist/cli/defer.d.ts +28 -0
- package/dist/cli/defer.js +87 -4
- package/dist/cli/defer.js.map +1 -1
- package/dist/cli/engagement.d.ts +2 -2
- package/dist/cli/engagement.js +24 -1
- package/dist/cli/engagement.js.map +1 -1
- package/dist/cli/markImplemented.d.ts +14 -10
- package/dist/cli/markImplemented.js +49 -1
- package/dist/cli/markImplemented.js.map +1 -1
- package/dist/cli/prdTriage.d.ts +109 -0
- package/dist/cli/prdTriage.js +378 -0
- package/dist/cli/prdTriage.js.map +1 -0
- package/dist/cli/render-inputs.d.ts +2 -0
- package/dist/cli/render-inputs.js +4 -0
- package/dist/cli/render-inputs.js.map +1 -1
- package/dist/cli/revise.d.ts +2 -0
- package/dist/cli/revise.js +7 -2
- package/dist/cli/revise.js.map +1 -1
- package/dist/cli/shape.d.ts +27 -0
- package/dist/cli/shape.js +77 -0
- package/dist/cli/shape.js.map +1 -0
- package/dist/cli/sliceIndex.d.ts +6 -1
- package/dist/cli/sliceIndex.js +28 -13
- package/dist/cli/sliceIndex.js.map +1 -1
- package/dist/cli/sliceNew.d.ts +4 -1
- package/dist/cli/sliceNew.js +26 -9
- package/dist/cli/sliceNew.js.map +1 -1
- package/dist/cli/status.d.ts +21 -1
- package/dist/cli/status.js +25 -3
- package/dist/cli/status.js.map +1 -1
- package/dist/cli/storylineSuggest.d.ts +26 -0
- package/dist/cli/storylineSuggest.js +252 -0
- package/dist/cli/storylineSuggest.js.map +1 -0
- package/dist/cli/upgrade.d.ts +15 -3
- package/dist/cli/upgrade.js +426 -7
- package/dist/cli/upgrade.js.map +1 -1
- package/dist/cli/upgradeReshape.d.ts +60 -0
- package/dist/cli/upgradeReshape.js +425 -0
- package/dist/cli/upgradeReshape.js.map +1 -0
- package/dist/cli.js +286 -29
- package/dist/cli.js.map +1 -1
- package/dist/emit/dot.d.ts +2 -0
- package/dist/emit/dot.js +44 -8
- package/dist/emit/dot.js.map +1 -1
- package/dist/emit/engagementJson.d.ts +1 -1
- package/dist/emit/engagementJson.js +3 -1
- package/dist/emit/engagementJson.js.map +1 -1
- package/dist/emit/json.d.ts +21 -1
- package/dist/emit/json.js +26 -2
- package/dist/emit/json.js.map +1 -1
- package/dist/emit/queryJson.d.ts +1 -1
- package/dist/emit/queryJson.js +3 -1
- package/dist/emit/queryJson.js.map +1 -1
- package/dist/emit/statusJson.d.ts +1 -1
- package/dist/emit/statusJson.js +6 -1
- package/dist/emit/statusJson.js.map +1 -1
- package/dist/emit/theme.d.ts +1 -0
- package/dist/emit/theme.js +13 -0
- package/dist/emit/theme.js.map +1 -1
- package/dist/emit/validateJson.d.ts +5 -2
- package/dist/emit/validateJson.js +36 -2
- package/dist/emit/validateJson.js.map +1 -1
- package/dist/layout/grid.d.ts +5 -1
- package/dist/layout/grid.js +93 -2
- package/dist/layout/grid.js.map +1 -1
- package/dist/mcp/server.js +46 -11
- package/dist/mcp/server.js.map +1 -1
- package/dist/model/edges.d.ts +7 -0
- package/dist/model/edges.js +33 -16
- package/dist/model/edges.js.map +1 -1
- package/dist/model/model.d.ts +33 -0
- package/dist/model/model.js +87 -3
- package/dist/model/model.js.map +1 -1
- package/dist/model/queryIndex.js +2 -2
- package/dist/model/queryIndex.js.map +1 -1
- package/dist/model/refs.js +8 -5
- package/dist/model/refs.js.map +1 -1
- package/dist/model/rules.d.ts +149 -0
- package/dist/model/rules.js +144 -0
- package/dist/model/rules.js.map +1 -1
- package/dist/model/shapeLint.d.ts +12 -0
- package/dist/model/shapeLint.js +170 -0
- package/dist/model/shapeLint.js.map +1 -0
- package/dist/model/storylines.d.ts +51 -0
- package/dist/model/storylines.js +188 -0
- package/dist/model/storylines.js.map +1 -0
- package/dist/model/validate.d.ts +6 -1
- package/dist/model/validate.js +317 -14
- package/dist/model/validate.js.map +1 -1
- package/dist/parser/againSugar.d.ts +30 -0
- package/dist/parser/againSugar.js +105 -0
- package/dist/parser/againSugar.js.map +1 -0
- package/dist/parser/ast.d.ts +33 -0
- package/dist/parser/lexer.d.ts +2 -0
- package/dist/parser/lexer.js +4 -0
- package/dist/parser/lexer.js.map +1 -1
- package/dist/parser/parser.js +284 -4
- package/dist/parser/parser.js.map +1 -1
- package/dist/query/format.js +1 -0
- package/dist/query/format.js.map +1 -1
- package/dist/query/verbs.d.ts +4 -0
- package/dist/query/verbs.js +30 -3
- package/dist/query/verbs.js.map +1 -1
- package/dist/render/drawEdges.js +100 -4
- package/dist/render/drawEdges.js.map +1 -1
- package/dist/render/render.js +20 -2
- package/dist/render/render.js.map +1 -1
- package/dist/render/sliceDiagram.js +5 -5
- package/dist/render/sliceDiagram.js.map +1 -1
- package/dist/render/storylineBands.d.ts +11 -0
- package/dist/render/storylineBands.js +80 -0
- package/dist/render/storylineBands.js.map +1 -0
- package/dist/render/storylineDiagram.d.ts +14 -0
- package/dist/render/storylineDiagram.js +142 -0
- package/dist/render/storylineDiagram.js.map +1 -0
- package/dist/roster/check.d.ts +32 -0
- package/dist/roster/check.js +92 -0
- package/dist/roster/check.js.map +1 -0
- package/dist/roster/context.d.ts +3 -0
- package/dist/roster/context.js +23 -0
- package/dist/roster/context.js.map +1 -0
- package/dist/roster/init.d.ts +15 -0
- package/dist/roster/init.js +52 -0
- package/dist/roster/init.js.map +1 -0
- package/dist/roster/roster.d.ts +79 -0
- package/dist/roster/roster.js +298 -0
- package/dist/roster/roster.js.map +1 -0
- package/package.json +1 -1
- package/plugin/.claude-plugin/plugin.json +2 -2
- package/plugin/shared/reference/em-dsl.md +90 -5
- package/plugin/shared/reference/methodology.md +268 -0
- package/plugin/shared/reference/slice-doc-schema.md +96 -2
- package/plugin/shared/templates/slice.md +11 -3
- package/plugin/skills/conform/SKILL.md +1 -1
- package/plugin/skills/design/SKILL.md +46 -5
- package/plugin/skills/discover/SKILL.md +43 -8
- package/plugin/skills/discover/reference/extract.md +6 -1
- package/plugin/skills/discover/reference/prd-rubric.md +103 -0
- package/plugin/skills/discover/reference/prd-spec-path.md +172 -0
- package/plugin/skills/engagement/SKILL.md +8 -3
- package/plugin/skills/event-modeling/SKILL.md +1 -1
- package/plugin/skills/implement/SKILL.md +1 -1
- package/plugin/skills/implement/reference/implement.md +8 -0
- package/plugin/skills/review/SKILL.md +1 -1
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
// SPDX-License-Identifier: MIT
|
|
2
|
+
// GH #282: `em validate --shape` — the focused view of the advisory storyline-shape lints. A rule
|
|
3
|
+
// belongs to it by one field alone, `family: "shape"` on its RULES entry (model/rules.ts), so a new
|
|
4
|
+
// shape lint plugs in by registering that field; nothing here names a rule. Advisory by
|
|
5
|
+
// construction: this module only groups and partitions diagnostics the validator already computed,
|
|
6
|
+
// and the CLI exits 0 whatever it finds. `--waive-file` reuses `em refs`'s waiver file (one line per waiver, `#` comments, missing file = no waivers) so an estate can baseline accepted shapes.
|
|
7
|
+
import { RULES } from "../model/rules.js";
|
|
8
|
+
import { readWaiveFile } from "./refsCheck.js";
|
|
9
|
+
export { readWaiveFile };
|
|
10
|
+
/** Every registered rule code in the shape family, registry order. */
|
|
11
|
+
export function shapeRuleCodes() {
|
|
12
|
+
return Object.keys(RULES).filter((c) => RULES[c].family === "shape");
|
|
13
|
+
}
|
|
14
|
+
function parseWaivers(lines, codes) {
|
|
15
|
+
const waivers = [];
|
|
16
|
+
const stale = [];
|
|
17
|
+
for (const line of lines) {
|
|
18
|
+
const parts = line.split(/\s+/);
|
|
19
|
+
if (parts.length === 1)
|
|
20
|
+
waivers.push({ line, rule: null, key: parts[0], used: false });
|
|
21
|
+
else if (parts.length === 2 && codes.has(parts[0]))
|
|
22
|
+
waivers.push({ line, rule: parts[0], key: parts[1], used: false });
|
|
23
|
+
else
|
|
24
|
+
stale.push(line); // unknown rule code, or a malformed line
|
|
25
|
+
}
|
|
26
|
+
return { waivers, stale };
|
|
27
|
+
}
|
|
28
|
+
const under = (ref, key) => ref === key || ref.startsWith(`${key}/`);
|
|
29
|
+
export function buildShapeReport(diagnostics, waiveLines) {
|
|
30
|
+
const codes = shapeRuleCodes();
|
|
31
|
+
const { waivers, stale } = parseWaivers(waiveLines, new Set(codes));
|
|
32
|
+
const rules = codes.map((code) => {
|
|
33
|
+
const def = RULES[code];
|
|
34
|
+
const findings = [];
|
|
35
|
+
const waived = [];
|
|
36
|
+
for (const d of diagnostics.filter((x) => x.code === code)) {
|
|
37
|
+
const refs = d.refs ?? [];
|
|
38
|
+
// Waived when it has refs and every ref lies under a waiver that applies to this rule.
|
|
39
|
+
const applicable = waivers.filter((w) => w.rule === null || w.rule === code);
|
|
40
|
+
const covering = refs.length === 0 ? null : refs.map((r) => applicable.filter((w) => under(r, w.key)));
|
|
41
|
+
if (covering && covering.every((c) => c.length > 0)) {
|
|
42
|
+
waived.push(d);
|
|
43
|
+
for (const c of covering)
|
|
44
|
+
for (const w of c)
|
|
45
|
+
w.used = true;
|
|
46
|
+
}
|
|
47
|
+
else
|
|
48
|
+
findings.push(d);
|
|
49
|
+
}
|
|
50
|
+
return { code, title: def.title, docAnchor: def.docAnchor ?? "shape", findings, waived };
|
|
51
|
+
});
|
|
52
|
+
return {
|
|
53
|
+
rules,
|
|
54
|
+
findings: rules.reduce((n, r) => n + r.findings.length, 0),
|
|
55
|
+
waived: rules.reduce((n, r) => n + r.waived.length, 0),
|
|
56
|
+
staleWaivers: [...stale, ...waivers.filter((w) => !w.used).map((w) => w.line)],
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
/** Text table: rule, count, first ref, docs anchor; waived findings listed separately below. */
|
|
60
|
+
export function formatShapeText(report, modelErrors) {
|
|
61
|
+
const rows = report.rules.map((r) => [r.code, String(r.findings.length), r.findings[0]?.refs?.[0] ?? "-", `docs/validation.md#${r.docAnchor}`]);
|
|
62
|
+
const head = ["rule", "count", "first ref", "docs"];
|
|
63
|
+
const widths = head.map((h, i) => Math.max(h.length, ...rows.map((r) => r[i].length)));
|
|
64
|
+
const line = (cells) => cells.map((c, i) => c.padEnd(widths[i])).join(" ").trimEnd();
|
|
65
|
+
const out = [line(head), ...rows.map(line)];
|
|
66
|
+
if (report.waived > 0) {
|
|
67
|
+
out.push("", `waived (${report.waived}, not counted):`);
|
|
68
|
+
for (const r of report.rules)
|
|
69
|
+
for (const d of r.waived)
|
|
70
|
+
out.push(` ${r.code}: ${(d.refs ?? []).join(", ")}`);
|
|
71
|
+
}
|
|
72
|
+
out.push("", report.findings === 0 ? "ok — no shape findings" : `${report.findings} shape finding(s) — fix each, or record it as \`shape-accepted: <rule> <refs> — <reason>\` in \`.event-modeling.md\` \`## Decisions log\` (advisory: exit 0)`);
|
|
73
|
+
if (modelErrors > 0)
|
|
74
|
+
out.push(`note: the model has ${modelErrors} error(s) — run \`em validate\`; shape findings may be incomplete`);
|
|
75
|
+
return out.join("\n");
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=shape.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shape.js","sourceRoot":"","sources":["../../src/cli/shape.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/sliceIndex.d.ts
CHANGED
|
@@ -7,6 +7,10 @@ export declare const SLICE_INDEX_MARKER = "slices";
|
|
|
7
7
|
export interface SliceIndexRow {
|
|
8
8
|
index: number;
|
|
9
9
|
name: string;
|
|
10
|
+
/** GH #277: the `storyline` block the slice is declared in, or `—`. The column is only
|
|
11
|
+
* rendered when the model declares at least one storyline (see `buildSliceIndexTable`), so a
|
|
12
|
+
* model without storylines keeps its README table byte-identical. */
|
|
13
|
+
storyline: string;
|
|
10
14
|
pattern: string;
|
|
11
15
|
status: string;
|
|
12
16
|
/** MIL-201: the doc's `reviewedBy`, or `—`. Sits between Status and Ratified by so the two
|
|
@@ -18,7 +22,8 @@ export interface SliceIndexRow {
|
|
|
18
22
|
implementedIn: string;
|
|
19
23
|
/** MIL-214: `v<N> @ <rev>`, or `—` — see `conformedCell`. */
|
|
20
24
|
conformed: string;
|
|
21
|
-
|
|
25
|
+
/** Null when the slice has no doc bound (nothing to link to) — rendered as `—`. */
|
|
26
|
+
docPath: string | null;
|
|
22
27
|
}
|
|
23
28
|
export interface SliceIndexTable {
|
|
24
29
|
/** The full replacement body for the GENERATED:slices block — header + one row per slice
|
package/dist/cli/sliceIndex.js
CHANGED
|
@@ -59,29 +59,44 @@ function statusCell(doc, continuationOf) {
|
|
|
59
59
|
* doc-resolution convention `em export`/`em catalog` use for `slices/<key>.md`. */
|
|
60
60
|
export function buildSliceIndexTable(model, refs, baseDir) {
|
|
61
61
|
const diagnostics = [];
|
|
62
|
-
|
|
62
|
+
// GH #287: a continuation column synthesized from `view X again` inside another slice has no
|
|
63
|
+
// source slice block of its own, so it gets no row (and does not consume a row number).
|
|
64
|
+
const rows = [];
|
|
65
|
+
model.slices.forEach((slice, i) => {
|
|
66
|
+
if (slice.synthesized)
|
|
67
|
+
return;
|
|
63
68
|
const sliceKey = refs.sliceKeys[i];
|
|
64
69
|
const pattern = classifySlicePattern(slice);
|
|
65
70
|
const { doc, diagnostics: docDiags, continuationOf } = resolveSliceDocJoin(model, refs, slice, sliceKey, baseDir, (id) => refs.refById.get(id));
|
|
66
71
|
diagnostics.push(...docDiags);
|
|
67
|
-
|
|
68
|
-
index:
|
|
72
|
+
rows.push({
|
|
73
|
+
index: rows.length + 1,
|
|
69
74
|
name: slice.name,
|
|
75
|
+
storyline: slice.storyline ?? "—",
|
|
70
76
|
pattern: slicePatternLabel(pattern),
|
|
71
77
|
status: statusCell(doc, continuationOf),
|
|
72
|
-
|
|
73
|
-
|
|
78
|
+
// GH #275: a continuation row borrows its parent's doc, but the parent's review /
|
|
79
|
+
// ratify / tracking / implemented / conformed facts belong to the parent, not to this
|
|
80
|
+
// row — show `—` and keep only the `continuation of …` status.
|
|
81
|
+
reviewedBy: continuationOf ? "—" : (doc.reviewedBy ?? "—"),
|
|
82
|
+
ratifiedBy: continuationOf ? "—" : (doc.ratifiedBy ?? "—"),
|
|
74
83
|
owner: doc.owner ?? "—",
|
|
75
|
-
tracking: doc.tracking ?? "—",
|
|
76
|
-
implementedIn: doc.implementedIn ?? "—",
|
|
77
|
-
conformed: conformedCell(doc),
|
|
78
|
-
|
|
79
|
-
|
|
84
|
+
tracking: continuationOf ? "—" : (doc.tracking ?? "—"),
|
|
85
|
+
implementedIn: continuationOf ? "—" : (doc.implementedIn ?? "—"),
|
|
86
|
+
conformed: continuationOf ? "—" : conformedCell(doc),
|
|
87
|
+
// GH #275: `no-doc-bound` carries a made-up `slices/<key>.md` path that nothing backs.
|
|
88
|
+
docPath: !doc.found && doc.reason === "no-doc-bound" ? null : doc.path,
|
|
89
|
+
});
|
|
80
90
|
});
|
|
81
|
-
|
|
91
|
+
// GH #277: a Storyline column right after Slice, only for a model that declares storylines.
|
|
92
|
+
const withStoryline = (model.storylines ?? []).length > 0;
|
|
93
|
+
const header = withStoryline
|
|
94
|
+
? TABLE_HEADER.split("\n").map((l, n) => (n === 0 ? l.replace("| Slice |", "| Slice | Storyline |") : l.replace("|-------|", "|-------|-----------|"))).join("\n")
|
|
95
|
+
: TABLE_HEADER;
|
|
96
|
+
const lines = rows.map((r) => `| ${r.index} | ${escapeCell(r.name)} | ${withStoryline ? `${escapeCell(r.storyline)} | ` : ""}${escapeCell(r.pattern)} | ${escapeCell(r.status)} | ` +
|
|
82
97
|
`${escapeCell(r.reviewedBy)} | ${escapeCell(r.ratifiedBy)} | ${escapeCell(r.owner)} | ` +
|
|
83
|
-
`${escapeCell(r.tracking)} | ${escapeCell(r.implementedIn)} | ${escapeCell(r.conformed)} | [${r.docPath}](${r.docPath}) |`);
|
|
84
|
-
return { markdown: [
|
|
98
|
+
`${escapeCell(r.tracking)} | ${escapeCell(r.implementedIn)} | ${escapeCell(r.conformed)} | ${r.docPath ? `[${r.docPath}](${r.docPath})` : "—"} |`);
|
|
99
|
+
return { markdown: [header, ...lines].join("\n"), rows, diagnostics };
|
|
85
100
|
}
|
|
86
101
|
/**
|
|
87
102
|
* Rewrite (or, in `check` mode, verify) the GENERATED:slices block in `<dirname(emFilePath)>/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sliceIndex.js","sourceRoot":"","sources":["../../src/cli/sliceIndex.ts"],"names":[],"mappings":"AAAA,+BAA+B;AAC/B,6FAA6F;AAC7F,6FAA6F;AAC7F,sFAAsF;AACtF,iGAAiG;AACjG,EAAE;AACF,0FAA0F;AAC1F,uFAAuF;AACvF,+FAA+F;AAC/F,sDAAsD;AAEtD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAI1C,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AACjF,OAAO,EAAE,mBAAmB,EAAkB,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD;2EAC2E;AAC3E,MAAM,CAAC,MAAM,kBAAkB,GAAG,QAAQ,CAAC;AAE3C,MAAM,YAAY,GAChB,6HAA6H;IAC7H,2HAA2H,CAAC;AAE9H;;;;;2EAK2E;AAC3E,SAAS,aAAa,CAAC,GAAmB;IACxC,IAAI,GAAG,CAAC,gBAAgB,KAAK,IAAI,IAAI,GAAG,CAAC,WAAW,KAAK,IAAI;QAAE,OAAO,GAAG,CAAC;IAC1E,OAAO,IAAI,GAAG,CAAC,gBAAgB,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC;AACzD,CAAC;AAED;;yBAEyB;AACzB,SAAS,UAAU,CAAC,CAAS;IAC3B,wFAAwF;IACxF,yFAAyF;IACzF,wFAAwF;IACxF,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;AAC/E,CAAC;AAED;;;;;;;;;uDASuD;AACvD,SAAS,UAAU,CAAC,GAAmB,EAAE,cAA6B;IACpE,IAAI,cAAc;QAAE,OAAO,qBAAqB,cAAc,IAAI,CAAC;IACnE,IAAI,CAAC,GAAG,CAAC,KAAK;QAAE,OAAO,YAAY,CAAC;IACpC,OAAO,GAAG,CAAC,MAAM,IAAI,SAAS,CAAC;AACjC,CAAC;
|
|
1
|
+
{"version":3,"file":"sliceIndex.js","sourceRoot":"","sources":["../../src/cli/sliceIndex.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/sliceNew.d.ts
CHANGED
|
@@ -19,7 +19,10 @@ export declare function sliceDocKey(displayName: string): string;
|
|
|
19
19
|
* `em slice sync` fills once the doc is bound. Authored sections carry the template's
|
|
20
20
|
* placeholder bullets and stay hand-written.
|
|
21
21
|
*/
|
|
22
|
-
export declare function buildSliceDocContent(displayName: string, key: string, pattern: SlicePattern, swimlane: string, regions?: GeneratedRegion[]
|
|
22
|
+
export declare function buildSliceDocContent(displayName: string, key: string, pattern: SlicePattern, swimlane: string, regions?: GeneratedRegion[],
|
|
23
|
+
/** GH #278: the alternatives of an `event A | B @Ctx` line the slice records, in order —
|
|
24
|
+
* the scenario template gets one Then-case (one scenario) per alternative. */
|
|
25
|
+
alternatives?: string[]): string;
|
|
23
26
|
/**
|
|
24
27
|
* Build the full contents of a fresh, near-free `slices/<key>.md` STUB (MIL-184: `em slice new
|
|
25
28
|
* --stub` / `em slice stub-all`) — the same 5 frontmatter keys `buildSliceDocContent` writes
|
package/dist/cli/sliceNew.js
CHANGED
|
@@ -43,7 +43,10 @@ export function sliceDocKey(displayName) {
|
|
|
43
43
|
* `em slice sync` fills once the doc is bound. Authored sections carry the template's
|
|
44
44
|
* placeholder bullets and stay hand-written.
|
|
45
45
|
*/
|
|
46
|
-
export function buildSliceDocContent(displayName, key, pattern, swimlane, regions = placeholderRegions()
|
|
46
|
+
export function buildSliceDocContent(displayName, key, pattern, swimlane, regions = placeholderRegions(),
|
|
47
|
+
/** GH #278: the alternatives of an `event A | B @Ctx` line the slice records, in order —
|
|
48
|
+
* the scenario template gets one Then-case (one scenario) per alternative. */
|
|
49
|
+
alternatives = []) {
|
|
47
50
|
const block = (kind) => {
|
|
48
51
|
const out = [];
|
|
49
52
|
for (const r of regions) {
|
|
@@ -96,14 +99,28 @@ export function buildSliceDocContent(displayName, key, pattern, swimlane, region
|
|
|
96
99
|
INVARIANTS_ELABORATE_COMMENT,
|
|
97
100
|
``,
|
|
98
101
|
`## Scenarios (Given / When / Then)`,
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
102
|
+
...(alternatives.length > 1
|
|
103
|
+
? alternatives.flatMap((alt, i) => [
|
|
104
|
+
`### Scenario: Records ${alt}`,
|
|
105
|
+
`- **Given:**`,
|
|
106
|
+
` - {{starting state / prior events that make this the outcome}}`,
|
|
107
|
+
`- **When:**`,
|
|
108
|
+
` - {{command/trigger}}`,
|
|
109
|
+
`- **Then:**`,
|
|
110
|
+
` - ${alt} is recorded`,
|
|
111
|
+
` - {{resulting read-model change}}`,
|
|
112
|
+
...(i < alternatives.length - 1 ? [``] : []),
|
|
113
|
+
])
|
|
114
|
+
: [
|
|
115
|
+
`### Scenario: Happy path`,
|
|
116
|
+
`- **Given:**`,
|
|
117
|
+
` - {{starting state / prior events}}`,
|
|
118
|
+
`- **When:**`,
|
|
119
|
+
` - {{command/trigger}}`,
|
|
120
|
+
`- **Then:**`,
|
|
121
|
+
` - {{event(s) recorded}}`,
|
|
122
|
+
` - {{resulting read-model change}}`,
|
|
123
|
+
]),
|
|
107
124
|
``,
|
|
108
125
|
`## Alternate & Error Flows`,
|
|
109
126
|
`- {{e.g. external call fails → retry policy / compensating event}}`,
|
package/dist/cli/sliceNew.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sliceNew.js","sourceRoot":"","sources":["../../src/cli/sliceNew.ts"],"names":[],"mappings":"AAAA,+BAA+B;AAC/B,qFAAqF;AACrF,8FAA8F;AAC9F,0IAA0I;AAC1I,6FAA6F;AAC7F,4FAA4F;AAC5F,8FAA8F;AAC9F,+FAA+F;AAC/F,8FAA8F;AAC9F,+FAA+F;AAC/F,6FAA6F;AAC7F,EAAE;AACF,8FAA8F;AAC9F,oFAAoF;AACpF,6BAA6B;AAE7B,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAEL,4BAA4B,EAC5B,kBAAkB,EAClB,aAAa,EAEb,eAAe,GAChB,MAAM,6BAA6B,CAAC;AAErC,0FAA0F;AAC1F,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,CAAU,CAAC;AAGnG,MAAM,UAAU,cAAc,CAAC,KAAa;IAC1C,OAAQ,cAAoC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC/D,CAAC;AAED;;;8BAG8B;AAC9B,MAAM,cAAc,GAAG,CAAC,CAAC;AAEzB;;;6EAG6E;AAC7E,MAAM,UAAU,WAAW,CAAC,WAAmB;IAC7C,OAAO,SAAS,CAAC,WAAW,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,oBAAoB,CAClC,WAAmB,EACnB,GAAW,EACX,OAAqB,EACrB,QAAgB,EAChB,UAA6B,kBAAkB,EAAE;
|
|
1
|
+
{"version":3,"file":"sliceNew.js","sourceRoot":"","sources":["../../src/cli/sliceNew.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/status.d.ts
CHANGED
|
@@ -38,6 +38,11 @@ export interface SliceStatusFact {
|
|
|
38
38
|
/** MIL-283: a version of this slice has shipped (`doc.shipped`, the shipped record) — the fact
|
|
39
39
|
* conformance scope and `byStatus.shipped` read; `rawStatus`/`bucket` stay the WORKING status. */
|
|
40
40
|
shipped: boolean;
|
|
41
|
+
/** GH #285: the shipped version number and the doc's current `version:` — what lets `em status`
|
|
42
|
+
* say "implemented (v1) · draft v2 open" for a slice whose next version is open over a shipped
|
|
43
|
+
* one. Null when nothing shipped / no usable doc. */
|
|
44
|
+
shippedVersion?: number | null;
|
|
45
|
+
version?: number | null;
|
|
41
46
|
/** The doc's own `implementedIn:` value verbatim (or null) — carried through from the same
|
|
42
47
|
* `resolveSliceDocJoin` call this fact set already makes, so `resolveSlicePRsBehindHead`
|
|
43
48
|
* (MIL-164) can build its `SliceDocFacts[]` input from these facts directly rather than
|
|
@@ -285,6 +290,17 @@ export interface StatusSliceCounts {
|
|
|
285
290
|
frontmatterInvalid: number;
|
|
286
291
|
unknown: number;
|
|
287
292
|
};
|
|
293
|
+
/** GH #285 (status schema 1.11): slices whose next version is open (working status `draft`/
|
|
294
|
+
* `reviewed`/`ready-to-implement`) over a shipped one — `em slice mark-implemented`/`revise`
|
|
295
|
+
* leave a doc like this, and a bare `draft` count would read as "never implemented". In model
|
|
296
|
+
* order; `shippedVersion` < `version`. */
|
|
297
|
+
nextOpen: Array<{
|
|
298
|
+
file: string;
|
|
299
|
+
key: string;
|
|
300
|
+
shippedVersion: number;
|
|
301
|
+
version: number;
|
|
302
|
+
status: string;
|
|
303
|
+
}>;
|
|
288
304
|
}
|
|
289
305
|
export interface StatusDriftCounts {
|
|
290
306
|
inSync: number;
|
|
@@ -390,11 +406,15 @@ export interface StatusReport {
|
|
|
390
406
|
open: number;
|
|
391
407
|
slugs: string[];
|
|
392
408
|
};
|
|
409
|
+
/** GH #259 (status schema 1.12): the ratifier roster beside the first input model --
|
|
410
|
+
* `present` (`ratifiers.yaml` found and valid), `invalid` (found but unusable: `ratify`/`review`
|
|
411
|
+
* refuse), or `absent` (today's behaviour, any name accepted). */
|
|
412
|
+
roster: "present" | "absent" | "invalid";
|
|
393
413
|
}
|
|
394
414
|
/** Aggregate everything `em status` reports into one `StatusReport` — pure, no I/O. Callers
|
|
395
415
|
* (the CLI action, the MCP tool) resolve every input first (compile each model, join every
|
|
396
416
|
* slice's doc, scan the test tree once, resolve conformance) and hand the results here. */
|
|
397
|
-
export declare function buildStatusReport(files: string[], sliceFacts: SliceStatusFact[], openIssuesCount: number, invariants: StatusInvariantTotals | null, conformance: ConformanceEntry[], diagnostics: StatusDiagnostic[], modelVersion?: ModelVersionStatusEntry[], emVersion?: EmVersionStatusEntry[], system?: StatusReport["system"], engagements?: StatusReport["engagements"]): StatusReport;
|
|
417
|
+
export declare function buildStatusReport(files: string[], sliceFacts: SliceStatusFact[], openIssuesCount: number, invariants: StatusInvariantTotals | null, conformance: ConformanceEntry[], diagnostics: StatusDiagnostic[], modelVersion?: ModelVersionStatusEntry[], emVersion?: EmVersionStatusEntry[], system?: StatusReport["system"], engagements?: StatusReport["engagements"], roster?: StatusReport["roster"]): StatusReport;
|
|
398
418
|
/** Sum per-model `CoverageReport`s (see `./coverage.ts`) into one `StatusInvariantTotals` —
|
|
399
419
|
* `em status` doesn't need the per-slice/per-ID detail `em coverage --json` carries, just the
|
|
400
420
|
* totals, across however many models `--tests <dir>` was scanned against. */
|
package/dist/cli/status.js
CHANGED
|
@@ -78,6 +78,8 @@ export function resolveSliceStatusFacts(file, model, refs, baseDir) {
|
|
|
78
78
|
docPath,
|
|
79
79
|
rawStatus: doc.status,
|
|
80
80
|
shipped: doc.shipped !== null,
|
|
81
|
+
shippedVersion: doc.shipped?.version ?? null,
|
|
82
|
+
version: doc.version,
|
|
81
83
|
implementedIn: doc.implementedIn,
|
|
82
84
|
owner: doc.owner,
|
|
83
85
|
bucket: classifyStatusBucket(doc.found, doc.reason, doc.status),
|
|
@@ -339,8 +341,9 @@ export function resolveEmVersionStatusEntry(file, installedVersion) {
|
|
|
339
341
|
/** Aggregate everything `em status` reports into one `StatusReport` — pure, no I/O. Callers
|
|
340
342
|
* (the CLI action, the MCP tool) resolve every input first (compile each model, join every
|
|
341
343
|
* slice's doc, scan the test tree once, resolve conformance) and hand the results here. */
|
|
342
|
-
export function buildStatusReport(files, sliceFacts, openIssuesCount, invariants, conformance, diagnostics, modelVersion = [], emVersion = [], system = null, engagements = { open: 0, slugs: [] }) {
|
|
344
|
+
export function buildStatusReport(files, sliceFacts, openIssuesCount, invariants, conformance, diagnostics, modelVersion = [], emVersion = [], system = null, engagements = { open: 0, slugs: [] }, roster = "absent") {
|
|
343
345
|
const byStatus = { draft: 0, reviewed: 0, readyToImplement: 0, implemented: 0, shipped: 0, noDoc: 0, frontmatterInvalid: 0, unknown: 0 };
|
|
346
|
+
const nextOpen = [];
|
|
344
347
|
const drift = {
|
|
345
348
|
inSync: 0,
|
|
346
349
|
neverImplemented: 0,
|
|
@@ -372,6 +375,12 @@ export function buildStatusReport(files, sliceFacts, openIssuesCount, invariants
|
|
|
372
375
|
}
|
|
373
376
|
if (f.shipped)
|
|
374
377
|
byStatus.shipped++;
|
|
378
|
+
if (f.shippedVersion != null &&
|
|
379
|
+
f.version != null &&
|
|
380
|
+
f.version > f.shippedVersion &&
|
|
381
|
+
(f.bucket === "draft" || f.bucket === "reviewed" || f.bucket === "ready-to-implement")) {
|
|
382
|
+
nextOpen.push({ file: f.file, key: f.key, shippedVersion: f.shippedVersion, version: f.version, status: f.bucket });
|
|
383
|
+
}
|
|
375
384
|
switch (f.bucket) {
|
|
376
385
|
case "draft":
|
|
377
386
|
byStatus.draft++;
|
|
@@ -435,7 +444,7 @@ export function buildStatusReport(files, sliceFacts, openIssuesCount, invariants
|
|
|
435
444
|
}
|
|
436
445
|
return {
|
|
437
446
|
files,
|
|
438
|
-
slices: { total: sliceFacts.length, byStatus },
|
|
447
|
+
slices: { total: sliceFacts.length, byStatus, nextOpen },
|
|
439
448
|
continuations,
|
|
440
449
|
driftSignal: drift,
|
|
441
450
|
invariants,
|
|
@@ -448,6 +457,7 @@ export function buildStatusReport(files, sliceFacts, openIssuesCount, invariants
|
|
|
448
457
|
system,
|
|
449
458
|
publicSlicesUnconfirmed,
|
|
450
459
|
engagements,
|
|
460
|
+
roster,
|
|
451
461
|
};
|
|
452
462
|
}
|
|
453
463
|
/** Sum per-model `CoverageReport`s (see `./coverage.ts`) into one `StatusInvariantTotals` —
|
|
@@ -563,7 +573,10 @@ export function formatStatusSummary(report) {
|
|
|
563
573
|
const oqPart = (report.issues.openQuestionsUnchecked > 0 ? `, ${pluralize(report.issues.openQuestionsUnchecked, "unchecked open question")}` : "") +
|
|
564
574
|
(report.issues.queuedQuestions > 0 ? `, ${report.issues.queuedQuestions} deferred to a later version` : "");
|
|
565
575
|
const conformancePart = formatConformancePart(report.conformance[0]);
|
|
566
|
-
|
|
576
|
+
// GH #285: slices whose next version is open count under `draft`, not `implemented` — say so.
|
|
577
|
+
const k = report.slices.nextOpen.length;
|
|
578
|
+
const nextPart = k > 0 ? ` (+${k} shipped, next draft open)` : "";
|
|
579
|
+
return `${implemented}/${total} implemented${nextPart} · ${invPart} · ${issuesPart}${oqPart} · ${conformancePart}`;
|
|
567
580
|
}
|
|
568
581
|
/** The detail block below the summary line: one line per rollup dimension, plus one line per
|
|
569
582
|
* model's conformance entry. */
|
|
@@ -573,6 +586,11 @@ export function formatStatusDetail(report) {
|
|
|
573
586
|
lines.push(`slices: ${report.slices.total} total — ${byStatus.shipped} shipped (${byStatus.implemented} implemented), ${byStatus.readyToImplement} ready-to-implement, ` +
|
|
574
587
|
`${byStatus.reviewed} reviewed, ${byStatus.draft} draft, ${byStatus.noDoc} no doc, ${byStatus.frontmatterInvalid} frontmatter invalid, ` +
|
|
575
588
|
`${byStatus.unknown} unknown status`);
|
|
589
|
+
// GH #285: a slice whose next version is open over a shipped one counts under `draft` above;
|
|
590
|
+
// name each so it is not read as "never implemented".
|
|
591
|
+
for (const n of report.slices.nextOpen) {
|
|
592
|
+
lines.push(` ${n.key}: implemented (v${n.shippedVersion}) · ${n.status} v${n.version} open`);
|
|
593
|
+
}
|
|
576
594
|
// MIL-208: continuation slices (again-view-only, no doc of their own) are excluded from
|
|
577
595
|
// `byStatus`/`driftSignal` above (the originating slice's own status/drift already counts
|
|
578
596
|
// once) — named on their own line rather than silently missing from the total.
|
|
@@ -617,6 +635,7 @@ export function formatStatusDetail(report) {
|
|
|
617
635
|
}
|
|
618
636
|
// MIL-268: the open engagements line (always present; slugs only when there are any).
|
|
619
637
|
lines.push(`open engagements: ${report.engagements.open}${report.engagements.open > 0 ? ` (${report.engagements.slugs.join(", ")})` : ""}`);
|
|
638
|
+
lines.push(`roster: ${report.roster}`);
|
|
620
639
|
if (report.system)
|
|
621
640
|
lines.push(`consumer adaptation: ${report.system.consumerNotAdapted} not adapted (${report.system.manifest})`);
|
|
622
641
|
if (report.diagnostics.length > 0) {
|
|
@@ -648,6 +667,9 @@ export function formatStatusMarkdown(report) {
|
|
|
648
667
|
const { byStatus } = report.slices;
|
|
649
668
|
const rows = [
|
|
650
669
|
["Slices", `${byStatus.shipped}/${report.slices.total} shipped (${byStatus.implemented} implemented, ${byStatus.readyToImplement} ready-to-implement, ${byStatus.reviewed} reviewed, ${byStatus.draft} draft)`],
|
|
670
|
+
...(report.slices.nextOpen.length > 0
|
|
671
|
+
? [["Next versions open", report.slices.nextOpen.map((n) => `${n.key}: implemented (v${n.shippedVersion}) · ${n.status} v${n.version} open`).join("; ")]]
|
|
672
|
+
: []),
|
|
651
673
|
["Continuations", `${report.continuations}`],
|
|
652
674
|
["Invariants", report.invariants ? `${report.invariants.cited}/${report.invariants.total} covered` : "not checked"],
|
|
653
675
|
["Open issues", `${report.issues.openIssues}`],
|
package/dist/cli/status.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/cli/status.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/cli/status.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { NormalizedModel } from "../model/model.js";
|
|
2
|
+
export interface SuggestedStoryline {
|
|
3
|
+
name: string;
|
|
4
|
+
source?: string;
|
|
5
|
+
/** Indexes into `model.slices`, ascending. */
|
|
6
|
+
sliceIndexes: number[];
|
|
7
|
+
basis: "source" | "view-chain";
|
|
8
|
+
}
|
|
9
|
+
export interface StorylineSuggestion {
|
|
10
|
+
storylines: SuggestedStoryline[];
|
|
11
|
+
/** Slices left outside every storyline. */
|
|
12
|
+
ungrouped: number[];
|
|
13
|
+
/** Unified diff against the model text; "" when nothing is proposed. */
|
|
14
|
+
patch: string;
|
|
15
|
+
}
|
|
16
|
+
export declare function suggestStorylines(model: NormalizedModel): {
|
|
17
|
+
storylines: SuggestedStoryline[];
|
|
18
|
+
ungrouped: number[];
|
|
19
|
+
};
|
|
20
|
+
/** Index (0-based) of the line holding the `}` that closes the block opened on `start`. */
|
|
21
|
+
export declare function blockEnd(lines: string[], start: number): number;
|
|
22
|
+
/** The path used in the diff headers: relative to the cwd, no leading `./`, never absolute (`git apply`
|
|
23
|
+
* rejects `a/./x.em` and `a//abs/x.em`). A file outside the cwd falls back to its basename. */
|
|
24
|
+
export declare function diffPath(file: string): string;
|
|
25
|
+
/** `model` compiled from `text` (the file named `file` in the diff headers). */
|
|
26
|
+
export declare function buildStorylineSuggestion(model: NormalizedModel, text: string, file: string): StorylineSuggestion;
|