@telora/daemon 0.22.91 → 0.22.104

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.
Files changed (161) hide show
  1. package/build-info.json +6 -3
  2. package/dist/cli/verify-setup-config.d.ts +4 -3
  3. package/dist/cli/verify-setup-config.d.ts.map +1 -1
  4. package/dist/cli/verify-setup-config.js.map +1 -1
  5. package/dist/completion/event-phases.js +5 -5
  6. package/dist/completion/event-phases.js.map +1 -1
  7. package/dist/completion/event.d.ts +7 -0
  8. package/dist/completion/event.d.ts.map +1 -1
  9. package/dist/completion/event.js.map +1 -1
  10. package/dist/completion/review-exit-phase.d.ts.map +1 -1
  11. package/dist/completion/review-exit-phase.js +2 -1
  12. package/dist/completion/review-exit-phase.js.map +1 -1
  13. package/dist/delivery/external-hold.js +1 -1
  14. package/dist/delivery/external-hold.js.map +1 -1
  15. package/dist/delivery/operator-hold.d.ts +14 -0
  16. package/dist/delivery/operator-hold.d.ts.map +1 -1
  17. package/dist/delivery/operator-hold.js +31 -1
  18. package/dist/delivery/operator-hold.js.map +1 -1
  19. package/dist/directive/directive-dispatch.js +2 -2
  20. package/dist/directive/directive-dispatch.js.map +1 -1
  21. package/dist/directive/directive-executor.d.ts.map +1 -1
  22. package/dist/directive/directive-executor.js +2 -1
  23. package/dist/directive/directive-executor.js.map +1 -1
  24. package/dist/directive/directive-verify-hold-gate.d.ts +32 -8
  25. package/dist/directive/directive-verify-hold-gate.d.ts.map +1 -1
  26. package/dist/directive/directive-verify-hold-gate.js +20 -21
  27. package/dist/directive/directive-verify-hold-gate.js.map +1 -1
  28. package/dist/focus/focus-engine.d.ts.map +1 -1
  29. package/dist/focus/focus-engine.js +6 -9
  30. package/dist/focus/focus-engine.js.map +1 -1
  31. package/dist/focus/listener-spawn.d.ts +31 -0
  32. package/dist/focus/listener-spawn.d.ts.map +1 -1
  33. package/dist/focus/listener-spawn.js +44 -22
  34. package/dist/focus/listener-spawn.js.map +1 -1
  35. package/dist/focus/listener.d.ts.map +1 -1
  36. package/dist/focus/listener.js +4 -0
  37. package/dist/focus/listener.js.map +1 -1
  38. package/dist/focus/team-actionable-work.d.ts +76 -20
  39. package/dist/focus/team-actionable-work.d.ts.map +1 -1
  40. package/dist/focus/team-actionable-work.js +85 -20
  41. package/dist/focus/team-actionable-work.js.map +1 -1
  42. package/dist/git/exec.d.ts.map +1 -1
  43. package/dist/git/exec.js +2 -1
  44. package/dist/git/exec.js.map +1 -1
  45. package/dist/nexus/incoming.js +1 -1
  46. package/dist/nexus/incoming.js.map +1 -1
  47. package/dist/nexus/pending-returns.d.ts +124 -0
  48. package/dist/nexus/pending-returns.d.ts.map +1 -0
  49. package/dist/nexus/pending-returns.js +194 -0
  50. package/dist/nexus/pending-returns.js.map +1 -0
  51. package/dist/nexus/return-routing.d.ts +89 -0
  52. package/dist/nexus/return-routing.d.ts.map +1 -0
  53. package/dist/nexus/return-routing.js +148 -0
  54. package/dist/nexus/return-routing.js.map +1 -0
  55. package/dist/nexus/return.d.ts +66 -89
  56. package/dist/nexus/return.d.ts.map +1 -1
  57. package/dist/nexus/return.js +116 -279
  58. package/dist/nexus/return.js.map +1 -1
  59. package/dist/prompt/focus-prompt-builder.d.ts.map +1 -1
  60. package/dist/prompt/focus-prompt-builder.js +1 -0
  61. package/dist/prompt/focus-prompt-builder.js.map +1 -1
  62. package/dist/queries/delivery-gate-state.d.ts +31 -0
  63. package/dist/queries/delivery-gate-state.d.ts.map +1 -1
  64. package/dist/queries/delivery-gate-state.js +31 -4
  65. package/dist/queries/delivery-gate-state.js.map +1 -1
  66. package/dist/queries/focus-discovery.d.ts +7 -1
  67. package/dist/queries/focus-discovery.d.ts.map +1 -1
  68. package/dist/queries/focus-discovery.js +9 -3
  69. package/dist/queries/focus-discovery.js.map +1 -1
  70. package/dist/queries/requests.d.ts +51 -3
  71. package/dist/queries/requests.d.ts.map +1 -1
  72. package/dist/queries/requests.js +63 -10
  73. package/dist/queries/requests.js.map +1 -1
  74. package/dist/queries/shared.js +1 -1
  75. package/dist/queries/verification.d.ts +15 -0
  76. package/dist/queries/verification.d.ts.map +1 -1
  77. package/dist/queries/verification.js +2 -0
  78. package/dist/queries/verification.js.map +1 -1
  79. package/dist/shell/config.d.ts.map +1 -1
  80. package/dist/shell/config.js +10 -9
  81. package/dist/shell/config.js.map +1 -1
  82. package/dist/shell/unified-shell-status.d.ts +6 -0
  83. package/dist/shell/unified-shell-status.d.ts.map +1 -1
  84. package/dist/shell/unified-shell-status.js +9 -2
  85. package/dist/shell/unified-shell-status.js.map +1 -1
  86. package/dist/spawn/prompt-assembly.js +1 -1
  87. package/dist/spawn/prompt-assembly.js.map +1 -1
  88. package/dist/spawn/respawn-cycle-escalation.d.ts.map +1 -1
  89. package/dist/spawn/respawn-cycle-escalation.js +11 -3
  90. package/dist/spawn/respawn-cycle-escalation.js.map +1 -1
  91. package/dist/spawn/review-hold-park.d.ts +31 -0
  92. package/dist/spawn/review-hold-park.d.ts.map +1 -0
  93. package/dist/spawn/review-hold-park.js +120 -0
  94. package/dist/spawn/review-hold-park.js.map +1 -0
  95. package/dist/spawn/spawn-cooldown.d.ts +27 -4
  96. package/dist/spawn/spawn-cooldown.d.ts.map +1 -1
  97. package/dist/spawn/spawn-cooldown.js +88 -3
  98. package/dist/spawn/spawn-cooldown.js.map +1 -1
  99. package/dist/spawn/spawn-decision.d.ts.map +1 -1
  100. package/dist/spawn/spawn-decision.js +6 -0
  101. package/dist/spawn/spawn-decision.js.map +1 -1
  102. package/dist/testing/fixtures/index.js +1 -1
  103. package/dist/types/config.d.ts +9 -6
  104. package/dist/types/config.d.ts.map +1 -1
  105. package/dist/types/index.js +1 -1
  106. package/dist/update/auto-update-idle.d.ts.map +1 -1
  107. package/dist/update/auto-update-idle.js +2 -1
  108. package/dist/update/auto-update-idle.js.map +1 -1
  109. package/dist/verify/failure-signature.d.ts.map +1 -1
  110. package/dist/verify/failure-signature.js +1 -0
  111. package/dist/verify/failure-signature.js.map +1 -1
  112. package/dist/verify/verification-baseline.d.ts +63 -16
  113. package/dist/verify/verification-baseline.d.ts.map +1 -1
  114. package/dist/verify/verification-baseline.js +74 -34
  115. package/dist/verify/verification-baseline.js.map +1 -1
  116. package/dist/verify/verification-checkout.d.ts +71 -0
  117. package/dist/verify/verification-checkout.d.ts.map +1 -0
  118. package/dist/verify/verification-checkout.js +353 -0
  119. package/dist/verify/verification-checkout.js.map +1 -0
  120. package/dist/verify/verification-config.d.ts +76 -0
  121. package/dist/verify/verification-config.d.ts.map +1 -1
  122. package/dist/verify/verification-config.js +100 -12
  123. package/dist/verify/verification-config.js.map +1 -1
  124. package/dist/verify/verification-default-on.d.ts +102 -11
  125. package/dist/verify/verification-default-on.d.ts.map +1 -1
  126. package/dist/verify/verification-default-on.js +252 -16
  127. package/dist/verify/verification-default-on.js.map +1 -1
  128. package/dist/verify/verification-deps-default.js +1 -1
  129. package/dist/verify/verification-deps-default.js.map +1 -1
  130. package/dist/verify/verification-deps.d.ts +28 -3
  131. package/dist/verify/verification-deps.d.ts.map +1 -1
  132. package/dist/verify/verification-deterministic.d.ts +63 -1
  133. package/dist/verify/verification-deterministic.d.ts.map +1 -1
  134. package/dist/verify/verification-deterministic.js +38 -29
  135. package/dist/verify/verification-deterministic.js.map +1 -1
  136. package/dist/verify/verification-engine.d.ts.map +1 -1
  137. package/dist/verify/verification-engine.js +20 -20
  138. package/dist/verify/verification-engine.js.map +1 -1
  139. package/dist/verify/verification-evidence-unavailable-feedback.d.ts.map +1 -1
  140. package/dist/verify/verification-evidence-unavailable-feedback.js +6 -1
  141. package/dist/verify/verification-evidence-unavailable-feedback.js.map +1 -1
  142. package/dist/verify/verification-feedback.d.ts +3 -0
  143. package/dist/verify/verification-feedback.d.ts.map +1 -1
  144. package/dist/verify/verification-feedback.js +5 -2
  145. package/dist/verify/verification-feedback.js.map +1 -1
  146. package/dist/verify/verification-manifest.d.ts.map +1 -1
  147. package/dist/verify/verification-manifest.js +1 -0
  148. package/dist/verify/verification-manifest.js.map +1 -1
  149. package/dist/verify/verification-timeout-fault.d.ts +147 -0
  150. package/dist/verify/verification-timeout-fault.d.ts.map +1 -0
  151. package/dist/verify/verification-timeout-fault.js +211 -0
  152. package/dist/verify/verification-timeout-fault.js.map +1 -0
  153. package/dist/verify/verify-gate-stall.d.ts +5 -1
  154. package/dist/verify/verify-gate-stall.d.ts.map +1 -1
  155. package/dist/verify/verify-gate-stall.js +10 -1
  156. package/dist/verify/verify-gate-stall.js.map +1 -1
  157. package/dist/worktree/verify-interlock.d.ts +9 -1
  158. package/dist/worktree/verify-interlock.d.ts.map +1 -1
  159. package/dist/worktree/verify-interlock.js +40 -3
  160. package/dist/worktree/verify-interlock.js.map +1 -1
  161. package/package.json +2 -2
