@jevitate/cli 0.16.1 → 0.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/README.md +55 -5
- package/dist/author-journey-cli.js +11 -8
- package/dist/author-journey-cli.js.map +1 -1
- package/dist/bin.js +3126 -1078
- package/dist/build-info.generated.js +3 -3
- package/dist/catalog-api.d.ts +22 -0
- package/dist/catalog-api.js +49 -0
- package/dist/catalog-api.js.map +1 -1
- package/dist/catalog-cli.js +59 -37
- package/dist/catalog-cli.js.map +1 -1
- package/dist/cli-shared.d.ts +6 -1
- package/dist/cli-shared.js +11 -2
- package/dist/cli-shared.js.map +1 -1
- package/dist/exit-codes.js +9 -0
- package/dist/exit-codes.js.map +1 -1
- package/dist/journey-anchor-cli.js +16 -8
- package/dist/journey-anchor-cli.js.map +1 -1
- package/dist/journey-annotate-cli.js +10 -5
- package/dist/journey-annotate-cli.js.map +1 -1
- package/dist/journey-api.d.ts +10 -0
- package/dist/journey-api.js +23 -2
- package/dist/journey-api.js.map +1 -1
- package/dist/journey-bundle.d.ts +83 -0
- package/dist/journey-bundle.js +252 -0
- package/dist/journey-bundle.js.map +1 -0
- package/dist/journey-chain.d.ts +105 -0
- package/dist/journey-chain.js +331 -0
- package/dist/journey-chain.js.map +1 -0
- package/dist/journey-cli/anchors.js +11 -6
- package/dist/journey-cli/anchors.js.map +1 -1
- package/dist/journey-cli/chain.d.ts +8 -0
- package/dist/journey-cli/chain.js +113 -0
- package/dist/journey-cli/chain.js.map +1 -0
- package/dist/journey-cli/find.js +10 -5
- package/dist/journey-cli/find.js.map +1 -1
- package/dist/journey-cli/lint.js +13 -9
- package/dist/journey-cli/lint.js.map +1 -1
- package/dist/journey-cli/list.js +10 -5
- package/dist/journey-cli/list.js.map +1 -1
- package/dist/journey-cli/migrate.js +13 -6
- package/dist/journey-cli/migrate.js.map +1 -1
- package/dist/journey-cli/promote.js +11 -6
- package/dist/journey-cli/promote.js.map +1 -1
- package/dist/journey-cli/publish.js +12 -6
- package/dist/journey-cli/publish.js.map +1 -1
- package/dist/journey-cli/review.js +14 -8
- package/dist/journey-cli/review.js.map +1 -1
- package/dist/journey-cli/run.js +25 -10
- package/dist/journey-cli/run.js.map +1 -1
- package/dist/journey-cli/shared.d.ts +19 -1
- package/dist/journey-cli/shared.js +28 -0
- package/dist/journey-cli/shared.js.map +1 -1
- package/dist/journey-cli/verify.js +13 -6
- package/dist/journey-cli/verify.js.map +1 -1
- package/dist/journey-cli-bundle.d.ts +4 -0
- package/dist/journey-cli-bundle.js +70 -0
- package/dist/journey-cli-bundle.js.map +1 -0
- package/dist/journey-cli-readiness.d.ts +4 -0
- package/dist/journey-cli-readiness.js +163 -0
- package/dist/journey-cli-readiness.js.map +1 -0
- package/dist/journey-cli.d.ts +1 -1
- package/dist/journey-cli.js +9 -1
- package/dist/journey-cli.js.map +1 -1
- package/dist/journey-demo-cli.js +10 -5
- package/dist/journey-demo-cli.js.map +1 -1
- package/dist/journey-handback.d.ts +62 -0
- package/dist/journey-handback.js +150 -0
- package/dist/journey-handback.js.map +1 -0
- package/dist/journey-link-api.js +1 -1
- package/dist/journey-link-api.js.map +1 -1
- package/dist/journey-link-cli.js +13 -8
- package/dist/journey-link-cli.js.map +1 -1
- package/dist/journey-readiness.d.ts +104 -0
- package/dist/journey-readiness.js +369 -0
- package/dist/journey-readiness.js.map +1 -0
- package/dist/journey-verify.d.ts +2 -0
- package/dist/journey-verify.js +14 -1
- package/dist/journey-verify.js.map +1 -1
- package/dist/mcp-cli-tools.js +79 -20
- package/dist/mcp-cli-tools.js.map +1 -1
- package/dist/program.js +3 -0
- package/dist/program.js.map +1 -1
- package/dist/project-layout.d.ts +57 -0
- package/dist/project-layout.js +144 -0
- package/dist/project-layout.js.map +1 -0
- package/dist/project-where.d.ts +4 -0
- package/dist/project-where.js +48 -0
- package/dist/project-where.js.map +1 -0
- package/package.json +9 -9
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
// this plain `tsc --build` dist (no bundler substitution), so it needs real committed values
|
|
6
6
|
// here instead. See ./engine.ts, which prefers the esbuild-injected value when present and
|
|
7
7
|
// falls back to these.
|
|
8
|
-
export const GENERATED_COMMIT = "
|
|
9
|
-
export const GENERATED_TREE = "
|
|
10
|
-
export const GENERATED_BUILT_AT = "2026-10-
|
|
8
|
+
export const GENERATED_COMMIT = "60df60f";
|
|
9
|
+
export const GENERATED_TREE = "dd8e50a";
|
|
10
|
+
export const GENERATED_BUILT_AT = "2026-10-18T20:33:44.654Z";
|
|
11
11
|
//# sourceMappingURL=build-info.generated.js.map
|
package/dist/catalog-api.d.ts
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
|
+
import type { Command } from "commander";
|
|
1
2
|
import type { CatalogApproval, Finding, Journey, JourneyApprovalWaiver, AcceptedFindings } from "@jevitate/journey";
|
|
2
3
|
import { type Catalog } from "./catalog.js";
|
|
4
|
+
import { type CliDeps } from "./cli-shared.js";
|
|
5
|
+
import { type ResolvedLayout } from "./project-layout.js";
|
|
3
6
|
import type { JevSetup } from "./jev-advisor.js";
|
|
4
7
|
import { type ApprovalConfirm } from "./approval-provenance.js";
|
|
5
8
|
/**
|
|
@@ -12,6 +15,25 @@ export declare function resolveCatalogDir(seam: string | undefined, flag?: strin
|
|
|
12
15
|
export declare function loadCatalog(catalogDir: string | null, journeysDir: string): Promise<Catalog>;
|
|
13
16
|
/** The journeys directory of a catalog `--dir` (its `journeys/`), else the CLI's default. */
|
|
14
17
|
export declare function catalogJourneysDir(flag: string | undefined, fallback: string): string;
|
|
18
|
+
/** #585: the help a catalog/persona/job command keeps on its deprecated `--dir` alias (§2). */
|
|
19
|
+
export declare const DEPRECATED_PROJECT_DIR_HELP = "deprecated: use --project <path> (same meaning); the project data dir holding personas.json and jobs.json (default: the repo's .jevitate/)";
|
|
20
|
+
/** #585: the location flags of one catalog invocation — `--project`/`--journeys-dir`, plus the deprecated `--dir`. */
|
|
21
|
+
export interface CatalogLayoutFlags {
|
|
22
|
+
readonly project?: string;
|
|
23
|
+
readonly journeysDir?: string;
|
|
24
|
+
readonly dir?: string;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* #585: resolves a catalog command's locations with `resolveLayout` (docs/contracts/project-layout.md
|
|
28
|
+
* §3/§4, dirMeaning "project", requireProject), mirroring `journeyLayout` in `journey-cli/shared.ts`.
|
|
29
|
+
* The host-injected `CliDeps.catalogDir` — the same catalog seam the MCP server passes — stands in for
|
|
30
|
+
* `--project`. The deprecation line goes to stderr (never the `--json` stdout envelope). A
|
|
31
|
+
* `ProjectLayoutError` is emitted as the command's refusal (its code and next action, exit 64) and
|
|
32
|
+
* null is returned, so the caller returns without touching the catalog; any other error propagates.
|
|
33
|
+
*/
|
|
34
|
+
export declare function catalogLayout(program: Command, deps: CliDeps, flags: CatalogLayoutFlags, opts?: {
|
|
35
|
+
readonly requireProject?: boolean;
|
|
36
|
+
}): ResolvedLayout | null;
|
|
15
37
|
/** `persona|job approve --reviewed-hash`: the item changed after the reviewer's sheet was produced. */
|
|
16
38
|
export declare class StaleCatalogReviewError extends Error {
|
|
17
39
|
readonly code = "E_CATALOG_REVIEW_STALE";
|
package/dist/catalog-api.js
CHANGED
|
@@ -4,6 +4,10 @@ import { CatalogLoader, catalogJourney, journeyLinks, requireJob, requirePersona
|
|
|
4
4
|
import { assertJobRefs } from "./catalog-refs.js";
|
|
5
5
|
import { acknowledgeFindings, preApprovalFindings } from "./pre-approval.js";
|
|
6
6
|
import { findProjectDir } from "./project-dir.js";
|
|
7
|
+
import { emitJson } from "./cli-shared.js";
|
|
8
|
+
import { fail } from "./envelope.js";
|
|
9
|
+
import { EXIT_CODES } from "./exit-codes.js";
|
|
10
|
+
import { ProjectLayoutError, resolveLayout } from "./project-layout.js";
|
|
7
11
|
import { programmaticProvenance } from "./approval-provenance.js";
|
|
8
12
|
import { catalogItemEntry } from "./forge-verify.js";
|
|
9
13
|
/**
|
|
@@ -22,6 +26,51 @@ export function loadCatalog(catalogDir, journeysDir) {
|
|
|
22
26
|
export function catalogJourneysDir(flag, fallback) {
|
|
23
27
|
return flag === undefined ? fallback : join(flag, "journeys");
|
|
24
28
|
}
|
|
29
|
+
/** #585: the help a catalog/persona/job command keeps on its deprecated `--dir` alias (§2). */
|
|
30
|
+
export const DEPRECATED_PROJECT_DIR_HELP = "deprecated: use --project <path> (same meaning); the project data dir holding personas.json and jobs.json (default: the repo's .jevitate/)";
|
|
31
|
+
/**
|
|
32
|
+
* #585: resolves a catalog command's locations with `resolveLayout` (docs/contracts/project-layout.md
|
|
33
|
+
* §3/§4, dirMeaning "project", requireProject), mirroring `journeyLayout` in `journey-cli/shared.ts`.
|
|
34
|
+
* The host-injected `CliDeps.catalogDir` — the same catalog seam the MCP server passes — stands in for
|
|
35
|
+
* `--project`. The deprecation line goes to stderr (never the `--json` stdout envelope). A
|
|
36
|
+
* `ProjectLayoutError` is emitted as the command's refusal (its code and next action, exit 64) and
|
|
37
|
+
* null is returned, so the caller returns without touching the catalog; any other error propagates.
|
|
38
|
+
*/
|
|
39
|
+
export function catalogLayout(program, deps, flags, opts = {}) {
|
|
40
|
+
const seam = deps.catalogDir;
|
|
41
|
+
const useSeam = seam !== undefined && flags.project === undefined && flags.dir === undefined;
|
|
42
|
+
// §4: the CLI's journeysDir seam wins over discovery, but a location flag (--project/--journeys-dir/--dir)
|
|
43
|
+
// decides the store: passing the seam alongside one would let it beat --project, unlike the old --dir help.
|
|
44
|
+
const seamJourneys = flags.project === undefined && flags.dir === undefined && flags.journeysDir === undefined ? deps.journeysDir : undefined;
|
|
45
|
+
try {
|
|
46
|
+
const layout = resolveLayout({
|
|
47
|
+
...(flags.project === undefined ? {} : { project: flags.project }),
|
|
48
|
+
...(flags.journeysDir === undefined ? {} : { journeysDir: flags.journeysDir }),
|
|
49
|
+
...(flags.dir === undefined ? {} : { dir: flags.dir }),
|
|
50
|
+
}, { dirMeaning: "project", requireProject: opts.requireProject !== false && !useSeam, deps: seamJourneys === undefined ? {} : { journeysDir: seamJourneys } });
|
|
51
|
+
if (!useSeam) {
|
|
52
|
+
if (layout.deprecation !== undefined)
|
|
53
|
+
program.configureOutput().writeErr?.(`${layout.deprecation}\n`);
|
|
54
|
+
return layout;
|
|
55
|
+
}
|
|
56
|
+
// The injected catalog dir IS the project (its folder name need not be `.jevitate`): keep it, and
|
|
57
|
+
// take the Journey store from an explicit flag/seam when one was given, else `<project>/journeys`.
|
|
58
|
+
const journeysFromLocation = layout.from.journeys === "flag" || layout.from.journeys === "seam";
|
|
59
|
+
return {
|
|
60
|
+
projectDir: seam,
|
|
61
|
+
catalogDir: seam,
|
|
62
|
+
journeysDir: journeysFromLocation ? layout.journeysDir : join(seam, "journeys"),
|
|
63
|
+
from: { project: "discovered", journeys: journeysFromLocation ? layout.from.journeys : "project" },
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
catch (err) {
|
|
67
|
+
if (!(err instanceof ProjectLayoutError))
|
|
68
|
+
throw err;
|
|
69
|
+
emitJson(program, fail(err.code, `${err.message} — ${err.nextAction}`));
|
|
70
|
+
process.exitCode = EXIT_CODES.usage;
|
|
71
|
+
return null;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
25
74
|
/** `persona|job approve --reviewed-hash`: the item changed after the reviewer's sheet was produced. */
|
|
26
75
|
export class StaleCatalogReviewError extends Error {
|
|
27
76
|
code = "E_CATALOG_REVIEW_STALE";
|
package/dist/catalog-api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog-api.js","sourceRoot":"","sources":["../src/catalog-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"catalog-api.js","sourceRoot":"","sources":["../src/catalog-api.ts"],"names":[],"mappings":"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"}
|
package/dist/catalog-cli.js
CHANGED
|
@@ -11,10 +11,11 @@ import { JourneezeError } from "./journeeze-connect.js";
|
|
|
11
11
|
import { buildJevSetup, jevCacheDir } from "./jev-advisor.js";
|
|
12
12
|
import { analyzeCatalog, renderCatalogAnalysis, ANALYZE_PAIR_CAP } from "./catalog-analysis.js";
|
|
13
13
|
import { CatalogDraftArgsError, CatalogDraftExistsError, CatalogInputError, UnknownCatalogItemError, writeCatalogDraft } from "./catalog.js";
|
|
14
|
-
import { StaleCatalogReviewError, approveCatalogItem, catalogJourneysDir, loadCatalog, resolveCatalogDir } from "./catalog-api.js";
|
|
14
|
+
import { StaleCatalogReviewError, approveCatalogItem, catalogJourneysDir, catalogLayout, loadCatalog, resolveCatalogDir, DEPRECATED_PROJECT_DIR_HELP } from "./catalog-api.js";
|
|
15
15
|
import { strictCatalogViolations, buildCatalogStatus, buildJobReview, buildPersonaReview, renderCatalogStatus, renderJobReview, renderPersonaReview } from "./catalog-review.js";
|
|
16
16
|
import { ApprovalFindingsError } from "./pre-approval.js";
|
|
17
17
|
import { EXIT_CODES } from "./exit-codes.js";
|
|
18
|
+
import { withProjectFlags } from "./project-layout.js";
|
|
18
19
|
import { ApprovalArgsError, approvalRefusal, approvalsReportVerified, checkNonInteractiveReason, describeProvenance, inMcpInvocation, makeApprovalConfirm, parseAllowedChannels, renderApprovals, } from "./approval-provenance.js";
|
|
19
20
|
/**
|
|
20
21
|
* #433 — the catalog commands: `persona review|approve <id>`, `job review|approve <id>` and
|
|
@@ -75,9 +76,9 @@ function registerItemCommands(program, deps, kind) {
|
|
|
75
76
|
: "#433: catalog jobs — job stories in .jevitate/jobs.json (\"When …, I want to …, so I can ….\") — review a job's sheet, approve it (bound to its content hash)");
|
|
76
77
|
const code = kind === "persona" ? "E_PERSONA" : "E_JOB";
|
|
77
78
|
const argsCode = kind === "persona" ? "E_PERSONA_REVIEW_ARGS" : "E_JOB_REVIEW_ARGS";
|
|
78
|
-
const load = (
|
|
79
|
-
const sheet = async (
|
|
80
|
-
const catalog = await load(
|
|
79
|
+
const load = (layout) => loadCatalog(layout.catalogDir, layout.journeysDir);
|
|
80
|
+
const sheet = async (layout, id, action, opts) => {
|
|
81
|
+
const catalog = await load(layout);
|
|
81
82
|
if (kind === "persona") {
|
|
82
83
|
const review = await buildPersonaReview(catalog, id, action, opts);
|
|
83
84
|
return { catalog, review, render: (style) => renderPersonaReview(review, style) };
|
|
@@ -85,12 +86,12 @@ function registerItemCommands(program, deps, kind) {
|
|
|
85
86
|
const review = await buildJobReview(catalog, id, action, opts);
|
|
86
87
|
return { catalog, review, render: (style) => renderJobReview(review, style) };
|
|
87
88
|
};
|
|
88
|
-
group
|
|
89
|
+
withProjectFlags(group
|
|
89
90
|
.command("review <id>")
|
|
90
91
|
.description(kind === "persona"
|
|
91
92
|
? "a persona's review sheet: who it is, the jobs it serves, the Journeys linked to it, its approval state (stale = needs re-review), the pre-approval findings, its content hash"
|
|
92
93
|
: "a job's review sheet: its story, its personas and which have a promoted Journey for it, the gaps, its Journeys, its approval state, the pre-approval findings, its content hash")
|
|
93
|
-
.option("--dir <path>",
|
|
94
|
+
.option("--dir <path>", DEPRECATED_PROJECT_DIR_HELP))
|
|
94
95
|
.option("--markdown", "render the sheet as Markdown")
|
|
95
96
|
.option("--out <file>", "write the sheet (JSON with --json, Markdown with --markdown, else text) to this file")
|
|
96
97
|
.option("--readiness", READINESS_FLAG_HELP)
|
|
@@ -98,14 +99,17 @@ function registerItemCommands(program, deps, kind) {
|
|
|
98
99
|
.option("--jev-provider <provider>", JEV_PROVIDER_FLAG_HELP, jevProviderArg)
|
|
99
100
|
.option("--json", "emit a JSON envelope (the schema-checked sheet)")
|
|
100
101
|
.action(async function (id) {
|
|
101
|
-
const { dir, json, markdown, out: outFile, readiness, real, jevProvider } = this.opts();
|
|
102
|
+
const { dir, project, journeysDir, json, markdown, out: outFile, readiness, real, jevProvider } = this.opts();
|
|
102
103
|
if (json === true && markdown === true) {
|
|
103
104
|
emitJson(program, fail(argsCode, "--json and --markdown are exclusive: pick one rendering"));
|
|
104
105
|
return;
|
|
105
106
|
}
|
|
107
|
+
const layout = catalogLayout(program, deps, { dir, project, journeysDir });
|
|
108
|
+
if (layout === null)
|
|
109
|
+
return;
|
|
106
110
|
try {
|
|
107
|
-
const jev = await jevSetupFor(deps,
|
|
108
|
-
const { review, render } = await sheet(
|
|
111
|
+
const jev = await jevSetupFor(deps, layout.catalogDir, { real, jevProvider });
|
|
112
|
+
const { review, render } = await sheet(layout, id, "review", { readiness: readiness === true, jev });
|
|
109
113
|
const rendered = json ? `${JSON.stringify(review, null, 2)}\n` : render(markdown ? "markdown" : "text");
|
|
110
114
|
if (outFile !== undefined)
|
|
111
115
|
await writeFile(outFile, rendered, { mode: 0o600 });
|
|
@@ -123,10 +127,10 @@ function registerItemCommands(program, deps, kind) {
|
|
|
123
127
|
refuse(program, err, `${code}_REVIEW`);
|
|
124
128
|
}
|
|
125
129
|
});
|
|
126
|
-
group
|
|
130
|
+
withProjectFlags(group
|
|
127
131
|
.command("approve <id>")
|
|
128
132
|
.description(`approve a ${kind} (a person's sign-off; CLI only, never an MCP tool): shows its review sheet, runs the pre-approval findings, then records {contentHash, at} in ${kind === "persona" ? "personas.json" : "its jobs file"}. Editing it later makes it — and its Journeys — "needs re-review"`)
|
|
129
|
-
.option("--dir <path>",
|
|
133
|
+
.option("--dir <path>", DEPRECATED_PROJECT_DIR_HELP))
|
|
130
134
|
.option("--reviewed-hash <hash>", `the content hash of the review sheet you read; refused (E_CATALOG_REVIEW_STALE) if the ${kind} changed since`)
|
|
131
135
|
.option("--accept-findings <reason>", "approve although pre-approval findings need an acknowledgment, recording the reason with the approval")
|
|
132
136
|
.option("--real", `${REAL_JEV_FLAG_HELP}; a conflicting/duplicate pair classification at or above the documented threshold then needs --accept-findings`)
|
|
@@ -134,7 +138,7 @@ function registerItemCommands(program, deps, kind) {
|
|
|
134
138
|
.option("--non-interactive-approval <reason>", "#437: approve without a terminal confirmation (a scripted setup), recorded as channel non-interactive (ci under a CI marker) with the reason — never as a person's; check --require-approvals fails it. A coding agent never uses this")
|
|
135
139
|
.option("--json", "emit a JSON envelope")
|
|
136
140
|
.action(async function (id) {
|
|
137
|
-
const { dir, json, reviewedHash: hashFlag, acceptFindings, real, jevProvider, nonInteractiveApproval } = this.opts();
|
|
141
|
+
const { dir, project, journeysDir, json, reviewedHash: hashFlag, acceptFindings, real, jevProvider, nonInteractiveApproval } = this.opts();
|
|
138
142
|
let reviewedHash = hashFlag?.trim().toLowerCase();
|
|
139
143
|
if (reviewedHash !== undefined && !/^[0-9a-f]{64}$/.test(reviewedHash)) {
|
|
140
144
|
emitJson(program, fail(argsCode, "--reviewed-hash needs the 64-hex content hash a review sheet shows"));
|
|
@@ -144,12 +148,15 @@ function registerItemCommands(program, deps, kind) {
|
|
|
144
148
|
emitJson(program, fail(argsCode, "--accept-findings needs a reason"));
|
|
145
149
|
return;
|
|
146
150
|
}
|
|
151
|
+
const layout = catalogLayout(program, deps, { dir, project, journeysDir });
|
|
152
|
+
if (layout === null)
|
|
153
|
+
return;
|
|
147
154
|
try {
|
|
148
155
|
checkNonInteractiveReason(nonInteractiveApproval);
|
|
149
156
|
const action = kind === "persona" ? "persona approve" : "job approve";
|
|
150
157
|
// #434/#435: every approval shows readiness and the catalog analysis; Jev only with --real.
|
|
151
|
-
const jev = await jevSetupFor(deps,
|
|
152
|
-
const { catalog, review, render } = await sheet(
|
|
158
|
+
const jev = await jevSetupFor(deps, layout.catalogDir, { real, jevProvider });
|
|
159
|
+
const { catalog, review, render } = await sheet(layout, id, action, { readiness: true, jev });
|
|
153
160
|
if (!json) {
|
|
154
161
|
// Human mode: the sheet (with its findings) is shown before approving; the approval binds to what was shown.
|
|
155
162
|
program.configureOutput().writeOut?.(`${render("text")}\n`);
|
|
@@ -183,16 +190,16 @@ function registerItemCommands(program, deps, kind) {
|
|
|
183
190
|
* (MCP `draft_job_outcomes` mirrors it; approving stays `job approve`, CLI only).
|
|
184
191
|
*/
|
|
185
192
|
function registerJobDraftOutcomes(group, program, deps) {
|
|
186
|
-
group
|
|
193
|
+
withProjectFlags(group
|
|
187
194
|
.command("draft-outcomes <jobId>")
|
|
188
195
|
.description(`#465: draft ${DRAFT_OUTCOMES_MIN}–${DRAFT_OUTCOMES_MAX} desired outcomes for a job with the generation model and write them into its jobs file marked provenance ai_draft, for the team to review. Never approves: an approved job becomes "needs re-review"`)
|
|
189
|
-
.option("--dir <path>",
|
|
196
|
+
.option("--dir <path>", DEPRECATED_PROJECT_DIR_HELP))
|
|
190
197
|
.option("--count <n>", `how many outcomes to draft (${DRAFT_OUTCOMES_MIN}-${DRAFT_OUTCOMES_MAX}, default ${DRAFT_OUTCOMES_DEFAULT})`, intArg({ min: DRAFT_OUTCOMES_MIN, max: DRAFT_OUTCOMES_MAX }))
|
|
191
198
|
.option("--real", "draft with the live OpenRouter generation gateway (requires keys)", false)
|
|
192
199
|
.option("--fake-ai", "draft with the deterministic fake generator (pipeline smoke only)", false)
|
|
193
200
|
.option("--json", "emit a JSON envelope")
|
|
194
201
|
.action(async function (jobId) {
|
|
195
|
-
const { dir, json, count, real, fakeAi } = this.opts();
|
|
202
|
+
const { dir, project, journeysDir, json, count, real, fakeAi } = this.opts();
|
|
196
203
|
if (!CATALOG_ID_RE.test(jobId)) {
|
|
197
204
|
emitJson(program, fail("E_JOB_DRAFT_ARGS", `<jobId> must be a catalog id (1-64 of [A-Za-z0-9._-], starting alphanumeric), got ${JSON.stringify(jobId)}`));
|
|
198
205
|
return;
|
|
@@ -201,10 +208,13 @@ function registerJobDraftOutcomes(group, program, deps) {
|
|
|
201
208
|
emitJson(program, fail("E_JOB_DRAFT_ARGS", "drafting needs exactly one generation gateway: --real (live) or --fake-ai (deterministic)"));
|
|
202
209
|
return;
|
|
203
210
|
}
|
|
211
|
+
const layout = catalogLayout(program, deps, { dir, project, journeysDir });
|
|
212
|
+
if (layout === null)
|
|
213
|
+
return;
|
|
204
214
|
try {
|
|
205
215
|
const result = await draftJobOutcomes({
|
|
206
|
-
catalogDir:
|
|
207
|
-
journeysDir:
|
|
216
|
+
catalogDir: layout.catalogDir,
|
|
217
|
+
journeysDir: layout.journeysDir,
|
|
208
218
|
jobId,
|
|
209
219
|
count: count ?? DRAFT_OUTCOMES_DEFAULT,
|
|
210
220
|
ai: { real: real === true, fakeAi: fakeAi === true },
|
|
@@ -224,21 +234,24 @@ export function registerCatalogCommands(program, deps) {
|
|
|
224
234
|
registerItemCommands(program, deps, "persona");
|
|
225
235
|
registerItemCommands(program, deps, "job");
|
|
226
236
|
const catalog = program.command("catalog").description("#433: the human-vetted catalog of personas, jobs and the Journeys linked to them");
|
|
227
|
-
catalog
|
|
237
|
+
withProjectFlags(catalog
|
|
228
238
|
.command("status")
|
|
229
239
|
.description("the jobs × personas matrix (which have a promoted Journey), approved jobs with no promoted Journey, Journeys linked to nothing, dangling links and stale approvals")
|
|
230
|
-
.option("--dir <path>",
|
|
240
|
+
.option("--dir <path>", DEPRECATED_PROJECT_DIR_HELP))
|
|
231
241
|
.option("--require-approvals", "#437: exit 1 when a promoted Journey or an approved persona/job has a missing or stale approval, or one made over a channel not allowed (--allow-channels)")
|
|
232
242
|
.option("--allow-channels <list>", ALLOW_CHANNELS_HELP)
|
|
233
243
|
.option("--strict", "#523: exit 1 when a persona/job approval is stale, or a promoted Journey links a catalog entry that is not approved (a draft) or links no job / no persona — the repo-wide gate on what the review sheet flags")
|
|
234
244
|
.option("--json", "emit a JSON envelope (the schema-checked report)")
|
|
235
245
|
.action(async function () {
|
|
236
|
-
const { dir, json, requireApprovals, allowChannels, strict } = this.opts();
|
|
246
|
+
const { dir, project, journeysDir, json, requireApprovals, allowChannels, strict } = this.opts();
|
|
237
247
|
try {
|
|
238
248
|
if (allowChannels !== undefined && requireApprovals !== true)
|
|
239
249
|
throw new ApprovalArgsError("--allow-channels needs --require-approvals");
|
|
250
|
+
const layout = catalogLayout(program, deps, { dir, project, journeysDir });
|
|
251
|
+
if (layout === null)
|
|
252
|
+
return;
|
|
240
253
|
const allowed = requireApprovals === true ? parseAllowedChannels(allowChannels) : undefined;
|
|
241
|
-
const catalog = await loadCatalog(
|
|
254
|
+
const catalog = await loadCatalog(layout.catalogDir, layout.journeysDir);
|
|
242
255
|
// #437: every recorded approval and how it was made; with --require-approvals, the violations.
|
|
243
256
|
// #469: with pr-review allowed, each recorded pr-review approval is re-verified through the forge.
|
|
244
257
|
const approvals = await approvalsReportVerified([catalog], allowed, { ...(deps.approval ?? {}), catalogDir: catalog.dir });
|
|
@@ -256,17 +269,17 @@ export function registerCatalogCommands(program, deps) {
|
|
|
256
269
|
}
|
|
257
270
|
});
|
|
258
271
|
// #523: a DRAFT persona or job (never an approval) — so a Journey can link one before a person vets it.
|
|
259
|
-
catalog
|
|
272
|
+
withProjectFlags(catalog
|
|
260
273
|
.command("draft <kind> <id>")
|
|
261
274
|
.description("#523: add a DRAFT persona or job to the catalog (kind: persona | job) — personas.json / jobs.json, created when missing — so a Journey can link it now. Never approves (a person runs `persona|job approve` after review); an id the catalog already has is refused")
|
|
262
275
|
.requiredOption("--name <text>", "a persona: who they are (written as its role); a job: what the user wants to do (its motivation, \"I want to …\")")
|
|
263
276
|
.option("--description <text>", "a persona: its description; a job: its goal")
|
|
264
277
|
.option("--trigger <text>", "a job: when it comes up (\"When …\"); default: a placeholder to write before approving")
|
|
265
278
|
.option("--outcome <text>", "a job: what doing it lets them do (\"so I can …\"); default: a placeholder to write before approving")
|
|
266
|
-
.option("--dir <path>",
|
|
279
|
+
.option("--dir <path>", DEPRECATED_PROJECT_DIR_HELP))
|
|
267
280
|
.option("--json", "emit a JSON envelope")
|
|
268
281
|
.action(async function (kind, id) {
|
|
269
|
-
const { dir, json, name, description, trigger, outcome } = this.opts();
|
|
282
|
+
const { dir, project, journeysDir, json, name, description, trigger, outcome } = this.opts();
|
|
270
283
|
if (kind !== "persona" && kind !== "job") {
|
|
271
284
|
emitJson(program, fail("E_CATALOG_DRAFT_ARGS", `<kind> must be persona or job, got ${JSON.stringify(kind)}`));
|
|
272
285
|
return;
|
|
@@ -275,8 +288,11 @@ export function registerCatalogCommands(program, deps) {
|
|
|
275
288
|
emitJson(program, fail("E_CATALOG_DRAFT_ARGS", "--trigger and --outcome are a job's story parts: a persona takes --name and --description"));
|
|
276
289
|
return;
|
|
277
290
|
}
|
|
291
|
+
const layout = catalogLayout(program, deps, { dir, project, journeysDir });
|
|
292
|
+
if (layout === null)
|
|
293
|
+
return;
|
|
278
294
|
try {
|
|
279
|
-
const result = await writeCatalogDraft(
|
|
295
|
+
const result = await writeCatalogDraft(layout.catalogDir, {
|
|
280
296
|
kind,
|
|
281
297
|
id,
|
|
282
298
|
name,
|
|
@@ -295,25 +311,28 @@ export function registerCatalogCommands(program, deps) {
|
|
|
295
311
|
refuse(program, err, "E_CATALOG_DRAFT");
|
|
296
312
|
}
|
|
297
313
|
});
|
|
298
|
-
catalog
|
|
314
|
+
withProjectFlags(catalog
|
|
299
315
|
.command("analyze")
|
|
300
316
|
.description("#435: problems BETWEEN catalog items, grouped by INCOSE GtWR set characteristic — candidate pairs (paired by code: shared persona/terms, opposing writes, same role) classified by Jev (with --real) as compatible/duplicate/overlapping/conflicting/dependent, " +
|
|
301
317
|
"completeness gaps, and update advice (stale approvals, Journeys whose last mutation proof fails). Read-only and advisory: it never changes the catalog and never gates")
|
|
302
|
-
.option("--dir <path>",
|
|
318
|
+
.option("--dir <path>", DEPRECATED_PROJECT_DIR_HELP))
|
|
303
319
|
.option("--real", "#435: classify the candidate pairs with Jev (advisory; cached by content hash). Without a judgment key: the deterministic layer only")
|
|
304
320
|
.option("--jev-provider <provider>", JEV_PROVIDER_FLAG_HELP, jevProviderArg)
|
|
305
321
|
.option("--max-pairs <n>", `the most candidate pairs to judge (default ${ANALYZE_PAIR_CAP}); the rest are listed as overflow, never dropped`, positiveIntArg)
|
|
306
322
|
.option("--markdown", "render the report as Markdown")
|
|
307
323
|
.option("--json", "emit a JSON envelope (the schema-checked report)")
|
|
308
324
|
.action(async function () {
|
|
309
|
-
const { dir, json, markdown, real, jevProvider, maxPairs } = this.opts();
|
|
325
|
+
const { dir, project, journeysDir, json, markdown, real, jevProvider, maxPairs } = this.opts();
|
|
310
326
|
if (json === true && markdown === true) {
|
|
311
327
|
emitJson(program, fail("E_CATALOG_ANALYZE_ARGS", "--json and --markdown are exclusive: pick one rendering"));
|
|
312
328
|
return;
|
|
313
329
|
}
|
|
330
|
+
const layout = catalogLayout(program, deps, { dir, project, journeysDir });
|
|
331
|
+
if (layout === null)
|
|
332
|
+
return;
|
|
314
333
|
try {
|
|
315
|
-
const catalogDir =
|
|
316
|
-
const loaded = await loadCatalog(catalogDir,
|
|
334
|
+
const catalogDir = layout.catalogDir;
|
|
335
|
+
const loaded = await loadCatalog(catalogDir, layout.journeysDir);
|
|
317
336
|
const jev = await jevSetupFor(deps, catalogDir, { real, jevProvider });
|
|
318
337
|
const { report } = await analyzeCatalog(loaded, { jev, ...(maxPairs === undefined ? {} : { pairCap: maxPairs }) });
|
|
319
338
|
if (json)
|
|
@@ -329,17 +348,17 @@ export function registerCatalogCommands(program, deps) {
|
|
|
329
348
|
}
|
|
330
349
|
});
|
|
331
350
|
// #464: the Journeeze catalog bundle — written under --out; never uploads, never approves.
|
|
332
|
-
catalog
|
|
351
|
+
withProjectFlags(catalog
|
|
333
352
|
.command("export")
|
|
334
353
|
.description("#464: write the catalog (personas, jobs, Journeys with their approvals, links, checks, findings; no media) as a Journeeze catalog bundle (bundle.json) under --out. Never uploads (publish journeeze) and never approves")
|
|
335
354
|
.requiredOption("--format <format>", `the bundle format (${CATALOG_EXPORT_FORMATS.join(" | ")})`)
|
|
336
355
|
.requiredOption("--out <dir>", "the directory bundle.json is written to (created if missing)")
|
|
337
356
|
.option("--check <file>", "a `jevitate check` record (check.json) to include; repeatable (default: <project>/jevitate-check/check.json when it exists)", collectRepeatable, [])
|
|
338
357
|
.option("--product-name <name>", "the bundle's product.name (default: the project's package.json name, else its folder name)")
|
|
339
|
-
.option("--dir <path>",
|
|
358
|
+
.option("--dir <path>", DEPRECATED_PROJECT_DIR_HELP))
|
|
340
359
|
.option("--json", "emit a JSON envelope")
|
|
341
360
|
.action(async function () {
|
|
342
|
-
const { dir, json, format, out, check, productName } = this.opts();
|
|
361
|
+
const { dir, project, journeysDir, json, format, out, check, productName } = this.opts();
|
|
343
362
|
if (!CATALOG_EXPORT_FORMATS.includes(format)) {
|
|
344
363
|
emitJson(program, fail("E_CATALOG_EXPORT_ARGS", `--format must be one of ${CATALOG_EXPORT_FORMATS.join(" | ")} (got ${JSON.stringify(format)})`));
|
|
345
364
|
return;
|
|
@@ -356,11 +375,14 @@ export function registerCatalogCommands(program, deps) {
|
|
|
356
375
|
emitJson(program, fail("E_CATALOG_EXPORT_ARGS", "--product-name must be one plain line of 1-200 characters (no control characters, no e-mail address or other personal data)"));
|
|
357
376
|
return;
|
|
358
377
|
}
|
|
378
|
+
const layout = catalogLayout(program, deps, { dir, project, journeysDir });
|
|
379
|
+
if (layout === null)
|
|
380
|
+
return;
|
|
359
381
|
try {
|
|
360
382
|
const result = await exportCatalogBundle({
|
|
361
383
|
format: format,
|
|
362
|
-
catalogDir:
|
|
363
|
-
journeysDir:
|
|
384
|
+
catalogDir: layout.catalogDir,
|
|
385
|
+
journeysDir: layout.journeysDir,
|
|
364
386
|
outDir: out,
|
|
365
387
|
...(check.length === 0 ? {} : { checkFiles: check }),
|
|
366
388
|
...(productName === undefined ? {} : { productName }),
|
package/dist/catalog-cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog-cli.js","sourceRoot":"","sources":["../src/catalog-cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"catalog-cli.js","sourceRoot":"","sources":["../src/catalog-cli.ts"],"names":[],"mappings":"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"}
|
package/dist/cli-shared.d.ts
CHANGED
|
@@ -145,7 +145,12 @@ export declare function environmentSeams(deps: CliDeps): {
|
|
|
145
145
|
/**
|
|
146
146
|
* Mirrors `resolveDbPath`'s flag > deps > home-dir-default convention: a
|
|
147
147
|
* per-invocation `--dir` flag wins, then a `CliDeps.journeysDir` wired in by
|
|
148
|
-
* the host, then `~/.jevitate/journeys`.
|
|
148
|
+
* the host, then the project's journeys, else `~/.jevitate/journeys`.
|
|
149
|
+
*
|
|
150
|
+
* #585: delegates to `resolveLayout` (dirMeaning "journeys") so commands not yet
|
|
151
|
+
* migrated to `--project`/`--journeys-dir` keep its current results. The flag is
|
|
152
|
+
* passed as the deprecated `--dir` so it retains its current meaning, including
|
|
153
|
+
* being used as given without an existence check.
|
|
149
154
|
*/
|
|
150
155
|
export declare function resolveJourneysDir(deps: CliDeps, flag?: string): string;
|
|
151
156
|
/** Same flag > home-dir-default convention as `resolveJourneysDir`, for the
|
package/dist/cli-shared.js
CHANGED
|
@@ -13,6 +13,7 @@ import { CastActor, BrowseTheWeb } from "@jevitate/screenplay";
|
|
|
13
13
|
import { UnsafeNameError, assertSafeName } from "@jevitate/domain";
|
|
14
14
|
import { fail } from "./envelope.js";
|
|
15
15
|
import { projectDataDir } from "./project-dir.js";
|
|
16
|
+
import { resolveLayout } from "./project-layout.js";
|
|
16
17
|
import { resolveUsagePricing } from "./usage-config.js";
|
|
17
18
|
import { realOpenRouterCall } from "./openrouter-call.js";
|
|
18
19
|
import { emitJsonOrRefusal } from "./cli-refusal.js";
|
|
@@ -41,10 +42,18 @@ export function environmentSeams(deps) {
|
|
|
41
42
|
/**
|
|
42
43
|
* Mirrors `resolveDbPath`'s flag > deps > home-dir-default convention: a
|
|
43
44
|
* per-invocation `--dir` flag wins, then a `CliDeps.journeysDir` wired in by
|
|
44
|
-
* the host, then `~/.jevitate/journeys`.
|
|
45
|
+
* the host, then the project's journeys, else `~/.jevitate/journeys`.
|
|
46
|
+
*
|
|
47
|
+
* #585: delegates to `resolveLayout` (dirMeaning "journeys") so commands not yet
|
|
48
|
+
* migrated to `--project`/`--journeys-dir` keep its current results. The flag is
|
|
49
|
+
* passed as the deprecated `--dir` so it retains its current meaning, including
|
|
50
|
+
* being used as given without an existence check.
|
|
45
51
|
*/
|
|
46
52
|
export function resolveJourneysDir(deps, flag) {
|
|
47
|
-
return flag
|
|
53
|
+
return resolveLayout(flag === undefined ? {} : { dir: flag }, {
|
|
54
|
+
dirMeaning: "journeys",
|
|
55
|
+
deps: deps.journeysDir === undefined ? {} : { journeysDir: deps.journeysDir },
|
|
56
|
+
}).journeysDir;
|
|
48
57
|
}
|
|
49
58
|
/** Same flag > home-dir-default convention as `resolveJourneysDir`, for the
|
|
50
59
|
* committed-regressions directory `regression capture` writes into. */
|