@jevitate/cli 0.12.0 → 0.13.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/dist/bin.js +48283 -47589
- package/dist/build-info.generated.js +2 -2
- package/dist/explore-cli/adversarial-strategy.d.ts +3 -0
- package/dist/explore-cli/adversarial-strategy.js +99 -0
- package/dist/explore-cli/adversarial-strategy.js.map +1 -0
- package/dist/explore-cli/coverage-strategy.d.ts +3 -0
- package/dist/explore-cli/coverage-strategy.js +95 -0
- package/dist/explore-cli/coverage-strategy.js.map +1 -0
- package/dist/explore-cli/feature-strategy.d.ts +3 -0
- package/dist/explore-cli/feature-strategy.js +59 -0
- package/dist/explore-cli/feature-strategy.js.map +1 -0
- package/dist/explore-cli/goal-strategy.d.ts +3 -0
- package/dist/explore-cli/goal-strategy.js +184 -0
- package/dist/explore-cli/goal-strategy.js.map +1 -0
- package/dist/explore-cli/options.d.ts +3 -0
- package/dist/explore-cli/options.js +155 -0
- package/dist/explore-cli/options.js.map +1 -0
- package/dist/explore-cli/run.d.ts +7 -0
- package/dist/explore-cli/run.js +682 -0
- package/dist/explore-cli/run.js.map +1 -0
- package/dist/explore-cli/shared.d.ts +158 -0
- package/dist/explore-cli/shared.js +20 -0
- package/dist/explore-cli/shared.js.map +1 -0
- package/dist/explore-cli/usability-strategy.d.ts +3 -0
- package/dist/explore-cli/usability-strategy.js +136 -0
- package/dist/explore-cli/usability-strategy.js.map +1 -0
- package/dist/explore-cli.d.ts +2 -2
- package/dist/explore-cli.js +2 -1347
- package/dist/explore-cli.js.map +1 -1
- package/dist/journey-anchor-api.d.ts +10 -9
- package/dist/journey-anchor-api.js +12 -22
- package/dist/journey-anchor-api.js.map +1 -1
- package/dist/journey-anchor-cli.d.ts +1 -1
- package/dist/journey-anchor-cli.js +10 -6
- package/dist/journey-anchor-cli.js.map +1 -1
- package/dist/journey-cli/anchors.d.ts +4 -0
- package/dist/journey-cli/anchors.js +48 -0
- package/dist/journey-cli/anchors.js.map +1 -0
- package/dist/journey-cli/find.d.ts +4 -0
- package/dist/journey-cli/find.js +44 -0
- package/dist/journey-cli/find.js.map +1 -0
- package/dist/journey-cli/lint.d.ts +4 -0
- package/dist/journey-cli/lint.js +76 -0
- package/dist/journey-cli/lint.js.map +1 -0
- package/dist/journey-cli/list.d.ts +4 -0
- package/dist/journey-cli/list.js +48 -0
- package/dist/journey-cli/list.js.map +1 -0
- package/dist/journey-cli/migrate.d.ts +4 -0
- package/dist/journey-cli/migrate.js +101 -0
- package/dist/journey-cli/migrate.js.map +1 -0
- package/dist/journey-cli/promote.d.ts +4 -0
- package/dist/journey-cli/promote.js +181 -0
- package/dist/journey-cli/promote.js.map +1 -0
- package/dist/journey-cli/publish.d.ts +4 -0
- package/dist/journey-cli/publish.js +70 -0
- package/dist/journey-cli/publish.js.map +1 -0
- package/dist/journey-cli/review.d.ts +4 -0
- package/dist/journey-cli/review.js +103 -0
- package/dist/journey-cli/review.js.map +1 -0
- package/dist/journey-cli/run.d.ts +4 -0
- package/dist/journey-cli/run.js +244 -0
- package/dist/journey-cli/run.js.map +1 -0
- package/dist/journey-cli/shared.d.ts +9 -0
- package/dist/journey-cli/shared.js +12 -0
- package/dist/journey-cli/shared.js.map +1 -0
- package/dist/journey-cli/verify.d.ts +4 -0
- package/dist/journey-cli/verify.js +125 -0
- package/dist/journey-cli/verify.js.map +1 -0
- package/dist/journey-cli.d.ts +3 -2
- package/dist/journey-cli.js +21 -949
- package/dist/journey-cli.js.map +1 -1
- package/dist/journey-review/render.d.ts +43 -0
- package/dist/journey-review/render.js +461 -0
- package/dist/journey-review/render.js.map +1 -0
- package/dist/journey-review.d.ts +1 -4
- package/dist/journey-review.js +16 -391
- package/dist/journey-review.js.map +1 -1
- package/dist/log-sources.js +17 -1
- package/dist/log-sources.js.map +1 -1
- package/dist/mcp-api.js +16 -821
- package/dist/mcp-api.js.map +1 -1
- package/dist/mcp-cli-tools.js +12 -4
- package/dist/mcp-cli-tools.js.map +1 -1
- package/dist/mcp-tools/cli.d.ts +3 -0
- package/dist/mcp-tools/cli.js +20 -0
- package/dist/mcp-tools/cli.js.map +1 -0
- package/dist/mcp-tools/explore.d.ts +3 -0
- package/dist/mcp-tools/explore.js +141 -0
- package/dist/mcp-tools/explore.js.map +1 -0
- package/dist/mcp-tools/findings.d.ts +3 -0
- package/dist/mcp-tools/findings.js +277 -0
- package/dist/mcp-tools/findings.js.map +1 -0
- package/dist/mcp-tools/inbox.d.ts +3 -0
- package/dist/mcp-tools/inbox.js +106 -0
- package/dist/mcp-tools/inbox.js.map +1 -0
- package/dist/mcp-tools/journey.d.ts +3 -0
- package/dist/mcp-tools/journey.js +260 -0
- package/dist/mcp-tools/journey.js.map +1 -0
- package/dist/mcp-tools/shared.d.ts +39 -0
- package/dist/mcp-tools/shared.js +69 -0
- package/dist/mcp-tools/shared.js.map +1 -0
- package/dist/sweep-api.d.ts +9 -0
- package/dist/sweep-api.js +70 -2
- package/dist/sweep-api.js.map +1 -1
- package/dist/sweep-cli.d.ts +2 -0
- package/dist/sweep-cli.js +22 -5
- package/dist/sweep-cli.js.map +1 -1
- package/dist/ux-usability/analysis.d.ts +14 -0
- package/dist/ux-usability/analysis.js +106 -0
- package/dist/ux-usability/analysis.js.map +1 -0
- package/dist/ux-usability/done-adjudication.d.ts +15 -0
- package/dist/ux-usability/done-adjudication.js +56 -0
- package/dist/ux-usability/done-adjudication.js.map +1 -0
- package/dist/ux-usability/hang.d.ts +5 -0
- package/dist/ux-usability/hang.js +41 -0
- package/dist/ux-usability/hang.js.map +1 -0
- package/dist/ux-usability/loop.d.ts +15 -0
- package/dist/ux-usability/loop.js +104 -0
- package/dist/ux-usability/loop.js.map +1 -0
- package/dist/ux-usability/observe.d.ts +7 -0
- package/dist/ux-usability/observe.js +89 -0
- package/dist/ux-usability/observe.js.map +1 -0
- package/dist/ux-usability/result.d.ts +11 -0
- package/dist/ux-usability/result.js +113 -0
- package/dist/ux-usability/result.js.map +1 -0
- package/dist/ux-usability/setup.d.ts +75 -0
- package/dist/ux-usability/setup.js +203 -0
- package/dist/ux-usability/setup.js.map +1 -0
- package/dist/ux-usability/teardown.d.ts +3 -0
- package/dist/ux-usability/teardown.js +13 -0
- package/dist/ux-usability/teardown.js.map +1 -0
- package/dist/ux-usability.d.ts +14 -17
- package/dist/ux-usability.js +15 -589
- package/dist/ux-usability.js.map +1 -1
- package/package.json +7 -7
package/dist/explore-cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"explore-cli.js","sourceRoot":"","sources":["../src/explore-cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"explore-cli.js","sourceRoot":"","sources":["../src/explore-cli.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAgB,EAAE,IAAa,EAAE,YAAwC;IAC/G,kBAAkB,CAAC,OAAO,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;AAClD,CAAC"}
|
|
@@ -1,28 +1,29 @@
|
|
|
1
1
|
import { AnchorEditError, type AddAnchorInput, type AnchorLintIssue, type AnchorSuggestion, type StampedAnchor } from "@jevitate/journey";
|
|
2
2
|
/**
|
|
3
|
-
* #487: edit a
|
|
3
|
+
* #487/#507: edit a Journey's anchors (`journey anchor add|remove`, `journey lint --fix`) — the API
|
|
4
4
|
* both the CLI and MCP call. Each edit writes the Journey (step ids minted and anchors stamped the
|
|
5
|
-
* way `promote` does) and returns the anchor lint issues that remain.
|
|
5
|
+
* way `promote` does) and returns the anchor lint issues that remain. On a PROMOTED Journey (#507)
|
|
6
|
+
* add/remove still work: it stays promoted with its old approval kept (as after `migrate --step-ids`),
|
|
7
|
+
* the approval is now stale, and the result carries the re-approval command. `journey lint --fix` does the same.
|
|
6
8
|
*/
|
|
7
|
-
/** A PROMOTED Journey's anchors changed: its approval binds to the content hash, so the edit would silently void it. Exit 64. */
|
|
8
|
-
export declare class PromotedJourneyEditError extends Error {
|
|
9
|
-
readonly code = "E_JOURNEY_ANCHOR_ARGS";
|
|
10
|
-
constructor(id: string);
|
|
11
|
-
}
|
|
12
9
|
export interface AnchorEditResult {
|
|
13
10
|
readonly journeyId: string;
|
|
14
11
|
/** The Journey's anchor-rule problems after the edit (warnings; empty when it complies). */
|
|
15
12
|
readonly issues: readonly AnchorLintIssue[];
|
|
13
|
+
/** #507: true (only) when the edited Journey is promoted — its approval is now stale until a person re-approves. */
|
|
14
|
+
readonly needsReapproval?: true;
|
|
15
|
+
/** #507: with `needsReapproval`: `jevitate journey promote <id> --reviewed-hash <new review hash>`. */
|
|
16
|
+
readonly reapproveCommand?: string;
|
|
16
17
|
}
|
|
17
18
|
export interface AnchorFixResult extends AnchorEditResult {
|
|
18
19
|
/** The anchors given a step id (empty: nothing needed it, nothing was written). */
|
|
19
20
|
readonly stamped: readonly StampedAnchor[];
|
|
20
21
|
}
|
|
21
|
-
/** Adds an anchor (`stepId` written at once). Throws `UnknownJourneyError`, `
|
|
22
|
+
/** Adds an anchor (`stepId` written at once). Throws `UnknownJourneyError`, `AnchorEditError`. */
|
|
22
23
|
export declare function addJourneyAnchor(dir: string, id: string, input: AddAnchorInput): Promise<AnchorEditResult>;
|
|
23
24
|
/** Removes the named anchor. Throws as `addJourneyAnchor`. */
|
|
24
25
|
export declare function removeJourneyAnchor(dir: string, id: string, name: string): Promise<AnchorEditResult>;
|
|
25
|
-
/** `journey lint --fix`: stamps each number-only anchor with its step's id and writes the Journey. Nothing to stamp: nothing written
|
|
26
|
+
/** `journey lint --fix`: stamps each number-only anchor with its step's id and writes the Journey (#507: a promoted one too — its approval goes stale). Nothing to stamp: nothing written. */
|
|
26
27
|
export declare function fixJourneyAnchors(dir: string, id: string): Promise<AnchorFixResult>;
|
|
27
28
|
export interface AnchorSuggestResult {
|
|
28
29
|
readonly journeyId: string;
|
|
@@ -1,18 +1,6 @@
|
|
|
1
1
|
import { AnchorEditError, FsJourneyStore, JourneyRegistry, addAnchor, anchorAddCommand, anchorLintIssues, removeAnchor, suggestAnchors, stampUnstampedAnchors } from "@jevitate/journey";
|
|
2
2
|
import { UnknownJourneyError } from "./journey-api.js";
|
|
3
|
-
|
|
4
|
-
* #487: edit a draft Journey's anchors (`journey anchor add|remove`, `journey lint --fix`) — the API
|
|
5
|
-
* both the CLI and MCP call. Each edit writes the Journey (step ids minted and anchors stamped the
|
|
6
|
-
* way `promote` does) and returns the anchor lint issues that remain.
|
|
7
|
-
*/
|
|
8
|
-
/** A PROMOTED Journey's anchors changed: its approval binds to the content hash, so the edit would silently void it. Exit 64. */
|
|
9
|
-
export class PromotedJourneyEditError extends Error {
|
|
10
|
-
code = "E_JOURNEY_ANCHOR_ARGS";
|
|
11
|
-
constructor(id) {
|
|
12
|
-
super(`journey '${id}' is promoted: changing its anchors changes the content hash its approval is bound to (stamping a step id included, since the hash covers it). ` +
|
|
13
|
-
`Edit it as a draft and re-promote — jevitate journey review ${id}, then jevitate journey promote ${id} — a person re-approves the new content`);
|
|
14
|
-
}
|
|
15
|
-
}
|
|
3
|
+
import { journeyReviewHash } from "./journey-review.js";
|
|
16
4
|
async function load(dir, id) {
|
|
17
5
|
const store = new FsJourneyStore(dir);
|
|
18
6
|
const journey = await new JourneyRegistry(store).get(id);
|
|
@@ -20,16 +8,20 @@ async function load(dir, id) {
|
|
|
20
8
|
throw new UnknownJourneyError(`unknown journey '${id}'`);
|
|
21
9
|
return { store, journey };
|
|
22
10
|
}
|
|
11
|
+
/** The result for a Journey just written: its anchor issues, plus (#507) the re-approval a promoted one now needs. */
|
|
12
|
+
function written(id, journey) {
|
|
13
|
+
const issues = anchorLintIssues(journey);
|
|
14
|
+
if (!journey.metadata.promoted)
|
|
15
|
+
return { journeyId: id, issues };
|
|
16
|
+
return { journeyId: id, issues, needsReapproval: true, reapproveCommand: `jevitate journey promote ${id} --reviewed-hash ${journeyReviewHash(journey)}` };
|
|
17
|
+
}
|
|
23
18
|
async function edit(dir, id, change) {
|
|
24
19
|
const { store, journey } = await load(dir, id);
|
|
25
|
-
if (journey.metadata.promoted)
|
|
26
|
-
throw new PromotedJourneyEditError(id);
|
|
27
20
|
const next = change(journey);
|
|
28
21
|
await store.put(next);
|
|
29
|
-
|
|
30
|
-
return { journeyId: id, issues: anchorLintIssues(written) };
|
|
22
|
+
return written(id, (await store.get(id)) ?? next);
|
|
31
23
|
}
|
|
32
|
-
/** Adds an anchor (`stepId` written at once). Throws `UnknownJourneyError`, `
|
|
24
|
+
/** Adds an anchor (`stepId` written at once). Throws `UnknownJourneyError`, `AnchorEditError`. */
|
|
33
25
|
export function addJourneyAnchor(dir, id, input) {
|
|
34
26
|
return edit(dir, id, (j) => addAnchor(j, input));
|
|
35
27
|
}
|
|
@@ -37,16 +29,14 @@ export function addJourneyAnchor(dir, id, input) {
|
|
|
37
29
|
export function removeJourneyAnchor(dir, id, name) {
|
|
38
30
|
return edit(dir, id, (j) => removeAnchor(j, name));
|
|
39
31
|
}
|
|
40
|
-
/** `journey lint --fix`: stamps each number-only anchor with its step's id and writes the Journey. Nothing to stamp: nothing written
|
|
32
|
+
/** `journey lint --fix`: stamps each number-only anchor with its step's id and writes the Journey (#507: a promoted one too — its approval goes stale). Nothing to stamp: nothing written. */
|
|
41
33
|
export async function fixJourneyAnchors(dir, id) {
|
|
42
34
|
const { store, journey } = await load(dir, id);
|
|
43
35
|
const { journey: next, stamped } = stampUnstampedAnchors(journey);
|
|
44
36
|
if (stamped.length === 0)
|
|
45
37
|
return { journeyId: id, issues: anchorLintIssues(journey), stamped };
|
|
46
|
-
if (journey.metadata.promoted)
|
|
47
|
-
throw new PromotedJourneyEditError(id);
|
|
48
38
|
await store.put(next);
|
|
49
|
-
return {
|
|
39
|
+
return { ...written(id, (await store.get(id)) ?? next), stamped };
|
|
50
40
|
}
|
|
51
41
|
/** `journey anchors --suggest`: anchors worth adding where the recorded flow changes state. Writes nothing. */
|
|
52
42
|
export async function suggestJourneyAnchors(dir, id, readRequests) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"journey-anchor-api.js","sourceRoot":"","sources":["../src/journey-anchor-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,eAAe,EAAE,SAAS,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,YAAY,EAAE,cAAc,EAAE,qBAAqB,EAAsG,MAAM,mBAAmB,CAAC;AAC7R,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"journey-anchor-api.js","sourceRoot":"","sources":["../src/journey-anchor-api.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import { type CliDeps } from "./cli-shared.js";
|
|
|
3
3
|
/** Maps an edit failure to its envelope: unknown id and refused edits are usage errors (64). */
|
|
4
4
|
export declare function anchorEditFailure(program: Command, err: unknown): void;
|
|
5
5
|
/**
|
|
6
|
-
* #487 — `jevitate journey anchor add|remove`: edit a
|
|
6
|
+
* #487 — `jevitate journey anchor add|remove`: edit a Journey's anchors without hand-editing
|
|
7
7
|
* `metadata.anchors`. The step id is written at once; the anchor lint issues that remain are printed.
|
|
8
8
|
*/
|
|
9
9
|
export declare function registerJourneyAnchorCommands(journey: Command, program: Command, deps: CliDeps): void;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ok, fail } from "./envelope.js";
|
|
2
2
|
import { UnknownJourneyError } from "./journey-api.js";
|
|
3
|
-
import { AnchorEditError,
|
|
3
|
+
import { AnchorEditError, addJourneyAnchor, removeJourneyAnchor, suggestJourneyAnchors } from "./journey-anchor-api.js";
|
|
4
4
|
import { emitJson, resolveJourneysDir } from "./cli-shared.js";
|
|
5
5
|
function collect(value, prev) {
|
|
6
6
|
return [...prev, value];
|
|
@@ -10,25 +10,29 @@ function renderIssues(result, out) {
|
|
|
10
10
|
for (const i of result.issues)
|
|
11
11
|
out?.(`${i.severity}\t${i.code}\t${i.message}\n\t fix: ${i.fix}\n`);
|
|
12
12
|
out?.(`${result.issues.length} anchor issue(s) — journey '${result.journeyId}'\n`);
|
|
13
|
+
if (result.needsReapproval) {
|
|
14
|
+
out?.(`journey '${result.journeyId}' is promoted: its approval is now stale (kept for the review diff; \`journey review --stale\` lists it, \`check --require-approvals\` fails it)\n`);
|
|
15
|
+
out?.(`re-approve after review: ${result.reapproveCommand}\n`);
|
|
16
|
+
}
|
|
13
17
|
}
|
|
14
18
|
/** Maps an edit failure to its envelope: unknown id and refused edits are usage errors (64). */
|
|
15
19
|
export function anchorEditFailure(program, err) {
|
|
16
20
|
if (err instanceof UnknownJourneyError)
|
|
17
21
|
emitJson(program, fail("E_UNKNOWN_JOURNEY", err.message));
|
|
18
|
-
else if (err instanceof AnchorEditError
|
|
22
|
+
else if (err instanceof AnchorEditError)
|
|
19
23
|
emitJson(program, fail("E_JOURNEY_ANCHOR_ARGS", err.message));
|
|
20
24
|
else
|
|
21
25
|
emitJson(program, fail("E_JOURNEY_ANCHOR_ARGS", String(err instanceof Error ? err.message : err)));
|
|
22
26
|
}
|
|
23
27
|
/**
|
|
24
|
-
* #487 — `jevitate journey anchor add|remove`: edit a
|
|
28
|
+
* #487 — `jevitate journey anchor add|remove`: edit a Journey's anchors without hand-editing
|
|
25
29
|
* `metadata.anchors`. The step id is written at once; the anchor lint issues that remain are printed.
|
|
26
30
|
*/
|
|
27
31
|
export function registerJourneyAnchorCommands(journey, program, deps) {
|
|
28
|
-
const anchor = journey.command("anchor").description("add or remove a
|
|
32
|
+
const anchor = journey.command("anchor").description("add or remove a Journey's anchors (#487): named steps to branch missions off, written with the step's stable id; on a promoted Journey the approval goes stale (#507)");
|
|
29
33
|
anchor
|
|
30
34
|
.command("add <journeyId>")
|
|
31
|
-
.description("add an anchor to a
|
|
35
|
+
.description("add an anchor to a Journey: --step takes a 1-based step number or a step id and writes the step id at once; re-lints and prints the anchor issues")
|
|
32
36
|
.requiredOption("--name <name>", "the anchor's name: 1-64 of lowercase a-z, 0-9, . _ - starting with a letter or digit")
|
|
33
37
|
.requiredOption("--step <n|stepId>", "the step the anchor follows: a 1-based step number or a step id")
|
|
34
38
|
.option("--description <text>", "what this state is, in words")
|
|
@@ -54,7 +58,7 @@ export function registerJourneyAnchorCommands(journey, program, deps) {
|
|
|
54
58
|
});
|
|
55
59
|
anchor
|
|
56
60
|
.command("remove <journeyId>")
|
|
57
|
-
.description("remove an anchor from a
|
|
61
|
+
.description("remove an anchor from a Journey; re-lints and prints the anchor issues")
|
|
58
62
|
.requiredOption("--name <name>", "the anchor to remove")
|
|
59
63
|
.option("--dir <path>", "journeys directory (default: the repo's .jevitate/journeys; outside a repo ~/.jevitate/journeys)")
|
|
60
64
|
.option("--json", "emit a JSON envelope")
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"journey-anchor-cli.js","sourceRoot":"","sources":["../src/journey-anchor-cli.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,
|
|
1
|
+
{"version":3,"file":"journey-anchor-cli.js","sourceRoot":"","sources":["../src/journey-anchor-cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { FsJourneyStore, JourneyRegistry, journeyStepCount, listJourneyAnchors } from "@jevitate/journey";
|
|
2
|
+
import { ok, fail } from "../envelope.js";
|
|
3
|
+
import { runAnchorSuggest } from "../journey-anchor-cli.js";
|
|
4
|
+
import { resolveJourneysDir, emitJson } from "../cli-shared.js";
|
|
5
|
+
/** Registers `jevitate journey anchors`. */
|
|
6
|
+
export function registerJourneyAnchors(journey, program, deps) {
|
|
7
|
+
// #293 — the named states worth exploring from (`explore --from-journey <id> --at-step <name>`).
|
|
8
|
+
journey
|
|
9
|
+
.command("anchors <id>")
|
|
10
|
+
.description("list a Journey's anchors (#293): named steps to branch a mission off with `explore --from-journey <id> --at-step <name>`, and their suggested probes")
|
|
11
|
+
.option("--suggest", "propose anchors where the recorded flow changes state (a new page, a form that became valid, a completed write), each with the `journey anchor add` command to accept it; advisory, writes nothing (#487)")
|
|
12
|
+
.option("--dir <path>", "journeys directory (default: the repo's .jevitate/journeys; outside a repo ~/.jevitate/journeys)")
|
|
13
|
+
.option("--json", "emit a JSON envelope")
|
|
14
|
+
.action(async function (id) {
|
|
15
|
+
const { dir, json, suggest } = this.opts();
|
|
16
|
+
if (suggest) {
|
|
17
|
+
await runAnchorSuggest(program, deps, id, { dir, json });
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
try {
|
|
21
|
+
const found = await new JourneyRegistry(new FsJourneyStore(resolveJourneysDir(deps, dir))).get(id);
|
|
22
|
+
if (found === null) {
|
|
23
|
+
emitJson(program, fail("E_UNKNOWN_JOURNEY", `unknown journey '${id}'`));
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
const data = { journeyId: found.metadata.id, promoted: found.metadata.promoted, steps: journeyStepCount(found), anchors: listJourneyAnchors(found) };
|
|
27
|
+
if (json) {
|
|
28
|
+
emitJson(program, ok(data));
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
const out = program.configureOutput().writeOut;
|
|
32
|
+
if (data.anchors.length === 0) {
|
|
33
|
+
out?.(`journey '${data.journeyId}' declares no anchors — branch off a step number instead (--at-step 1..${data.steps}), or add metadata.anchors\n`);
|
|
34
|
+
}
|
|
35
|
+
for (const a of data.anchors) {
|
|
36
|
+
out?.(`${a.name}\tstep ${a.step}\tafter: ${a.afterStep}${a.description === undefined ? "" : `\t${a.description}`}${a.probes.length === 0 ? "" : `\tprobes: ${a.probes.join("; ")}`}\n`);
|
|
37
|
+
}
|
|
38
|
+
if (!data.promoted)
|
|
39
|
+
out?.(`note: journey '${data.journeyId}' is not promoted — missions branch only off promoted Journeys\n`);
|
|
40
|
+
process.exitCode = 0;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
catch (err) {
|
|
44
|
+
emitJson(program, fail("E_JOURNEY_ANCHORS_ARGS", String(err instanceof Error ? err.message : err)));
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=anchors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"anchors.js","sourceRoot":"","sources":["../../src/journey-cli/anchors.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { FsJourneyStore, JourneyRegistry } from "@jevitate/journey";
|
|
2
|
+
import { ok, fail } from "../envelope.js";
|
|
3
|
+
import { resolveJourneysDir, emitJson } from "../cli-shared.js";
|
|
4
|
+
/** Registers `jevitate journey find`. */
|
|
5
|
+
export function registerJourneyFind(journey, program, deps) {
|
|
6
|
+
// RULING 5: uses `JourneyRegistry.find` (from `@jevitate/journey`) directly —
|
|
7
|
+
// NEVER `@jevitate/mcp-facade`'s `findCapabilities` — Slice 1 forbids the CLI
|
|
8
|
+
// depending on `@jevitate/mcp-facade`. `JourneyRegistry.find` is already
|
|
9
|
+
// promoted-only, so this is the same promoted-only view without the
|
|
10
|
+
// forbidden dependency.
|
|
11
|
+
journey
|
|
12
|
+
.command("find <query>")
|
|
13
|
+
.option("--dir <path>", "journeys directory (default: the repo's .jevitate/journeys; outside a repo ~/.jevitate/journeys)")
|
|
14
|
+
.option("--json", "emit a JSON envelope")
|
|
15
|
+
.action(async function (query) {
|
|
16
|
+
const { dir, json } = this.opts();
|
|
17
|
+
try {
|
|
18
|
+
const store = new FsJourneyStore(resolveJourneysDir(deps, dir));
|
|
19
|
+
const registry = new JourneyRegistry(store);
|
|
20
|
+
const metas = await registry.find(query);
|
|
21
|
+
const capabilities = metas.map((m) => ({
|
|
22
|
+
id: m.id,
|
|
23
|
+
name: m.name,
|
|
24
|
+
description: m.description,
|
|
25
|
+
params: m.params,
|
|
26
|
+
}));
|
|
27
|
+
const envelope = ok(capabilities);
|
|
28
|
+
if (json) {
|
|
29
|
+
emitJson(program, envelope);
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
const out = program.configureOutput().writeOut;
|
|
33
|
+
for (const c of capabilities) {
|
|
34
|
+
out?.(`${c.id}\t${c.name}\tparams=[${c.params.join(", ")}]\n`);
|
|
35
|
+
}
|
|
36
|
+
process.exitCode = 0;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
catch (err) {
|
|
40
|
+
emitJson(program, fail("E_JOURNEY_FIND", String(err)));
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=find.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"find.js","sourceRoot":"","sources":["../../src/journey-cli/find.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAgB,kBAAkB,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE9E,yCAAyC;AACzC,MAAM,UAAU,mBAAmB,CAAC,OAAgB,EAAE,OAAgB,EAAE,IAAa;IACnF,8EAA8E;IAC9E,8EAA8E;IAC9E,yEAAyE;IACzE,oEAAoE;IACpE,wBAAwB;IACxB,OAAO;SACJ,OAAO,CAAC,cAAc,CAAC;SACvB,MAAM,CAAC,cAAc,EAAE,kGAAkG,CAAC;SAC1H,MAAM,CAAC,QAAQ,EAAE,sBAAsB,CAAC;SACxC,MAAM,CAAC,KAAK,WAA0B,KAAa;QAClD,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI,EAAoC,CAAC;QACpE,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,IAAI,cAAc,CAAC,kBAAkB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;YAChE,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,KAAK,CAAC,CAAC;YAC5C,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACzC,MAAM,YAAY,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACrC,EAAE,EAAE,CAAC,CAAC,EAAE;gBACR,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,MAAM,EAAE,CAAC,CAAC,MAAM;aACjB,CAAC,CAAC,CAAC;YACJ,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC;YAClC,IAAI,IAAI,EAAE,CAAC;gBACT,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC9B,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,QAAQ,CAAC;gBAC/C,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;oBAC7B,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACjE,CAAC;gBACD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACzD,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { writeFile } from "node:fs/promises";
|
|
2
|
+
import { ok, fail } from "../envelope.js";
|
|
3
|
+
import { lintJourneyById, UnknownJourneyError } from "../journey-api.js";
|
|
4
|
+
import { resolveCatalogDir } from "../catalog-api.js";
|
|
5
|
+
import { anchorEditFailure } from "../journey-anchor-cli.js";
|
|
6
|
+
import { fixJourneyAnchors } from "../journey-anchor-api.js";
|
|
7
|
+
import { currentEngineInfo } from "../engine.js";
|
|
8
|
+
import { renderJourneyLintSarif } from "../journey-lint-sarif.js";
|
|
9
|
+
import { resolveJourneysDir, emitJson } from "../cli-shared.js";
|
|
10
|
+
import { lintFindingLine } from "./shared.js";
|
|
11
|
+
/** Registers `jevitate journey lint`. */
|
|
12
|
+
export function registerJourneyLint(journey, program, deps) {
|
|
13
|
+
// #401 — the assertion-strength lint: which assertions cannot prove the Journey's outcome. CI can
|
|
14
|
+
// gate on it (`--json`/`--sarif`, exit 1 when any error); `promote` runs the same lint first.
|
|
15
|
+
journey
|
|
16
|
+
.command("lint <id>")
|
|
17
|
+
.description("report a Journey's weak assertions (writes without an asserted effect, visibility-only claims, nothing after the last write, …)")
|
|
18
|
+
.option("--dir <path>", "journeys directory (default: the repo's .jevitate/journeys; outside a repo ~/.jevitate/journeys)")
|
|
19
|
+
.option("--sarif <file>", "also write a SARIF 2.1.0 log here")
|
|
20
|
+
.option("--fix", "#487: stamp the step id of each anchor that references a step by number only, write the Journey (#507: on a promoted Journey its approval goes stale), and report what was fixed")
|
|
21
|
+
.option("--json", "emit a JSON envelope")
|
|
22
|
+
.action(async function (id) {
|
|
23
|
+
const { dir, json, sarif, fix } = this.opts();
|
|
24
|
+
try {
|
|
25
|
+
let fixResult;
|
|
26
|
+
if (fix === true) {
|
|
27
|
+
try {
|
|
28
|
+
fixResult = await fixJourneyAnchors(resolveJourneysDir(deps, dir), id);
|
|
29
|
+
}
|
|
30
|
+
catch (err) {
|
|
31
|
+
if (err instanceof UnknownJourneyError)
|
|
32
|
+
throw err;
|
|
33
|
+
anchorEditFailure(program, err);
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
const fixed = fixResult?.stamped ?? [];
|
|
38
|
+
// #507: stamping a promoted Journey makes its approval stale — say so, with the re-approval command.
|
|
39
|
+
const reapproval = fixResult?.needsReapproval === true ? { needsReapproval: true, reapproveCommand: fixResult.reapproveCommand } : {};
|
|
40
|
+
const result = await lintJourneyById(resolveJourneysDir(deps, dir), id, { catalogDir: resolveCatalogDir(deps.catalogDir) });
|
|
41
|
+
if (sarif !== undefined) {
|
|
42
|
+
const log = renderJourneyLintSarif({ id: result.id, findings: result.findings, version: currentEngineInfo().version });
|
|
43
|
+
await writeFile(sarif, `${JSON.stringify(log, null, 2)}\n`);
|
|
44
|
+
}
|
|
45
|
+
if (json) {
|
|
46
|
+
emitJson(program, ok({ id: result.id, findings: result.findings, errors: result.errors, warnings: result.warnings, ...(fix === true ? { fixed, ...reapproval } : {}) }));
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
const out = program.configureOutput().writeOut;
|
|
50
|
+
if (fix === true) {
|
|
51
|
+
for (const a of fixed)
|
|
52
|
+
out?.(`fixed: anchor '${a.name}' now carries stepId '${a.stepId}' (step ${a.step})\n`);
|
|
53
|
+
if (fixed.length === 0)
|
|
54
|
+
out?.("fixed: nothing — no anchor references a step by number only\n");
|
|
55
|
+
if (fixResult?.needsReapproval === true) {
|
|
56
|
+
out?.(`journey '${id}' is promoted: its approval is now stale (kept for the review diff; \`journey review --stale\` lists it, \`check --require-approvals\` fails it)\n`);
|
|
57
|
+
out?.(`re-approve after review: ${fixResult.reapproveCommand}\n`);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
for (const finding of result.findings)
|
|
61
|
+
out?.(`${lintFindingLine(finding)}\n`);
|
|
62
|
+
out?.(`${result.errors} error(s), ${result.warnings} warning(s) — journey '${result.id}'\n`);
|
|
63
|
+
}
|
|
64
|
+
process.exitCode = result.errors > 0 ? 1 : 0;
|
|
65
|
+
}
|
|
66
|
+
catch (err) {
|
|
67
|
+
if (err instanceof UnknownJourneyError) {
|
|
68
|
+
emitJson(program, fail("E_UNKNOWN_JOURNEY", String(err.message)));
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
emitJson(program, fail("E_JOURNEY_LINT_ARGS", String(err instanceof Error ? err.message : err)));
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=lint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lint.js","sourceRoot":"","sources":["../../src/journey-cli/lint.ts"],"names":[],"mappings":"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"}
|