@@ -4,10 +4,11 @@
4
4
  // packages/daemon/src/verify/verification-default-on.test.ts,
5
5
  // packages/daemon/src/verify/verification-manifest.test.ts,
6
6
  // packages/daemon/src/verify/verification-posture.test.ts,
7
+ // packages/daemon/src/verify/verification-run-config-source.test.ts,
7
8
  // packages/daemon/src/verify/verification-tick-product-scoping.test.ts
8
9
  // PINNED-BY-END
9
10
  import { loadEnvConfig } from '@telora/daemon-core';
10
- import { readVerifyManifest } from './verification-manifest.js';
11
+ import { readVerifyManifest, resolveVerifyManifestPath, VERIFY_MANIFEST_FILENAME, } from './verification-manifest.js';
11
12
  /** Default timeout for the default-on deterministic run: 30 min (full build+test sweep). */
12
13
  export const DEFAULT_VERIFY_TIMEOUT_MS = 30 * 60 * 1000;
13
14
  /** Default max concurrent daemon-side verification runs. */
@@ -18,6 +19,37 @@ export const VERIFY_ENV = {
18
19
  TIMEOUT_MS: 'TELORA_DEFAULT_VERIFY_TIMEOUT_MS',
19
20
  MAX_CONCURRENT: 'TELORA_DEFAULT_VERIFY_MAX_CONCURRENT',
20
21
  };
