@principles/pd-cli 1.161.0 → 1.162.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.
@@ -58,18 +58,6 @@ export declare const CODEX_INSTALL_NEXT_ACTIONS: {
58
58
  readonly versionUnreadable: 'The installed runtime and/or the marketplace pin exists but its version string is unreadable. Reinstall the plugin and re-run $pd-control setup so versions can be verified.';
59
59
  readonly unverifiedCli: 'The Codex CLI is newer than the verified ingestion contract of this PD release. Update PD (the release whose adapter verifies this Codex version); conversation ingestion stays off until then. Hook enforcement surfaces are separate and unaffected.';
60
60
  };
61
- /** A3: pick the plugin cache version Codex would use. Codex keeps plugin
62
- * versions in semver-named directories (observed: `0.1.0`); when several
63
- * exist, the highest semver is the live candidate; non-semver directories
64
- * are ignored rather than guessed. Returns null when nothing usable exists. */
65
- export declare function selectMarketplaceCacheVersionDir(codexHome: string, fsMod?: Pick<typeof fs, 'existsSync' | 'readdirSync' | 'readFileSync'>): {
66
- dirName: string;
67
- pin: {
68
- codexAdapter?: string;
69
- hostRuntime?: string;
70
- core?: string;
71
- };
72
- } | null;
73
61
  /** A4: CURRENT CLI version probe placeholder. A direct `codex --version`
74
62
  * spawn is prohibited by the security write-gate in this file (spawnSync +
75
63
  * shell flag pattern-matches as command injection). Until a safe
@@ -1 +1 @@
1
- {"version":3,"file":"health-codex-install.d.ts","sourceRoot":"","sources":["../../src/commands/health-codex-install.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AAKzB,MAAM,MAAM,gBAAgB,GACxB,uBAAuB,GACvB,eAAe,GACf,iBAAiB,GACjB,iBAAiB,GACjB,oBAAoB,CAAC;AAEzB,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG,mBAAmB,GAAG,kBAAkB,GAAG,SAAS,CAAC;AAEhG,MAAM,MAAM,kBAAkB,GAC1B;IACE,EAAE,EAAE,IAAI,CAAC;IACT,WAAW,EAAE,gBAAgB,CAAC;IAC9B,wBAAwB,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,4BAA4B,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5C,YAAY,EAAE,OAAO,CAAC;IACtB,+HAA+H;IAC/H,uBAAuB,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,sIAAsI;IACtI,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,6HAA6H;IAC7H,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,wFAAwF;IACxF,SAAS,EAAE,cAAc,CAAC;IAC1B,eAAe,EAAE,aAAa,GAAG,cAAc,GAAG,MAAM,CAAC;CAC1D,GACD;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtD,eAAO,MAAM,0BAA0B;aACrC,YAAY,EACV,iNAAiN;aACnN,cAAc,EACZ,mLAAmL;aACrL,cAAc,EACZ,gOAAgO;aAClO,iBAAiB,EACf,8KAA8K;aAChL,aAAa,EACX,wPAAwP;CAClP,CAAC;AAoBX;;;gFAGgF;AAChF,wBAAgB,gCAAgC,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,GAAE,IAAI,CAAC,OAAO,EAAE,EAAE,YAAY,GAAG,aAAa,GAAG,cAAc,CAAM,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE;QAAE,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAAG,IAAI,CAsB/O;AAED;;;;;8DAK8D;AAE9D,wBAAgB,kBAAkB,CAAC,GAAG,EAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,EAAE,OAAO,GAAE,MAAqB,EAAE,IAAI,GAAE;IACrG,KAAK,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,YAAY,GAAG,aAAa,GAAG,cAAc,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,WAAW,CAAC,CAAC;IAC5H,QAAQ,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;CAC3B,GAAG,kBAAkB,CAwF1B"}
1
+ {"version":3,"file":"health-codex-install.d.ts","sourceRoot":"","sources":["../../src/commands/health-codex-install.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AAWzB,MAAM,MAAM,gBAAgB,GACxB,uBAAuB,GACvB,eAAe,GACf,iBAAiB,GACjB,iBAAiB,GACjB,oBAAoB,CAAC;AAEzB,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG,mBAAmB,GAAG,kBAAkB,GAAG,SAAS,CAAC;AAEhG,MAAM,MAAM,kBAAkB,GAC1B;IACE,EAAE,EAAE,IAAI,CAAC;IACT,WAAW,EAAE,gBAAgB,CAAC;IAC9B,wBAAwB,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,4BAA4B,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5C,YAAY,EAAE,OAAO,CAAC;IACtB,+HAA+H;IAC/H,uBAAuB,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,sIAAsI;IACtI,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,6HAA6H;IAC7H,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,wFAAwF;IACxF,SAAS,EAAE,cAAc,CAAC;IAC1B,eAAe,EAAE,aAAa,GAAG,cAAc,GAAG,MAAM,CAAC;CAC1D,GACD;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtD,eAAO,MAAM,0BAA0B;aACrC,YAAY,EACV,iNAAiN;aACnN,cAAc,EACZ,mLAAmL;aACrL,cAAc,EACZ,gOAAgO;aAClO,iBAAiB,EACf,8KAA8K;aAChL,aAAa,EACX,wPAAwP;CAClP,CAAC;AAEX;;;;;8DAK8D;AAE9D,wBAAgB,kBAAkB,CAAC,GAAG,EAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,EAAE,OAAO,GAAE,MAAqB,EAAE,IAAI,GAAE;IACrG,KAAK,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,YAAY,GAAG,aAAa,GAAG,cAAc,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,WAAW,CAAC,CAAC;IAC5H,QAAQ,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;CAC3B,GAAG,kBAAkB,CAkE1B"}
@@ -32,6 +32,7 @@ import * as fs from 'fs';
32
32
  import * as os from 'os';
33
33
  import * as path from 'path';
34
34
  import { classifyCodexVersion } from '@principles/codex-adapter';
35
+ import { findNewestRolloutFile, readInstalledCodexRuntime, resolveCodexHome, selectMarketplaceCacheVersionDir, } from '../services/codex-plugin-install.js';
35
36
  export const CODEX_INSTALL_NEXT_ACTIONS = {
36
37
  staleInstall: 'Refresh the plugin cache (`codex plugin remove principles-disciple@principles && codex plugin add principles-disciple@principles`) and re-run the $pd-control setup skill so the pinned runtime is reinstalled.',
37
38
  missingRuntime: 'Run the $pd-control setup skill in this workspace (or `codex plugin add principles-disciple@principles` first if the plugin cache is missing) so the pinned runtime is installed.',
@@ -39,57 +40,6 @@ export const CODEX_INSTALL_NEXT_ACTIONS = {
39
40
  versionUnreadable: 'The installed runtime and/or the marketplace pin exists but its version string is unreadable. Reinstall the plugin and re-run $pd-control setup so versions can be verified.',
40
41
  unverifiedCli: 'The Codex CLI is newer than the verified ingestion contract of this PD release. Update PD (the release whose adapter verifies this Codex version); conversation ingestion stays off until then. Hook enforcement surfaces are separate and unaffected.',
41
42
  };
42
- function parseSemverLoose(value) {
43
- const match = /^(\d+)\.(\d+)\.(\d+)$/.exec(value.trim());
44
- if (!match)
45
- return null;
46
- const major = Number.parseInt(match[1] ?? '', 10);
47
- const minor = Number.parseInt(match[2] ?? '', 10);
48
- const patch = Number.parseInt(match[3] ?? '', 10);
49
- if (![major, minor, patch].every((n) => Number.isFinite(n)))
50
- return null;
51
- return { major, minor, patch };
52
- }
53
- function compareSemverLoose(a, b) {
54
- if (a.major !== b.major)
55
- return a.major - b.major;
56
- if (a.minor !== b.minor)
57
- return a.minor - b.minor;
58
- return a.patch - b.patch;
59
- }
60
- /** A3: pick the plugin cache version Codex would use. Codex keeps plugin
61
- * versions in semver-named directories (observed: `0.1.0`); when several
62
- * exist, the highest semver is the live candidate; non-semver directories
63
- * are ignored rather than guessed. Returns null when nothing usable exists. */
64
- export function selectMarketplaceCacheVersionDir(codexHome, fsMod = fs) {
65
- const cachePluginRoot = path.join(codexHome, 'plugins', 'cache', 'principles', 'principles-disciple');
66
- let candidates = [];
67
- try {
68
- for (const dirName of fsMod.readdirSync(cachePluginRoot)) {
69
- const pinPath = path.join(cachePluginRoot, dirName, 'runtime-version.json');
70
- if (!fsMod.existsSync(pinPath))
71
- continue;
72
- const semver = parseSemverLoose(dirName);
73
- if (!semver)
74
- continue; // A3: ignore non-semver directory names instead of guessing
75
- try {
76
- const pin = JSON.parse(fsMod.readFileSync(pinPath, 'utf8'));
77
- candidates.push({ dirName, semver, pin });
78
- }
79
- catch { /* unreadable pin — skip this candidate */ }
80
- }
81
- }
82
- catch {
83
- return null; // cache root absent/unreadable
84
- }
85
- if (candidates.length === 0)
86
- return null;
87
- candidates.sort((a, b) => compareSemverLoose(b.semver, a.semver));
88
- const best = candidates.shift();
89
- if (!best)
90
- return null;
91
- return { dirName: best.dirName, pin: best.pin };
92
- }
93
43
  /** A4: CURRENT CLI version probe placeholder. A direct `codex --version`
94
44
  * spawn is prohibited by the security write-gate in this file (spawnSync +
95
45
  * shell flag pattern-matches as command injection). Until a safe
@@ -98,20 +48,14 @@ export function selectMarketplaceCacheVersionDir(codexHome, fsMod = fs) {
98
48
  * (A4: don't misrepresent history as the current binary). */