22
+ /**
23
+ * A source as one human-readable label, the form every surface prints (gate
24
+ * state, escalations, `telora-daemon status`), so the same layer reads the same
25
+ * everywhere. A manifest names its absolute path, which also answers WHICH
26
+ * checkout's manifest applied. The `default` label names the typed timeout
27
+ * default: a defaulted command is '' (verification disabled), never printed.
28
+ */
29
+ export function formatVerifyConfigSource(src) {
30
+ switch (src.layer) {
31
+ case 'env':
32
+ return `env ${src.envVar}`;
33
+ case 'daemon.json':
34
+ return 'daemon.json defaultVerification';
35
+ case 'manifest':
36
+ return src.path;
37
+ case 'manifest_fallback':
38
+ return `${src.path} (fallback: the verified commit ships no telora.verify.json)`;
39
+ case 'default':
40
+ return `default (${DEFAULT_VERIFY_TIMEOUT_MS}ms)`;
41
+ case 'delivery':
42
+ return 'delivery verification config';
43
+ }
44
+ }
45
+ /** The first layer that supplies a value, else the fallback -- precedence and provenance in one read. */
46
+ function pickLayer(layers, fallback) {
47
+ for (const layer of layers) {
48
+ if (layer.value !== undefined)
49
+ return { value: layer.value, source: layer.source };
50
+ }
51
+ return fallback;
52
+ }
21
53
  /**
22
54
  * Resolve the default-on verification config from
23
55
  * env > operator file > repo manifest > typed default.
@@ -53,23 +85,78 @@ export function resolveDefaultVerification(config, env = process.env, readManife
53
85
  : undefined;
54
86
  // An explicit operator decline outranks the repo manifest (see docstring).
55
87
  const manifestCommand = file?.declined === true ? undefined : manifest?.command;
56
- const command = (envCommand !== undefined && envCommand.trim() !== '' ? envCommand : undefined)
57
- ?? fileCommand
58
- ?? manifestCommand
59
- ?? '';
60
- const timeoutMs = envCfg.TELORA_DEFAULT_VERIFY_TIMEOUT_MS
61
- ?? (typeof file?.timeoutMs === 'number' && file.timeoutMs > 0 ? file.timeoutMs : undefined)
62
- ?? manifest?.timeoutMs
63
- ?? DEFAULT_VERIFY_TIMEOUT_MS;
88
+ const daemonJson = { layer: 'daemon.json' };
89
+ const manifestSource = {
90
+ layer: 'manifest',
91
+ path: config.repoPath !== undefined ? resolveVerifyManifestPath(config.repoPath) : VERIFY_MANIFEST_FILENAME,
92
+ };
93
+ const command = pickLayer([
94
+ { value: envCommand !== undefined && envCommand.trim() !== '' ? envCommand : undefined, source: { layer: 'env', envVar: VERIFY_ENV.COMMAND } },
95
+ { value: fileCommand, source: daemonJson },
96
+ { value: manifestCommand, source: manifestSource },
97
+ ], { value: '', source: { layer: 'default' } });
98
+ const timeoutMs = pickLayer([
99
+ { value: envCfg.TELORA_DEFAULT_VERIFY_TIMEOUT_MS, source: { layer: 'env', envVar: VERIFY_ENV.TIMEOUT_MS } },
100
+ { value: typeof file?.timeoutMs === 'number' && file.timeoutMs > 0 ? file.timeoutMs : undefined, source: daemonJson },
101
+ { value: manifest?.timeoutMs, source: manifestSource },
102
+ ], { value: DEFAULT_VERIFY_TIMEOUT_MS, source: { layer: 'default' } });
64
103
  const maxConcurrent = envCfg.TELORA_DEFAULT_VERIFY_MAX_CONCURRENT
65
104
  ?? (typeof file?.maxConcurrent === 'number' && file.maxConcurrent > 0 ? file.maxConcurrent : undefined)
66
105
  ?? manifest?.maxConcurrent
67
106
  ?? DEFAULT_VERIFY_MAX_CONCURRENT;
68
107
  return {
69
- command,
70
- timeoutMs,
108
+ command: command.value,
109
+ timeoutMs: timeoutMs.value,
71
110
  maxConcurrent,
72
- enabled: command.trim().length > 0,
111
+ enabled: command.value.trim().length > 0,
112
+ sources: { command: command.source, timeoutMs: timeoutMs.source },
113
+ };
114
+ }
115
+ /**
116
+ * Resolve the command + timeout a deterministic run APPLIES, from the code it
117
+ * runs in: env > operator block > the manifest at `runPath` > the manifest at
118
+ * `source.repoPath` (recorded fallback) > typed default.
119
+ *
120
+ * The fallback is taken ONLY when the code at `runPath` ships no manifest, and
121
+ * it is recorded on the result (`manifestFallback`; `manifestPath` names the
122
+ * repoPath manifest, `verifiedManifestPath` where the verified code was read), so
123
+ * a value from another checkout is never applied silently. A MALFORMED manifest
124
+ * at `runPath` throws (readVerifyManifest names the file) and never falls back:
125
+ * the branch declared something unreadable, and substituting the operator
126
+ * checkout's value is exactly the silent swap this resolution removes.
127
+ */
128
+ export function resolveAppliedVerificationConfig(source, runPath, env = process.env, readManifest = readVerifyManifest) {
129
+ const verifiedManifestPath = resolveVerifyManifestPath(runPath);
130
+ const read = { fallback: false };
131
+ const readVerifiedThenFallback = (path) => {
132
+ const own = readManifest(path);
133
+ if (own !== undefined) {
134
+ read.manifestPath = verifiedManifestPath;
135
+ return own;
136
+ }
137
+ if (!source.repoPath || resolveVerifyManifestPath(source.repoPath) === verifiedManifestPath)
138
+ return undefined;
139
+ const fallback = readManifest(source.repoPath);
140
+ if (fallback !== undefined) {
141
+ read.manifestPath = resolveVerifyManifestPath(source.repoPath);
142
+ read.fallback = true;
143
+ }
144
+ return fallback;
145
+ };
146
+ const resolved = resolveDefaultVerification({ defaultVerification: source.defaultVerification, repoPath: runPath }, env, readVerifiedThenFallback);
147
+ // The resolver named the manifest it was ASKED for (the verified checkout's);
148
+ // when the fallback answered instead, the label must name the repoPath manifest
149
+ // that actually supplied the timeout.
150
+ const timeoutSource = resolved.sources.timeoutMs.layer === 'manifest' && read.fallback && read.manifestPath !== undefined
151
+ ? { layer: 'manifest_fallback', path: read.manifestPath, verifiedPath: verifiedManifestPath }
152
+ : resolved.sources.timeoutMs;
153
+ return {
154
+ command: resolved.command,
155
+ timeoutMs: resolved.timeoutMs,
156
+ timeoutSource: formatVerifyConfigSource(timeoutSource),
157
+ verifiedManifestPath,
158
+ ...(read.manifestPath !== undefined ? { manifestPath: read.manifestPath } : {}),
159
+ ...(read.fallback ? { manifestFallback: true } : {}),
73
160
  };
74
161
  }
75
162
  /**
@@ -116,6 +203,7 @@ export function buildProductPostureMap(products, globalBlock, env = process.env,
116
203
  posture: deriveVerificationPosture(scoped, env, readManifest),
117
204
  command: resolved.command,
118
205
  timeoutMs: resolved.timeoutMs,
206
+ timeoutSource: formatVerifyConfigSource(resolved.sources.timeoutMs),
119
207
  };
120
208
  }
121
209
  return map;
@@ -1 +1 @@
1
- {"version":3,"file":"verification-config.js","sourceRoot":"","sources":["../../src/verify/verification-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verification-config.js","sourceRoot":"","sources":["../../src/verify/verification-config.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,7 @@ import { type ProductEntry } from '@telora/daemon-core';
18
18
  import type { DaemonConfig } from '../types/index.js';
19
19
  import type { PendingVerification } from '../queries/verification.js';
20
20
  import { type ResolvedDefaultVerification } from './verification-config.js';
21
+ import { type VerifyManifest, type VerifyManifestReader } from './verification-manifest.js';
21
22
  import type { getActiveFocuses } from '../queries/focus-discovery.js';
22
23
  import type { getFocusDeliveries } from '../queries/focuses.js';
23
24
  /**
@@ -28,6 +29,19 @@ import type { getFocusDeliveries } from '../queries/focuses.js';
28
29
  export interface DefaultOnScanDeps {
29
30
  getActiveFocuses: typeof getActiveFocuses;
30
31
  getFocusDeliveries: typeof getFocusDeliveries;
32
+ /**
33
+ * The focus worktree's current HEAD sha, read to keep a delivery whose verify
34
+ * FAILED from re-running on the same unchanged commit. A null read keeps a
35
+ * recorded failure suppressed: only a KNOWN different commit re-arms it.
36
+ */
37
+ resolveFocusHeadSha?: (focusId: string) => string | null;
38
+ /**
39
+ * The telora.verify.json the focus's judged commit (its worktree HEAD) ships,
40
+ * read when the product repoPath resolves no command; null when the focus has
41
+ * no worktree, `unreadable` when git could not answer. Defaults to a git read
42
+ * of that commit.
43
+ */
44
+ readJudgedCommitManifest?: (focusId: string) => JudgedCommitRead | null;
31
45
  }