99
49
  export function assessCodexInstall(env, homeDir = os.homedir(), deps = {}) {
100
50
  const fsMod = deps.fsMod ?? fs;
101
- const codexHome = env.CODEX_HOME ? path.resolve(env.CODEX_HOME) : path.join(homeDir, '.codex');
51
+ const codexHome = resolveCodexHome(env, homeDir);
102
52
  if (!fsMod.existsSync(codexHome)) {
103
53
  return { ok: false, reason: 'codex_home_missing', nextAction: 'Codex has never run on this machine (CODEX_HOME not found); nothing to assess.' };
104
54
  }
105
- // Installed runtime (hooks execute this).
106
- const installedPkg = path.join(codexHome, 'plugins', 'data', 'principles-disciple-principles', 'runtime', 'node_modules', '@principles', 'codex-adapter', 'package.json');
107
- let pluginDataAdapterVersion = null;
108
- let pluginDataPresent = false;
109
- try {
110
- const parsed = JSON.parse(fsMod.readFileSync(installedPkg, 'utf8'));
111
- pluginDataPresent = true;
112
- pluginDataAdapterVersion = typeof parsed.version === 'string' && parsed.version.length > 0 ? parsed.version : null;
113
- }
114
- catch { /* not installed → null */ }
55
+ // Installed runtime (hooks execute this) — shared reader, see services/codex-plugin-install.ts.
56
+ const installedRuntime = readInstalledCodexRuntime(codexHome, fsMod);
57
+ const pluginDataPresent = installedRuntime.present;
58
+ const pluginDataAdapterVersion = installedRuntime.codexAdapter;
115
59
  // Marketplace cache pin (what a $pd-control setup re-run would install) — A3.
116
60
  const cacheSelection = selectMarketplaceCacheVersionDir(codexHome, fsMod);
117
61
  const marketplacePinAdapterVersion = cacheSelection
@@ -133,39 +77,13 @@ export function assessCodexInstall(env, homeDir = os.homedir(), deps = {}) {
133
77
  // Canonical runtime (~/.pd/runtime) as the "an update exists" signal.
134
78
  let canonicalAdapterVersion = null;
135
79
  try {
136
- canonicalAdapterVersion = JSON.parse(fsMod.readFileSync(path.join(os.homedir(), '.pd', 'runtime', 'codex-adapter', 'package.json'), 'utf8')).version ?? null;
80
+ canonicalAdapterVersion = JSON.parse(fsMod.readFileSync(path.join(homeDir, '.pd', 'runtime', 'codex-adapter', 'package.json'), 'utf8')).version ?? null;
137
81
  }
138
82
  catch { /* canonical runtime absent → null */ }
139
83
  // Newest rollout's declared CLI version (first line only) — HISTORICAL signal.
140
84
  let lastRolloutCliVersion = null;
141
85
  {
142
- const sessionsRoot = path.join(codexHome, 'sessions');
143
- let newest = null;
144
- const walk = (dir, depth) => {
145
- if (depth > 4)
146
- return;
147
- let entries;
148
- try {
149
- entries = fsMod.readdirSync(dir, { withFileTypes: true });
150
- }
151
- catch {
152
- return;
153
- }
154
- for (const entry of entries) {
155
- const full = path.join(dir, entry.name);
156
- if (entry.isDirectory())
157
- walk(full, depth + 1);
158
- else if (entry.isFile() && entry.name.startsWith('rollout-') && entry.name.endsWith('.jsonl')) {
159
- try {
160
- const { mtimeMs } = fsMod.statSync(full);
161
- if (!newest || mtimeMs > newest.mtimeMs)
162
- newest = { file: full, mtimeMs };
163
- }
164
- catch { /* stat race — skip */ }
165
- }
166
- }
167
- };
168
- walk(sessionsRoot, 0);
86
+ const newest = findNewestRolloutFile(codexHome, fsMod);
169
87
  if (newest) {
170
88
  try {
171
89
  // Real session_meta lines carry the host system prompt and can reach
@@ -1 +1 @@
1
- {"version":3,"file":"health-codex-install.js","sourceRoot":"","sources":["../../src/commands/health-codex-install.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"health-codex-install.js","sourceRoot":"","sources":["../../src/commands/health-codex-install.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,6 @@
5
5
  *
6
6
  * Delegates to PruningReadModel (core).
7
7
  */
8
- import type { PruningReviewDecision } from '@principles/core/runtime-v2';
9
8
  interface PruningReportOptions {
10
9
  workspace?: string;
11
10
  json?: boolean;
@@ -16,24 +15,7 @@ export interface PruningExplainOptions {
16
15
  workspace?: string;
17
16
  json?: boolean;
18
17
  }
19
- export interface PruningReviewOptions {
20
- principleId: string;
21
- decision: PruningReviewDecision;
22
- note?: string;
23
- reviewer?: string;
24
- workspace?: string;
25
- json?: boolean;
26
- }
27
- export declare function handlePruningReview(opts: PruningReviewOptions): void;
28
18
  export declare function handlePruningExplain(opts: PruningExplainOptions): void;
29
- export interface PruningRollbackOptions {
30
- principleId: string;
31
- note?: string;
32
- reviewer?: string;
33
- workspace?: string;
34
- json?: boolean;
35
- }
36
- export declare function handlePruningRollback(opts: PruningRollbackOptions): void;
37
19
  export interface PruningOrphansOptions {
38
20
  workspace?: string;
39
21
  dryRun?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-pruning.d.ts","sourceRoot":"","sources":["../../src/commands/runtime-pruning.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,KAAK,EAAE,qBAAqB,EAAiD,MAAM,6BAA6B,CAAC;AAIxH,UAAU,oBAAoB;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAoDD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,oBAAoB,GAAG,IAAI,CAepE;AAID,MAAM,WAAW,qBAAqB;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,qBAAqB,CAAC;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,oBAAoB,GAAG,IAAI,CAkEpE;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,qBAAqB,GAAG,IAAI,CAuCtE;AAID,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,sBAAsB,GAAG,IAAI,CAyDxE;AAID,MAAM,WAAW,qBAAqB;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAYD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,qBAAqB,GAAG,IAAI,CAwItE"}
1
+ {"version":3,"file":"runtime-pruning.d.ts","sourceRoot":"","sources":["../../src/commands/runtime-pruning.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AASH,UAAU,oBAAoB;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAoDD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,oBAAoB,GAAG,IAAI,CAepE;AAID,MAAM,WAAW,qBAAqB;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,qBAAqB,GAAG,IAAI,CAuCtE;AAID,MAAM,WAAW,qBAAqB;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAYD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,qBAAqB,GAAG,IAAI,CAwItE"}
@@ -7,7 +7,7 @@
7
7
  */
8
8
  import * as path from 'path';
9
9
  import { resolveWorkspaceDir } from '../resolve-workspace.js';
10
- import { PruningReadModel, appendPruningReview, listPruningReviews, buildMaskedPrincipleSet, removeOrphanReferencesFromLedger } from '@principles/core/runtime-v2';
10
+ import { PruningReadModel, removeOrphanReferencesFromLedger } from '@principles/core/runtime-v2';
11
11
  import { createRemediationResult, remediationAction } from './remediation-output.js';
12
12
  function outputText(summary, signals, workspaceDir) {
13
13
  console.log(`generatedAt: ${summary.generatedAt}`);
@@ -63,68 +63,6 @@ export function handlePruningReport(opts) {
63
63
  }
64
64
  outputText(summary, signals, workspaceDir);
65
65
  }
66
- export function handlePruningReview(opts) {
67
- const workspaceDir = opts.workspace
68
- ? path.resolve(opts.workspace)
69
- : resolveWorkspaceDir();
70
- const model = new PruningReadModel({ workspaceDir });
71
- const signals = model.getPrincipleSignals();
72
- const signal = signals.find((s) => s.principleId === opts.principleId);
73
- if (!signal) {
74
- if (opts.json) {
75
- console.log(JSON.stringify({ error: `Principle not found: '${opts.principleId}'` }));
76
- }
77
- else {
78
- console.error(`Error: Principle not found: '${opts.principleId}'`);
79
- }
80
- process.exit(1);
81
- return; // satisfies TypeScript control flow (process.exit is [noreturn] in tests)
82
- }
83
- if (opts.decision !== 'keep' && opts.decision !== 'defer' && opts.decision !== 'archive-candidate') {
84
- if (opts.json) {
85
- console.log(JSON.stringify({ error: `Invalid decision: '${opts.decision}'. Must be one of: keep, defer, archive-candidate` }));
86
- }
87
- else {
88
- console.error(`Error: Invalid decision: '${opts.decision}'. Must be one of: keep, defer, archive-candidate`);
89
- }
90
- process.exit(1);
91
- return;
92
- }
93
- if (opts.decision === 'archive-candidate' && !opts.note) {
94
- if (opts.json) {
95
- console.log(JSON.stringify({ error: 'archive-candidate decision requires --note' }));
96
- }
97
- else {
98
- console.error('Error: archive-candidate decision requires --note');
99
- }
100
- process.exit(1);
101
- return;
102
- }
103
- const record = appendPruningReview(workspaceDir, {
104
- principleId: signal.principleId,
105
- decision: opts.decision,
106
- note: opts.note ?? '',
107
- reviewer: opts.reviewer,
108
- signalSnapshot: signal,
109
- });
110
- if (opts.json) {
111
- console.log(JSON.stringify({
112
- reviewId: record.reviewId,
113
- principleId: record.principleId,
114
- decision: record.decision,
115
- reviewer: record.reviewer,
116
- reviewedAt: record.reviewedAt,
117
- }));
118
- return;
119
- }
120
- console.log(`reviewId: ${record.reviewId}`);
121
- console.log(`principleId: ${record.principleId}`);
122
- console.log(`decision: ${record.decision}`);
123
- console.log(`reviewer: ${record.reviewer}`);
124
- console.log(`reviewedAt: ${record.reviewedAt}`);
125
- console.log('');
126
- console.log('NOTE: This audit record does not modify the principle.');
127
- }
128
66
  export function handlePruningExplain(opts) {
129
67
  const workspaceDir = opts.workspace
130
68
  ? path.resolve(opts.workspace)
@@ -161,60 +99,6 @@ export function handlePruningExplain(opts) {
161
99
  console.log('');
162
100
  console.log('NOTE: This report is read-only. No principles are modified or deleted.');
163
101
  }
164
- export function handlePruningRollback(opts) {
165
- const workspaceDir = opts.workspace
166
- ? path.resolve(opts.workspace)
167
- : resolveWorkspaceDir();
168
- const reviews = listPruningReviews(workspaceDir, { principleId: opts.principleId });
169
- if (reviews.length === 0) {
170
- if (opts.json) {
171
- console.log(JSON.stringify({ error: `No reviews found for principle: '${opts.principleId}'` }));
172
- }
173
- else {
174
- console.error(`Error: No reviews found for principle: '${opts.principleId}'`);
175
- }
176
- process.exit(1);
177
- return;
178
- }
179
- const maskedIds = buildMaskedPrincipleSet(reviews);
180
- if (!maskedIds.has(opts.principleId)) {
181
- if (opts.json) {
182
- console.log(JSON.stringify({ error: `Principle '${opts.principleId}' is not currently masked (latest decision is not archive-candidate)` }));
183
- }
184
- else {
185
- console.error(`Error: Principle '${opts.principleId}' is not currently masked (latest decision is not archive-candidate)`);
186
- }
187
- process.exit(1);
188
- return;
189
- }
190
- const model = new PruningReadModel({ workspaceDir });
191
- const signals = model.getPrincipleSignals();
192
- const signal = signals.find((s) => s.principleId === opts.principleId) ?? undefined;
193
- const record = appendPruningReview(workspaceDir, {
194
- principleId: opts.principleId,
195
- decision: 'keep',
196
- note: opts.note ?? 'Rollback: restore principle injection',
197
- reviewer: opts.reviewer,
198
- signalSnapshot: signal,
199
- });
200
- if (opts.json) {
201
- console.log(JSON.stringify({
202
- reviewId: record.reviewId,
203
- principleId: record.principleId,
204
- decision: record.decision,
205
- reviewer: record.reviewer,
206
- reviewedAt: record.reviewedAt,
207
- }));
208
- return;
209
- }
210
- console.log(`reviewId: ${record.reviewId}`);
211
- console.log(`principleId: ${record.principleId}`);
212
- console.log(`decision: ${record.decision}`);
213
- console.log(`reviewer: ${record.reviewer}`);
214
- console.log(`reviewedAt: ${record.reviewedAt}`);
215
- console.log('');
216
- console.log('Principle has been restored to injection.');
217
- }
218
102
  function orphanActions(orphans) {
219
103
  return orphans.map((orphan) => remediationAction({
220
104
  action: 'remove_orphan_reference',
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-pruning.js","sourceRoot":"","sources":["../../src/commands/runtime-pruning.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime-pruning.js","sourceRoot":"","sources":["../../src/commands/runtime-pruning.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,11 @@
5
5
  * one parseable JSON object with the full canonical report (productVersion,
6
6
  * releaseId, components, bootstrapVersion, channel, source, generation,
7
7
  * health, lastTransaction).
8
+ *
9
+ * `--delivery` (PRI-1051) adds the four-surface delivery verdict and makes the
10
+ * exit code the machine-checkable "is this update actually in my hands"
11
+ * signal: every required surface must be `ok`, so `ready_needs_host_restart`
12
+ * also exits non-zero (the bytes arrived, the host has not loaded them yet).
8
13
  */
9
14
  import type { Command } from 'commander';
10
15
  export declare function registerVersionCommand(program: Command): void;
@@ -1 +1 @@
1
- {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/commands/version.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA+BzC,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAQ7D"}
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/commands/version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA8CzC,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAS7D"}
@@ -5,16 +5,37 @@
5
5
  * one parseable JSON object with the full canonical report (productVersion,
6
6
  * releaseId, components, bootstrapVersion, channel, source, generation,
7
7
  * health, lastTransaction).
8
+ *
9
+ * `--delivery` (PRI-1051) adds the four-surface delivery verdict and makes the
10
+ * exit code the machine-checkable "is this update actually in my hands"
11
+ * signal: every required surface must be `ok`, so `ready_needs_host_restart`
12
+ * also exits non-zero (the bytes arrived, the host has not loaded them yet).
8
13
  */
9
14
  import { buildVersionReport, formatShortVersion, VersionReportError } from '../services/version-report.js';
10
- async function runVersion(json) {
15
+ import { buildDeliveryReport, formatDeliveryReport } from '../services/delivery-surfaces.js';
16
+ async function runVersion(json, delivery) {
11
17
  try {
12
18
  const report = buildVersionReport();
13
- if (json) {
14
- console.log(JSON.stringify(report, null, 2));
19
+ if (!delivery) {
20
+ if (json) {
21
+ console.log(JSON.stringify(report, null, 2));
22
+ return;
23
+ }
24
+ console.log(formatShortVersion(report));
15
25
  return;
16
26
  }
17
- console.log(formatShortVersion(report));
27
+ const deliveryReport = buildDeliveryReport();
28
+ if (json) {
29
+ console.log(JSON.stringify({ ...report, delivery: deliveryReport }, null, 2));
30
+ }
31
+ else {
32
+ console.log(formatShortVersion(report));
33
+ console.log('');
34
+ console.log(formatDeliveryReport(deliveryReport));
35
+ }
36
+ if (!deliveryReport.ok) {
37
+ process.exitCode = 1;
38
+ }
18
39
  }
19
40
  catch (error) {
20
41
  if (error instanceof VersionReportError) {
@@ -41,8 +62,9 @@ export function registerVersionCommand(program) {
41
62
  .command('version')
42
63
  .description('Show the canonical PD product version and installation state')
43
64
  .option('--json', 'Emit the full canonical version report as one JSON object', false)
65
+ .option('--delivery', 'Also verify the four delivery surfaces (canonical runtime, OpenClaw extension, Codex plugin, Companion); exits non-zero unless every required surface is ok', false)
44
66
  .action(async (opts) => {
45
- await runVersion(opts.json === true);
67
+ await runVersion(opts.json === true, opts.delivery === true);
46
68
  });
47
69
  }
48
70
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/commands/version.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAE3G,KAAK,UAAU,UAAU,CAAC,IAAa;IACrC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;QACpC,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC7C,OAAO;QACT,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC;IAC1C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,kBAAkB,EAAE,CAAC;YACxC,IAAI,IAAI,EAAE,CAAC;gBACT,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;oBACzB,EAAE,EAAE,KAAK;oBACT,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,UAAU,EAAE,KAAK,CAAC,UAAU;iBAC7B,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACf,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC7B,OAAO,CAAC,KAAK,CAAC,SAAS,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;YAC7C,CAAC;YACD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,OAAgB;IACrD,OAAO;SACJ,OAAO,CAAC,SAAS,CAAC;SAClB,WAAW,CAAC,8DAA8D,CAAC;SAC3E,MAAM,CAAC,QAAQ,EAAE,2DAA2D,EAAE,KAAK,CAAC;SACpF,MAAM,CAAC,KAAK,EAAE,IAA6B,EAAE,EAAE;QAC9C,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/commands/version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAC3G,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAE7F,KAAK,UAAU,UAAU,CAAC,IAAa,EAAE,QAAiB;IACxD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;QACpC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,IAAI,IAAI,EAAE,CAAC;gBACT,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC7C,OAAO;YACT,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC;YACxC,OAAO;QACT,CAAC;QACD,MAAM,cAAc,GAAG,mBAAmB,EAAE,CAAC;QAC7C,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAChF,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC;YACxC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC;YACvB,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACvB,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,kBAAkB,EAAE,CAAC;YACxC,IAAI,IAAI,EAAE,CAAC;gBACT,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;oBACzB,EAAE,EAAE,KAAK;oBACT,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,UAAU,EAAE,KAAK,CAAC,UAAU;iBAC7B,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACf,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC7B,OAAO,CAAC,KAAK,CAAC,SAAS,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;YAC7C,CAAC;YACD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,OAAgB;IACrD,OAAO;SACJ,OAAO,CAAC,SAAS,CAAC;SAClB,WAAW,CAAC,8DAA8D,CAAC;SAC3E,MAAM,CAAC,QAAQ,EAAE,2DAA2D,EAAE,KAAK,CAAC;SACpF,MAAM,CAAC,YAAY,EAAE,6JAA6J,EAAE,KAAK,CAAC;SAC1L,MAAM,CAAC,KAAK,EAAE,IAA6B,EAAE,EAAE;QAC9C,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;AACP,CAAC"}
package/dist/index.js CHANGED
@@ -30,7 +30,7 @@ import { handleDiagnoseStatus, handleDiagnoseRun } from './commands/diagnose.js'
30
30
  import { registerRuntimeProbeCommand } from './commands/runtime.js';
31
31
  import { handleFlowShow } from './commands/flow.js';
32
32
  import { handleTraceShow } from './commands/trace.js';
33
- import { handlePruningReport, handlePruningExplain, handlePruningReview, handlePruningRollback, handlePruningOrphans } from './commands/runtime-pruning.js';
33
+ import { handlePruningReport, handlePruningExplain, handlePruningOrphans } from './commands/runtime-pruning.js';
34
34
  import { handleRuntimeHealthSnapshot } from './commands/runtime-health-snapshot.js';
35
35
  import { handleRuntimeGfiSnapshot } from './commands/runtime-gfi-snapshot.js';
36
36
  import { handleRuntimeUat } from './commands/runtime-uat.js';
@@ -913,42 +913,6 @@ pruningCmd
913
913
  .action((opts) => {
914
914
  handlePruningExplain({ principleId: opts.principleId, workspace: opts.workspace, json: opts.json });
915
915
  });
916
- pruningCmd
917
- .command('review')
918
- .description('Record a human pruning decision for a flagged principle')
919
- .requiredOption('--principle-id <id>', 'Principle ID to review')
920
- .requiredOption('--decision <decision>', "Decision: keep, defer, or archive-candidate")
921
- .option('--note <text>', 'Review note (required for archive-candidate)')
922
- .option('--reviewer <name>', 'Reviewer name', 'operator')
923
- .option('-w, --workspace <path>', 'Workspace directory')
924
- .option('--json', 'Output raw JSON')
925
- .action((opts) => {
926
- handlePruningReview({
927
- principleId: opts.principleId,
928
- decision: opts.decision,
929
- note: opts.note,
930
- reviewer: opts.reviewer,
931
- workspace: opts.workspace,
932
- json: opts.json,
933
- });
934
- });
935
- pruningCmd
936
- .command('rollback')
937
- .description('Restore a masked principle to injection by overriding archive-candidate')
938
- .requiredOption('--principle-id <id>', 'Principle ID to restore')
939
- .option('--note <text>', 'Reason for rollback')
940
- .option('--reviewer <name>', 'Reviewer name', 'operator')
941
- .option('-w, --workspace <path>', 'Workspace directory')
942
- .option('--json', 'Output raw JSON')
943
- .action((opts) => {
944
- handlePruningRollback({
945
- principleId: opts.principleId,
946
- note: opts.note,
947
- reviewer: opts.reviewer,
948
- workspace: opts.workspace,
949
- json: opts.json,
950
- });
951
- });
952
916
  pruningCmd
953
917
  .command('orphans')
954
918
  .description('List orphan derived candidates not found in state.db')