32
46
  /**
33
47
  * Counting semaphore capping concurrent daemon-side verification runs.
@@ -74,11 +88,17 @@ export interface ProductVerificationScope {
74
88
  productConfig: DaemonConfig;
75
89
  /**
76
90
  * The resolved default-on config, or `undefined` when resolution FAILED (a
77
- * malformed repo manifest). Undefined means "this product's default-on gate is
78
- * off this tick" -- never "verification is disabled here", which is what a
79
- * silent degrade to '' would have said.
91
+ * malformed repo manifest). Undefined means "the repoPath gate is off this
92
+ * tick" -- never "verification is disabled here", which is what a silent
93
+ * degrade to '' would have said.
80
94
  */
81
95
  resolved: ResolvedDefaultVerification | undefined;
96
+ /**
97
+ * Present only beside an undefined `resolved`: what the default-on scan runs
98
+ * with instead -- no command, so each delivery is armed by its judged commit
99
+ * alone. Absent when even that resolution failed.
100
+ */
101
+ judgedCommitOnly?: ResolvedDefaultVerification;
82
102
  }
83
103
  /**
84
104
  * Resolve the default-on verification config for every product, from each
@@ -100,12 +120,21 @@ export interface ProductVerificationScope {
100
120
  * product including healthy ones, so it is contained HERE: logged at ERROR
101
121
  * naming the product and the manifest path (every tick -- a persistent,
102
122
  * operator-visible state, never a debug line), and that product's `resolved`
103
- * comes back `undefined` so its default-on scan stays off while other products
104
- * keep gating. The product's EXPLICIT-method deliveries still verify: they carry
123
+ * comes back `undefined`: it contributes no cap while other products keep
124
+ * gating. The product's EXPLICIT-method deliveries still verify: they carry
105
125
  * their own command on the delivery row, so a repo-root manifest typo has no
106
126
  * bearing on them and must not disarm them.
127
+ *
128
+ * Nor does the typo disarm a branch that ships a working gate. repoPath is the
129
+ * operator's checkout, which may lag the code under verification, so the product
130
+ * is resolved again with that manifest set aside (`judgedCommitOnly`) and its
131
+ * scan still arms each delivery from the manifest its judged commit ships. That
132
+ * resolution carries no command even when env or daemon.json declare one: a
133
+ * delivery whose commit ships no manifest would fall back at dispatch to the
134
+ * broken repoPath file and fail on it, so until the file is fixed only
135
+ * branch-declared gates arm.
107
136
  */
108
- export declare function resolveProductVerificationScopes(config: DaemonConfig, resolve: (c: DaemonConfig) => ResolvedDefaultVerification): ProductVerificationScope[];
137
+ export declare function resolveProductVerificationScopes(config: DaemonConfig, resolve: (c: DaemonConfig, readManifest?: VerifyManifestReader) => ResolvedDefaultVerification): ProductVerificationScope[];
109
138
  /**
110
139
  * Resolve the ONE daemon-wide concurrency cap for the shared semaphore.
111
140
  *
@@ -135,7 +164,7 @@ export declare function resolveProductVerificationScopes(config: DaemonConfig, r
135
164
  * conservative floor, not a stale limit from a previous tick.
136
165
  */
137
166
  export declare function resolveDaemonWideVerifyCap(scopes: readonly ProductVerificationScope[]): number;
138
- /** Test-only: reset the default-on re-run guard. */
167
+ /** Test-only: reset the default-on re-run guards (status- and HEAD-keyed). */
139
168
  export declare function __resetDefaultOnGuardForTests(): void;
140
169
  /** Test-only: snapshot of the default-on re-run guard. */
141
170
  export declare function __getDefaultOnGuardForTests(): ReadonlySet<string>;
@@ -143,18 +172,80 @@ export declare function __getDefaultOnGuardForTests(): ReadonlySet<string>;
143
172
  export declare function markDefaultOnRan(deliveryId: string): void;
144
173
  /** Test-only alias for markDefaultOnRan. */
145
174
  export declare function __markDefaultOnRanForTests(deliveryId: string): void;
175
+ /** The slice of a verification result {@link noteDefaultOnResult} reads. */
176
+ export interface DefaultOnResultFacts {
177
+ outcome: string;
178
+ exitCode?: number | null;
179
+ timedOut?: boolean;
180
+ verifiedSha?: string;
181
+ checkoutUnavailable?: boolean;
182
+ }
183
+ /**
184
+ * Dispatch-result bookkeeping for a default-on run:
185
+ * - no checkout could be made -> un-mark, so the next tick retries (the run
186
+ * never happened; no verdict exists to guard);
187
+ * - the gate command FAILED at a known sha (non-zero exit, not a timeout, final
188
+ * outcome failed) -> record the sha so that commit is not re-verified;
189
+ * - a pass -> forget any recorded failure.
190
+ */
191
+ export declare function noteDefaultOnResult(deliveryId: string, result: DefaultOnResultFacts): void;
192
+ /**
193
+ * What the commit a delivery is judged on declares in telora.verify.json, read
194
+ * from git AT that sha -- never the worktree's files, which may hold edits the
195
+ * verify never sees. No `manifest` and no `malformed` means the commit ships none.
196
+ */
197
+ export interface JudgedCommitManifest {
198
+ sha: string;
199
+ /** Where the manifest sits in the focus worktree (the path a source label names). */
200
+ manifestPath: string;
201
+ manifest?: VerifyManifest;
202
+ /** The reader's error when the committed file exists but cannot be used. */
203
+ malformed?: string;
204
+ }
205
+ /**
206
+ * Git could not say what the judged commit ships (a failed rev-parse, ls-tree or
207
+ * show). That is neither "ships none" nor malformed -- it is no answer -- so it
208
+ * is never remembered: the next tick asks again.
209
+ */
210
+ export interface JudgedCommitUnreadable {
211
+ unreadable: string;
212
+ }
213
+ export type JudgedCommitRead = JudgedCommitManifest | JudgedCommitUnreadable;
214
+ type GitRun = (args: string[], cwd: string) => {
215
+ success: boolean;
216
+ output: string;
217
+ error?: string;
218
+ };
219
+ /**
220
+ * Build the judged-commit manifest reader over a focus -> worktree lookup. A file
221
+ * is immutable at a sha, so each worktree's last read is reused while its HEAD
222
+ * is unchanged rather than re-running git every tick. Only reads git answered
223
+ * are kept; an unreadable one is retried on the next call.
224
+ */
225
+ export declare function buildJudgedCommitManifestReader(resolveWorktreePath?: (focusId: string) => string | null, runGit?: GitRun): (focusId: string) => JudgedCommitRead | null;
146
226
  /**
147
227
  * Discover deliveries that should receive a DEFAULT-ON deterministic run: in
148
228
  * `verify` status, anchored to an injection, with no explicit verification
149
229
  * method (so not already returned by getPendingVerifications), not in a
150
- * read-only audit focus (those are discovery-only and never run a suite), and
151
- * not already run this verify-entry (steady-state guard).
230
+ * read-only audit focus (those are discovery-only and never run a suite), not
231
+ * already run this verify-entry (steady-state guard), and not failed on the
232
+ * focus's unchanged HEAD (HEAD-keyed guard).
152
233
  *
153
234
  * Synthesizes a `deterministic` PendingVerification carrying the resolved
154
- * config-default command + timeout. Returns [] when the default-on path is
155
- * disabled (no command configured) so the feature is inert until opted in.
235
+ * config-default command + timeout and a `defaultOnSource` marker. Those values
236
+ * are PROVISIONAL -- resolved against the product repoPath, which may lag the
237
+ * branch -- and a run on a detached checkout re-resolves both from the verified
238
+ * code (verify/verification-checkout.ts).
239
+ *
240
+ * Arming does not wait on repoPath either. When no command resolves there, each
241
+ * delivery is armed from the telora.verify.json its judged commit ships
242
+ * (armFromJudgedCommit), so a branch that introduces the gate is verified on its
243
+ * next run. An operator's `declined` marker is the exception: it suppresses the
244
+ * repo manifest, and no branch overturns it. With no command anywhere the
245
+ * feature stays inert.
156
246
  *
157
247
  * `config` must be product-scoped (config.productId identifies the product).
158
248
  */
159
249
  export declare function collectDefaultOnVerifications(config: DaemonConfig, resolved: ResolvedDefaultVerification, explicitDeliveryIds: ReadonlySet<string>, deps: DefaultOnScanDeps): Promise<PendingVerification[]>;
250
+ export {};
160
251
  //# sourceMappingURL=verification-default-on.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"verification-default-on.d.ts","sourceRoot":"","sources":["../../src/verify/verification-default-on.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAmB,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAiC,KAAK,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AAG3G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAMhE;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,gBAAgB,EAAE,OAAO,gBAAgB,CAAC;IAC1C,kBAAkB,EAAE,OAAO,kBAAkB,CAAC;CAC/C;AAMD;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAyB;gBAErC,KAAK,EAAE,MAAM;IAKzB,mFAAmF;IACnF,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAavB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ9B,OAAO,IAAI,IAAI;IASf,2DAA2D;IAC3D,gBAAgB,IAAI,MAAM;CAG3B;AAED,8EAA8E;AAC9E,eAAO,MAAM,qBAAqB,uBAA+B,CAAC;AAElE,oDAAoD;AACpD,wBAAgB,kCAAkC,IAAI;IAAE,gBAAgB,IAAI,MAAM,CAAC;IAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAE9G;AAMD;;;GAGG;AACH,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,YAAY,CAAC;IACtB,2FAA2F;IAC3F,aAAa,EAAE,YAAY,CAAC;IAC5B;;;;;OAKG;IACH,QAAQ,EAAE,2BAA2B,GAAG,SAAS,CAAC;CACnD;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,gCAAgC,CAC9C,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,2BAA2B,GACxD,wBAAwB,EAAE,CAe5B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,SAAS,wBAAwB,EAAE,GAC1C,MAAM,CAMR;AAmBD,oDAAoD;AACpD,wBAAgB,6BAA6B,IAAI,IAAI,CAEpD;AAED,0DAA0D;AAC1D,wBAAgB,2BAA2B,IAAI,WAAW,CAAC,MAAM,CAAC,CAEjE;AAED,oFAAoF;AACpF,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAEzD;AAED,4CAA4C;AAC5C,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAEnE;AAMD;;;;;;;;;;;;GAYG;AACH,wBAAsB,6BAA6B,CACjD,MAAM,EAAE,YAAY,EACpB,QAAQ,EAAE,2BAA2B,EACrC,mBAAmB,EAAE,WAAW,CAAC,MAAM,CAAC,EACxC,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,mBAAmB,EAAE,CAAC,CA4DhC"}
1
+ {"version":3,"file":"verification-default-on.d.ts","sourceRoot":"","sources":["../../src/verify/verification-default-on.ts"],"names":[],"mappings":"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"}