@patronage/software-factory 1.0.0-alpha.16 → 1.0.0-alpha.18

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/CONTEXT.md CHANGED
@@ -20,7 +20,7 @@ The shared Patronage software factory: typed lifecycle state, proof gates, and o
20
20
 
21
21
  ### Impact
22
22
 
23
- **Impact**: The candidate-bound classification of which declared product targets a changed path or lockfile graph can reach. Path impact is opt-in: a target is affected if and only if a valid changed path matches one of its declared globs. A valid path matched by no target is **unsubscribed** and demands no target-scoped work, while remaining explicit in the stamp basis and human summary. Shared paths affect every target that subscribes to them. Invalid paths and unreadable or malformed required inputs still fail closed. Impact may withdraw target-scoped work; it never certifies a merge target, whose push-triggered verification stays full. Defined by ADR 0027. _Avoid_: affectedness; ownership (the declaration is a subscription, not an implicit filesystem owner).
23
+ **Impact**: The candidate-bound classification of which declared product targets a changed path or lockfile graph can reach. Path impact is opt-in: a target is affected if and only if a valid changed path matches one of its declared globs. A valid path matched by no target is **unsubscribed** and demands no target-scoped work, while remaining explicit in the stamp basis and human summary. A valid path that matches `impact.inert` and no target is **inert-owned**: the stamp records it in `inertPaths`, distinct from `unsubscribedPaths`. A path matching both a target subscription and an inert glob is product-owned and appears in neither list. `pnpm-lock.yaml` is a graph input and is never inert. Shared paths affect every target that subscribes to them. Invalid paths and unreadable or malformed required inputs still fail closed. Impact may withdraw target-scoped work; it never certifies a merge target, whose push-triggered verification stays full. Defined by ADR 0027. _Avoid_: affectedness; implicit filesystem ownership (target `paths` are subscriptions; inert-owned is the explicit `impact.inert` declaration).
24
24
 
25
25
  ### Planning intake
26
26
 
package/dist/index.d.ts CHANGED
@@ -16,8 +16,8 @@ declare const boundaryManifestBaseSchema: z.ZodObject<{
16
16
  boundary: z.ZodString;
17
17
  closeout: z.ZodOptional<z.ZodObject<{
18
18
  review: z.ZodEnum<{
19
- "independent-model": "independent-model";
20
19
  oracle: "oracle";
20
+ "independent-model": "independent-model";
21
21
  human: "human";
22
22
  }>;
23
23
  }, z.core.$loose>>;
@@ -35,8 +35,8 @@ declare const boundaryManifestBaseSchema: z.ZodObject<{
35
35
  issues: z.ZodArray<z.ZodNumber>;
36
36
  name: z.ZodString;
37
37
  review: z.ZodEnum<{
38
- "independent-model": "independent-model";
39
38
  oracle: "oracle";
39
+ "independent-model": "independent-model";
40
40
  human: "human";
41
41
  }>;
42
42
  }, z.core.$loose>>;
@@ -45,8 +45,8 @@ declare const boundaryManifestSchema: z.ZodObject<{
45
45
  boundary: z.ZodString;
46
46
  closeout: z.ZodOptional<z.ZodObject<{
47
47
  review: z.ZodEnum<{
48
- "independent-model": "independent-model";
49
48
  oracle: "oracle";
49
+ "independent-model": "independent-model";
50
50
  human: "human";
51
51
  }>;
52
52
  }, z.core.$loose>>;
@@ -64,8 +64,8 @@ declare const boundaryManifestSchema: z.ZodObject<{
64
64
  issues: z.ZodArray<z.ZodNumber>;
65
65
  name: z.ZodString;
66
66
  review: z.ZodEnum<{
67
- "independent-model": "independent-model";
68
67
  oracle: "oracle";
68
+ "independent-model": "independent-model";
69
69
  human: "human";
70
70
  }>;
71
71
  }, z.core.$loose>>;
@@ -126,8 +126,8 @@ declare const boundaryReviewProofBaseSchema: z.ZodObject<{
126
126
  mergedSha: z.ZodOptional<z.ZodString>;
127
127
  pr: z.ZodNumber;
128
128
  state: z.ZodEnum<{
129
- merged: "merged";
130
129
  open: "open";
130
+ merged: "merged";
131
131
  }>;
132
132
  wave: z.ZodOptional<z.ZodString>;
133
133
  }, z.core.$loose>>;
@@ -150,8 +150,8 @@ declare const boundaryReviewProofBaseSchema: z.ZodObject<{
150
150
  }>;
151
151
  producer: z.ZodString;
152
152
  rung: z.ZodEnum<{
153
- "independent-model": "independent-model";
154
153
  oracle: "oracle";
154
+ "independent-model": "independent-model";
155
155
  human: "human";
156
156
  }>;
157
157
  schemaVersion: z.ZodLiteral<1>;
@@ -170,8 +170,8 @@ declare const boundaryReviewProofSchema: z.ZodObject<{
170
170
  mergedSha: z.ZodOptional<z.ZodString>;
171
171
  pr: z.ZodNumber;
172
172
  state: z.ZodEnum<{
173
- merged: "merged";
174
173
  open: "open";
174
+ merged: "merged";
175
175
  }>;
176
176
  wave: z.ZodOptional<z.ZodString>;
177
177
  }, z.core.$loose>>;
@@ -194,8 +194,8 @@ declare const boundaryReviewProofSchema: z.ZodObject<{
194
194
  }>;
195
195
  producer: z.ZodString;
196
196
  rung: z.ZodEnum<{
197
- "independent-model": "independent-model";
198
197
  oracle: "oracle";
198
+ "independent-model": "independent-model";
199
199
  human: "human";
200
200
  }>;
201
201
  schemaVersion: z.ZodLiteral<1>;
@@ -645,6 +645,7 @@ declare const impactStampSchema: z.ZodObject<{
645
645
  "target-scoped": "target-scoped";
646
646
  conservative: "conservative";
647
647
  }>;
648
+ inertPaths: z.ZodDefault<z.ZodArray<z.ZodString>>;
648
649
  reasons: z.ZodArray<z.ZodString>;
649
650
  stampVersion: z.ZodLiteral<3>;
650
651
  targets: z.ZodArray<z.ZodObject<{
@@ -723,6 +724,10 @@ declare const factoryProjectProfileSchema: z.ZodObject<{
723
724
  paths: z.ZodOptional<z.ZodArray<z.ZodString>>;
724
725
  }, z.core.$strict>>;
725
726
  }, z.core.$strict>>;
727
+ lifecycleContract: z.ZodOptional<z.ZodObject<{
728
+ command: z.ZodString;
729
+ jobName: z.ZodOptional<z.ZodString>;
730
+ }, z.core.$strict>>;
726
731
  repository: z.ZodObject<{
727
732
  name: z.ZodString;
728
733
  owner: z.ZodString;
@@ -732,7 +737,6 @@ declare const factoryProjectProfileSchema: z.ZodObject<{
732
737
  scope: z.ZodOptional<z.ZodObject<{
733
738
  classifications: z.ZodArray<z.ZodEnum<{
734
739
  "docs/process-only": "docs/process-only";
735
- trivial: "trivial";
736
740
  "non-trivial": "non-trivial";
737
741
  }>>;
738
742
  }, z.core.$strict>>;
@@ -1331,9 +1335,9 @@ declare const managedReadinessLedgerSchema: z.ZodObject<{
1331
1335
  mergeable: z.ZodString;
1332
1336
  requiredChecks: z.ZodEnum<{
1333
1337
  unknown: "unknown";
1338
+ pending: "pending";
1334
1339
  passed: "passed";
1335
1340
  failed: "failed";
1336
- pending: "pending";
1337
1341
  none: "none";
1338
1342
  }>;
1339
1343
  reviewDecision: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -1399,8 +1403,8 @@ declare const managedReadinessLedgerSchema: z.ZodObject<{
1399
1403
  "run-interior-cycle": "run-interior-cycle";
1400
1404
  }>;
1401
1405
  stage: z.ZodEnum<{
1402
- gate: "gate";
1403
1406
  interior: "interior";
1407
+ gate: "gate";
1404
1408
  "interior-complete": "interior-complete";
1405
1409
  }>;
1406
1410
  }, z.core.$strip>>;
@@ -1416,9 +1420,9 @@ declare const managedReadinessLedgerSchema: z.ZodObject<{
1416
1420
  reviewedHeadSha: z.ZodOptional<z.ZodString>;
1417
1421
  reviewedPatchId: z.ZodOptional<z.ZodString>;
1418
1422
  status: z.ZodEnum<{
1423
+ "not-required": "not-required";
1419
1424
  stale: "stale";
1420
1425
  blocked: "blocked";
1421
- "not-required": "not-required";
1422
1426
  current: "current";
1423
1427
  missing: "missing";
1424
1428
  }>;
@@ -1428,9 +1432,9 @@ declare const managedReadinessLedgerSchema: z.ZodObject<{
1428
1432
  reviewedHeadSha: z.ZodOptional<z.ZodString>;
1429
1433
  reviewedPatchId: z.ZodOptional<z.ZodString>;
1430
1434
  status: z.ZodEnum<{
1435
+ "not-required": "not-required";
1431
1436
  stale: "stale";
1432
1437
  blocked: "blocked";
1433
- "not-required": "not-required";
1434
1438
  current: "current";
1435
1439
  missing: "missing";
1436
1440
  }>;
@@ -1743,8 +1747,8 @@ declare const evidenceEnvelopeBaseSchema: z.ZodObject<{
1743
1747
  producer: z.ZodString;
1744
1748
  requestId: z.ZodOptional<z.ZodString>;
1745
1749
  rung: z.ZodOptional<z.ZodEnum<{
1746
- "independent-model": "independent-model";
1747
1750
  oracle: "oracle";
1751
+ "independent-model": "independent-model";
1748
1752
  human: "human";
1749
1753
  }>>;
1750
1754
  schemaVersion: z.ZodLiteral<1>;
@@ -1770,8 +1774,8 @@ declare const evidenceEnvelopeSchema: z.ZodObject<{
1770
1774
  producer: z.ZodString;
1771
1775
  requestId: z.ZodOptional<z.ZodString>;
1772
1776
  rung: z.ZodOptional<z.ZodEnum<{
1773
- "independent-model": "independent-model";
1774
1777
  oracle: "oracle";
1778
+ "independent-model": "independent-model";
1775
1779
  human: "human";
1776
1780
  }>>;
1777
1781
  schemaVersion: z.ZodLiteral<1>;
@@ -1874,9 +1878,9 @@ declare const loadEvidenceEnvelopes: (cwd: string) => LoadedEvidenceEnvelope[];
1874
1878
  //#region src/review-proof-applicability.d.ts
1875
1879
  declare const REVIEW_STATUS_VALUES: readonly ["not-required", "current", "stale", "missing", "blocked"];
1876
1880
  declare const reviewStatusSchema: z.ZodEnum<{
1881
+ "not-required": "not-required";
1877
1882
  stale: "stale";
1878
1883
  blocked: "blocked";
1879
- "not-required": "not-required";
1880
1884
  current: "current";
1881
1885
  missing: "missing";
1882
1886
  }>;
@@ -2020,6 +2024,16 @@ interface PrVerifyNotRequiredCommand {
2020
2024
  impactTarget: string;
2021
2025
  name: string;
2022
2026
  }
2027
+ /**
2028
+ * Epic #758 (#762): a consumer package a stamp-scoped selection skipped, and
2029
+ * why. Bound to the proof's stamp identity — the field is v4-only (the same
2030
+ * window that can carry `impactStamp`) and refused when the proof records no
2031
+ * stamp. The factory does not write this list; consumers do.
2032
+ */
2033
+ interface PrVerifyNotDemandedRecord {
2034
+ basis: string;
2035
+ name: string;
2036
+ }
2023
2037
  interface PrVerifyProof {
2024
2038
  schemaVersion: PrVerifySchemaVersion;
2025
2039
  authoringSession?: string;
@@ -2043,6 +2057,7 @@ interface PrVerifyProof {
2043
2057
  impactStamp?: ImpactStamp;
2044
2058
  mode: ResolvedPrVerifyMode;
2045
2059
  mergeBaseSha?: string;
2060
+ notDemandedRecords?: PrVerifyNotDemandedRecord[];
2046
2061
  notRequiredCommands?: PrVerifyNotRequiredCommand[];
2047
2062
  outcome?: "aborted" | "passed";
2048
2063
  patchId?: string;
@@ -2065,14 +2080,14 @@ declare const boundaryCheckProofSchema: z.ZodObject<{
2065
2080
  pr: z.ZodNumber;
2066
2081
  sha: z.ZodString;
2067
2082
  state: z.ZodEnum<{
2068
- merged: "merged";
2069
2083
  open: "open";
2084
+ merged: "merged";
2070
2085
  }>;
2071
2086
  wave: z.ZodString;
2072
2087
  }, z.core.$strip>>;
2073
2088
  demandedRung: z.ZodOptional<z.ZodEnum<{
2074
- "independent-model": "independent-model";
2075
2089
  oracle: "oracle";
2090
+ "independent-model": "independent-model";
2076
2091
  human: "human";
2077
2092
  }>>;
2078
2093
  epicIssue: z.ZodNumber;
@@ -2087,8 +2102,8 @@ declare const boundaryCheckProofSchema: z.ZodObject<{
2087
2102
  commentUrl: z.ZodOptional<z.ZodString>;
2088
2103
  producer: z.ZodString;
2089
2104
  rung: z.ZodEnum<{
2090
- "independent-model": "independent-model";
2091
2105
  oracle: "oracle";
2106
+ "independent-model": "independent-model";
2092
2107
  human: "human";
2093
2108
  }>;
2094
2109
  sessionId: z.ZodOptional<z.ZodString>;
@@ -2227,7 +2242,7 @@ interface PrReviewDependencies {
2227
2242
  }
2228
2243
  declare function runPrReview(args: PrReviewArgs, dependencies?: PrReviewDependencies): Promise<PrReviewProof>;
2229
2244
  declare namespace verification_proof_d_exports {
2230
- export { PrVerifyBaselineFullProof, PrVerifyCommandResult, PrVerifyExecutedCommand, PrVerifyNotRequiredCommand, PrVerifyProof, PrVerifySchemaVersion, ResolvedPrVerifyMode, SUPPORTED_PR_VERIFY_SCHEMA_VERSIONS, VerificationHeadShas, VerificationProofState, VerifiedHeadShas, prVerifyFullHeadShasForDiff, prVerifyProofHeadShas, readPrVerifyProof, resolveVerifyProofApplicability, trustedImpactStamp, validatePrVerifyProof, verificationProofApplicabilityFor, verificationProofBlockingReason, verificationProofForReadiness, verificationProofStateFor, verifyProofIdentityMatches, verifyProofPassed };
2245
+ export { PrVerifyBaselineFullProof, PrVerifyCommandResult, PrVerifyExecutedCommand, PrVerifyNotDemandedRecord, PrVerifyNotRequiredCommand, PrVerifyProof, PrVerifySchemaVersion, ResolvedPrVerifyMode, SUPPORTED_PR_VERIFY_SCHEMA_VERSIONS, VerificationHeadShas, VerificationProofState, VerifiedHeadShas, prVerifyFullHeadShasForDiff, prVerifyProofHeadShas, readPrVerifyProof, resolveVerifyProofApplicability, trustedImpactStamp, validatePrVerifyProof, verificationProofApplicabilityFor, verificationProofBlockingReason, verificationProofForReadiness, verificationProofStateFor, verifyProofIdentityMatches, verifyProofPassed };
2231
2246
  }
2232
2247
  interface VerifiedHeadShas {
2233
2248
  docsOnlyVerifiedHeadShas: string[];
@@ -2383,7 +2398,7 @@ interface CleanInstallResolutionDependencies {
2383
2398
  }
2384
2399
  //#endregion
2385
2400
  //#region src/pr-verify.d.ts
2386
- type PrVerifyMode = "auto" | "docs-only" | "trivial" | "full";
2401
+ type PrVerifyMode = "auto" | "docs-only" | "full";
2387
2402
  interface VerificationCommandOutcome {
2388
2403
  counts?: {
2389
2404
  testFiles?: number;
@@ -2665,11 +2680,11 @@ declare const LegacyWorkerCloseoutStatusTraceEventSchema: z.ZodObject<{
2665
2680
  threadId: z.ZodOptional<z.ZodString>;
2666
2681
  workerId: z.ZodOptional<z.ZodString>;
2667
2682
  archiveStatus: z.ZodOptional<z.ZodEnum<{
2668
- pending: "pending";
2669
2683
  unavailable: "unavailable";
2670
2684
  archived: "archived";
2671
2685
  skipped: "skipped";
2672
2686
  "not-applicable": "not-applicable";
2687
+ pending: "pending";
2673
2688
  }>>;
2674
2689
  closeoutReason: z.ZodOptional<z.ZodString>;
2675
2690
  eventType: z.ZodLiteral<"worker-closeout-lessons">;
@@ -2839,8 +2854,8 @@ declare const FACTORY_TRACE_EVENT_DEFINITIONS: readonly [DefinedTraceEvent<"revi
2839
2854
  sessionId: z.ZodOptional<z.ZodString>;
2840
2855
  }, z.core.$strict>>;
2841
2856
  stage: z.ZodEnum<{
2842
- gate: "gate";
2843
2857
  interior: "interior";
2858
+ gate: "gate";
2844
2859
  }>;
2845
2860
  usage: z.ZodOptional<z.ZodObject<{
2846
2861
  estimatedCostUsd: z.ZodOptional<z.ZodNumber>;
@@ -2892,8 +2907,8 @@ declare const FACTORY_TRACE_EVENT_DEFINITIONS: readonly [DefinedTraceEvent<"revi
2892
2907
  sessionId: z.ZodOptional<z.ZodString>;
2893
2908
  }, z.core.$strict>>;
2894
2909
  stage: z.ZodEnum<{
2895
- gate: "gate";
2896
2910
  interior: "interior";
2911
+ gate: "gate";
2897
2912
  }>;
2898
2913
  usage: z.ZodOptional<z.ZodObject<{
2899
2914
  estimatedCostUsd: z.ZodOptional<z.ZodNumber>;
@@ -2936,8 +2951,8 @@ declare const FACTORY_TRACE_EVENT_DEFINITIONS: readonly [DefinedTraceEvent<"revi
2936
2951
  sessionId: z.ZodOptional<z.ZodString>;
2937
2952
  }, z.core.$strict>>;
2938
2953
  stage: z.ZodEnum<{
2939
- gate: "gate";
2940
2954
  interior: "interior";
2955
+ gate: "gate";
2941
2956
  }>;
2942
2957
  usage: z.ZodOptional<z.ZodObject<{
2943
2958
  estimatedCostUsd: z.ZodOptional<z.ZodNumber>;
@@ -2967,7 +2982,7 @@ declare const FACTORY_TRACE_EVENT_DEFINITIONS: readonly [DefinedTraceEvent<"revi
2967
2982
  staleRepeats: number;
2968
2983
  };
2969
2984
  observedAt: string;
2970
- stage: "gate" | "interior";
2985
+ stage: "interior" | "gate";
2971
2986
  issue?: number | undefined;
2972
2987
  pr?: number | undefined;
2973
2988
  threadId?: string | undefined;
@@ -3060,11 +3075,11 @@ declare const FACTORY_TRACE_EVENT_DEFINITIONS: readonly [DefinedTraceEvent<"revi
3060
3075
  threadId: z.ZodOptional<z.ZodString>;
3061
3076
  workerId: z.ZodOptional<z.ZodString>;
3062
3077
  archiveStatus: z.ZodOptional<z.ZodEnum<{
3063
- pending: "pending";
3064
3078
  unavailable: "unavailable";
3065
3079
  archived: "archived";
3066
3080
  skipped: "skipped";
3067
3081
  "not-applicable": "not-applicable";
3082
+ pending: "pending";
3068
3083
  }>>;
3069
3084
  closeoutReason: z.ZodOptional<z.ZodString>;
3070
3085
  eventType: z.ZodLiteral<"worker-closeout-lessons">;
@@ -3101,11 +3116,11 @@ declare const FACTORY_TRACE_EVENT_DEFINITIONS: readonly [DefinedTraceEvent<"revi
3101
3116
  }, z.core.$strict>], "lessonStatus">;
3102
3117
  readonly 2: z.ZodObject<{
3103
3118
  archiveStatus: z.ZodOptional<z.ZodEnum<{
3104
- pending: "pending";
3105
3119
  unavailable: "unavailable";
3106
3120
  archived: "archived";
3107
3121
  skipped: "skipped";
3108
3122
  "not-applicable": "not-applicable";
3123
+ pending: "pending";
3109
3124
  }>>;
3110
3125
  closeoutReason: z.ZodOptional<z.ZodString>;
3111
3126
  lessonStatus: z.ZodOptional<z.ZodEnum<{
@@ -3223,8 +3238,8 @@ declare const FACTORY_TRACE_EVENT_DEFINITIONS: readonly [DefinedTraceEvent<"revi
3223
3238
  interiorCycle: z.ZodOptional<z.ZodNumber>;
3224
3239
  observedAt: z.ZodString;
3225
3240
  purpose: z.ZodEnum<{
3226
- code: "code";
3227
3241
  review: "review";
3242
+ code: "code";
3228
3243
  }>;
3229
3244
  slotResolution: z.ZodObject<{
3230
3245
  effort: z.ZodEnum<{
@@ -3242,18 +3257,18 @@ declare const FACTORY_TRACE_EVENT_DEFINITIONS: readonly [DefinedTraceEvent<"revi
3242
3257
  }>;
3243
3258
  model: z.ZodString;
3244
3259
  tier: z.ZodEnum<{
3245
- oracle: "oracle";
3246
3260
  review: "review";
3247
3261
  delegate: "delegate";
3262
+ oracle: "oracle";
3248
3263
  workhorse: "workhorse";
3249
3264
  scout: "scout";
3250
3265
  }>;
3251
3266
  }, z.core.$strict>;
3252
3267
  startedAt: z.ZodString;
3253
3268
  tier: z.ZodEnum<{
3254
- oracle: "oracle";
3255
3269
  review: "review";
3256
3270
  delegate: "delegate";
3271
+ oracle: "oracle";
3257
3272
  workhorse: "workhorse";
3258
3273
  scout: "scout";
3259
3274
  }>;
@@ -3302,8 +3317,8 @@ declare const FACTORY_TRACE_EVENT_DEFINITIONS: readonly [DefinedTraceEvent<"revi
3302
3317
  interiorCycle: z.ZodOptional<z.ZodNumber>;
3303
3318
  observedAt: z.ZodString;
3304
3319
  purpose: z.ZodEnum<{
3305
- code: "code";
3306
3320
  review: "review";
3321
+ code: "code";
3307
3322
  }>;
3308
3323
  slotResolution: z.ZodObject<{
3309
3324
  effort: z.ZodEnum<{
@@ -3321,18 +3336,18 @@ declare const FACTORY_TRACE_EVENT_DEFINITIONS: readonly [DefinedTraceEvent<"revi
3321
3336
  }>;
3322
3337
  model: z.ZodString;
3323
3338
  tier: z.ZodEnum<{
3324
- oracle: "oracle";
3325
3339
  review: "review";
3326
3340
  delegate: "delegate";
3341
+ oracle: "oracle";
3327
3342
  workhorse: "workhorse";
3328
3343
  scout: "scout";
3329
3344
  }>;
3330
3345
  }, z.core.$strict>;
3331
3346
  startedAt: z.ZodString;
3332
3347
  tier: z.ZodEnum<{
3333
- oracle: "oracle";
3334
3348
  review: "review";
3335
3349
  delegate: "delegate";
3350
+ oracle: "oracle";
3336
3351
  workhorse: "workhorse";
3337
3352
  scout: "scout";
3338
3353
  }>;
@@ -3372,8 +3387,8 @@ declare const FACTORY_TRACE_EVENT_DEFINITIONS: readonly [DefinedTraceEvent<"revi
3372
3387
  interiorCycle: z.ZodOptional<z.ZodNumber>;
3373
3388
  observedAt: z.ZodString;
3374
3389
  purpose: z.ZodEnum<{
3375
- code: "code";
3376
3390
  review: "review";
3391
+ code: "code";
3377
3392
  }>;
3378
3393
  slotResolution: z.ZodObject<{
3379
3394
  effort: z.ZodEnum<{
@@ -3391,18 +3406,18 @@ declare const FACTORY_TRACE_EVENT_DEFINITIONS: readonly [DefinedTraceEvent<"revi
3391
3406
  }>;
3392
3407
  model: z.ZodString;
3393
3408
  tier: z.ZodEnum<{
3394
- oracle: "oracle";
3395
3409
  review: "review";
3396
3410
  delegate: "delegate";
3411
+ oracle: "oracle";
3397
3412
  workhorse: "workhorse";
3398
3413
  scout: "scout";
3399
3414
  }>;
3400
3415
  }, z.core.$strict>;
3401
3416
  startedAt: z.ZodString;
3402
3417
  tier: z.ZodEnum<{
3403
- oracle: "oracle";
3404
3418
  review: "review";
3405
3419
  delegate: "delegate";
3420
+ oracle: "oracle";
3406
3421
  workhorse: "workhorse";
3407
3422
  scout: "scout";
3408
3423
  }>;
@@ -3445,17 +3460,17 @@ declare const FACTORY_TRACE_EVENT_DEFINITIONS: readonly [DefinedTraceEvent<"revi
3445
3460
  exitCode: number | null;
3446
3461
  harness: string;
3447
3462
  observedAt: string;
3448
- purpose: "code" | "review";
3463
+ purpose: "review" | "code";
3449
3464
  slotResolution: {
3450
3465
  effort: "high" | "low" | "medium" | "xhigh";
3451
3466
  engine: string;
3452
3467
  layerSource: "committedDefault" | "operatorSession" | "userConfig";
3453
3468
  model: string;
3454
- tier: "oracle" | "review" | "delegate" | "workhorse" | "scout";
3469
+ tier: "review" | "delegate" | "oracle" | "workhorse" | "scout";
3455
3470
  fallbackTier?: "delegate" | undefined;
3456
3471
  };
3457
3472
  startedAt: string;
3458
- tier: "oracle" | "review" | "delegate" | "workhorse" | "scout";
3473
+ tier: "review" | "delegate" | "oracle" | "workhorse" | "scout";
3459
3474
  tokenUsage: {
3460
3475
  source: "cursor-csv" | "codex-json" | "cursor-json" | "claude-json";
3461
3476
  status: "available";
@@ -3777,7 +3792,7 @@ declare const evaluateReadiness: (input: EvaluationInput) => {
3777
3792
  draft: boolean;
3778
3793
  mergeStateStatus: string;
3779
3794
  mergeable: string;
3780
- requiredChecks: "unknown" | "passed" | "failed" | "pending" | "none";
3795
+ requiredChecks: "unknown" | "pending" | "passed" | "failed" | "none";
3781
3796
  unresolvedReviewThreads: number;
3782
3797
  reviewDecision?: string | null | undefined;
3783
3798
  };
@@ -3792,13 +3807,13 @@ declare const evaluateReadiness: (input: EvaluationInput) => {
3792
3807
  reviews: {
3793
3808
  correctness: {
3794
3809
  required: boolean;
3795
- status: "stale" | "blocked" | "not-required" | "current" | "missing";
3810
+ status: "not-required" | "stale" | "blocked" | "current" | "missing";
3796
3811
  reviewedHeadSha?: string | undefined;
3797
3812
  reviewedPatchId?: string | undefined;
3798
3813
  };
3799
3814
  security?: {
3800
3815
  required: boolean;
3801
- status: "stale" | "blocked" | "not-required" | "current" | "missing";
3816
+ status: "not-required" | "stale" | "blocked" | "current" | "missing";
3802
3817
  reviewedHeadSha?: string | undefined;
3803
3818
  reviewedPatchId?: string | undefined;
3804
3819
  } | undefined;
@@ -3849,7 +3864,7 @@ declare const evaluateReadiness: (input: EvaluationInput) => {
3849
3864
  interior: number;
3850
3865
  };
3851
3866
  nextAction: "run-gate-cycle" | "accept-nonblocking-findings" | "escalate-to-triage" | "ready-for-human" | "advance-to-gate" | "run-interior-cycle";
3852
- stage: "gate" | "interior" | "interior-complete";
3867
+ stage: "interior" | "gate" | "interior-complete";
3853
3868
  forcedTransition?: "gate-cap-exhausted" | "interior-cap-reached" | undefined;
3854
3869
  } | undefined;
3855
3870
  reviewRuns?: PrReviewResult[] | undefined;
@@ -4174,6 +4189,34 @@ declare const appendReviewLadderStageTraceEvent: ({
4174
4189
  }) => AppendFactoryTraceEventResult;
4175
4190
  declare const tryAppendReviewLadderStageTraceEvent: (input: Parameters<typeof appendReviewLadderStageTraceEvent>[0]) => ReviewLadderStageTraceWriteResult;
4176
4191
  //#endregion
4192
+ //#region src/verification-run-context.d.ts
4193
+ declare const FACTORY_BASE_REF_ENV = "FACTORY_BASE_REF";
4194
+ declare const FACTORY_CHANGED_FILES_ENV = "FACTORY_CHANGED_FILES";
4195
+ declare const FACTORY_CHANGED_FILES_FILE_ENV = "FACTORY_CHANGED_FILES_FILE";
4196
+ declare const EMPTY_TREE_OBJECT_HASH = "4b825dc642cb6eb9a060e54bf8d69288fbee4904";
4197
+ declare const DEFAULT_ROOT_SHARED_GLOBS: string[];
4198
+ interface VerificationRunContextInput {
4199
+ baseRef: string;
4200
+ changedFiles: string[];
4201
+ fullSuiteBaseRef?: string;
4202
+ rootSharedGlobs?: string[];
4203
+ inlineLimitBytes?: number;
4204
+ tmpDir?: string;
4205
+ }
4206
+ interface VerificationEnv {
4207
+ env: Record<string, string>;
4208
+ cleanup: () => void;
4209
+ }
4210
+ interface VerificationRunContext {
4211
+ readonly baseRef: string;
4212
+ readonly changedFiles: string[];
4213
+ readonly forcesFullSuite: boolean;
4214
+ readonly fullSuiteReasons: string[];
4215
+ buildEnv: () => VerificationEnv;
4216
+ runSummaryLines: () => string[];
4217
+ }
4218
+ declare function createVerificationRunContext(input: VerificationRunContextInput): VerificationRunContext;
4219
+ //#endregion
4177
4220
  //#region src/verification-battery.d.ts
4178
4221
  type BatteryDisposition = "executed" | "not-required";
4179
4222
  /**
@@ -4370,4 +4413,4 @@ interface CreateProgramOptions {
4370
4413
  declare function createProgram(options?: CreateProgramOptions): Command;
4371
4414
  declare function run(argv?: string[]): Promise<void>;
4372
4415
  //#endregion
4373
- export { type AppendFactoryTraceEventResult, type AssembledReviewPrompt, type BatteryCommandDisposition, type BatteryDisposition, type BoundaryCheckArgs, type BoundaryCheckDependencies, type BoundaryCheckProofRecord, type BuildEpicStructureEventInput, type CloudflareAccessServiceToken, CreateProgramOptions, DEFAULT_DEMAND_WAIVER_PATH, DEFAULT_FACTORY_REPOSITORY, type DagDocument, type DemandWaiveArgs, type DemandWaiveDependencies, DemandWaiveRefusalError, type DemandWaiver, type DemandWaiverStore, EPIC_STRUCTURE_NODE_STATUSES, EPIC_STRUCTURE_SCHEMA_VERSION, type EpicStructureEvent, type EpicStructureGraphPayload, type EpicStructureNodeStatus, EpicStructureValidationError, type EvidenceEmitArgs, type EvidenceEmitDependencies, type EvidenceEmitResult, type FactoryCliInvocation, FactoryCliInvocationSchema, type FactoryProjectProfile, type FactoryTraceDiagnostic, type FactoryTraceEnvelope, type FactoryTraceEvent, type FindingDisposition, type FindingLedgerEntry, type FollowUpAction, FollowUpActionSchema, type ImpactScopeDecision, type ImpactScopeSurface, type IssueReviewFocus, type LadderDispositionDeclaration, MERGE_FREEZE_APP_SLUG, MERGE_FREEZE_CHECK_NAME, type MergeFreezeState, type PrPublishArgs, type PrPublishDependencies, PrPublishFollowUpError, type PrPublishFollowUpOutcome, type PrPublishHandoff, type PrPublishResult, type PrReadyArgs, type PrReadyProof, type PreviewDisposition, type PreviewLifecyclePlan, type PreviewTargetPlan, type PublishEpicStructureArgs, type PublishEpicStructureResult, type PublishFollowUpPlan, REVIEW_FOCUS_SECTION, type ReviewGateNotRequiredProof, type ReviewGateTraceIdentity, type ReviewLadderCycle, type ReviewLadderEvaluation, type ReviewLadderPolicy, type ReviewLadderStageEvent, type ReviewLadderTraceIdentity, type ReviewPromptSection, type ReviewPromptSectionProvenance, type ScanFactoryTraceDiagnosticsOptions, type ScanFactoryTraceOptions, type ScanFactoryTraceResult, type ScopedOutCommand, type TraceMirrorDiagnostic, type TraceSink, type TraceWriteResult, type TraceWriteSinks, type VerificationBatteryPlan, type VerificationReuse, type WaivedDemand, WorkerCheckoutGuardError, type WorkerCloseoutLessonsTraceEvent, appendReviewLadderStageTraceEvent, appendWithTraceSinks, applyDemandWaiver, assembleReviewPrompt, assertWorkerCheckoutAllowed, authorizeDemandWaiver, batteryScopeSummaryLines, blockingLadderFindings, boundary_manifest_d_exports as boundaryManifest, boundary_review_proof_d_exports as boundaryReviewProof, buildEpicStructureEvent, buildEpicStructurePayload, buildEvidenceEnvelope, buildReviewGateNotRequiredTraceEvent, buildReviewLadderStageTraceEvent, comment_provenance_d_exports as commentProvenance, createLocalJsonlTraceSink, createProgram, doctorProjectProfile, epicStructureEventId, evaluateReviewLadder, evidenceEnvelopeFilename, findingKey, followUpFromArgv, impactStampScopeDecision, inferFixedInThreadDispositions, isProductionHqUrl, loadProjectProfile, normalizeIssueComments, openLadderFindings, planPreviewLifecycle, planPublishFollowUp, planVerificationBattery, readiness_evaluation_d_exports as prReadinessEvaluation, external_evidence_d_exports as prReadinessExternalEvidence, pr_body_renderer_d_exports as prReadinessPrBodyRenderer, proof_identity_d_exports as prReadinessProofIdentity, review_proof_d_exports as prReadinessReviewProof, status_check_rollup_d_exports as prReadinessStatusChecks, verification_proof_d_exports as prReadinessVerificationProof, previewLifecycleTargets, publishEpicStructure, readDemandWaivers, readPrReadyProof, readPrReviewProof, resolveFactoryRepository, resolveFindingBlocking, resolveReviewFindingCategory, resolveReviewFindingSeverity, resolveReviewLadderPolicy, resolveTraceWriteSinks, reviewCycleStateFor, reviewFocusFromIssueBody, reviewPromptSectionSchema, reviewPromptSectionsSchema, run, runBoundaryCheck, runDemandWaive, runEvidenceEmit, runPrPublish, runPrReady, runPrReview, runPrVerify, scanFactoryTraceDiagnostics, scanFactoryTraceEvents, selectWaiversForCandidate, staleRepeatLadderFindings, toFactoryTraceEnvelope, tryAppendReviewGateNotRequiredTraceEvent, tryAppendReviewLadderStageTraceEvent, validateBoundaryCheckProof, validateDagDocument, validateDemandWaiverStore, validateFactoryTraceEvent, validateMergeFreezeState, validatePrReadyProof, validatePrReviewProof, validatePrVerifyProof, waivedDemandNotice, waivedDemandSchema, worktree_scratch_files_d_exports as worktreeScratchFiles };
4416
+ export { type AppendFactoryTraceEventResult, type AssembledReviewPrompt, type BatteryCommandDisposition, type BatteryDisposition, type BoundaryCheckArgs, type BoundaryCheckDependencies, type BoundaryCheckProofRecord, type BuildEpicStructureEventInput, type CloudflareAccessServiceToken, CreateProgramOptions, DEFAULT_DEMAND_WAIVER_PATH, DEFAULT_FACTORY_REPOSITORY, DEFAULT_ROOT_SHARED_GLOBS, type DagDocument, type DemandWaiveArgs, type DemandWaiveDependencies, DemandWaiveRefusalError, type DemandWaiver, type DemandWaiverStore, EMPTY_TREE_OBJECT_HASH, EPIC_STRUCTURE_NODE_STATUSES, EPIC_STRUCTURE_SCHEMA_VERSION, type EpicStructureEvent, type EpicStructureGraphPayload, type EpicStructureNodeStatus, EpicStructureValidationError, type EvidenceEmitArgs, type EvidenceEmitDependencies, type EvidenceEmitResult, FACTORY_BASE_REF_ENV, FACTORY_CHANGED_FILES_ENV, FACTORY_CHANGED_FILES_FILE_ENV, type FactoryCliInvocation, FactoryCliInvocationSchema, type FactoryProjectProfile, type FactoryTraceDiagnostic, type FactoryTraceEnvelope, type FactoryTraceEvent, type FindingDisposition, type FindingLedgerEntry, type FollowUpAction, FollowUpActionSchema, type ImpactScopeDecision, type ImpactScopeSurface, type IssueReviewFocus, type LadderDispositionDeclaration, MERGE_FREEZE_APP_SLUG, MERGE_FREEZE_CHECK_NAME, type MergeFreezeState, type PrPublishArgs, type PrPublishDependencies, PrPublishFollowUpError, type PrPublishFollowUpOutcome, type PrPublishHandoff, type PrPublishResult, type PrReadyArgs, type PrReadyProof, type PreviewDisposition, type PreviewLifecyclePlan, type PreviewTargetPlan, type PublishEpicStructureArgs, type PublishEpicStructureResult, type PublishFollowUpPlan, REVIEW_FOCUS_SECTION, type ReviewGateNotRequiredProof, type ReviewGateTraceIdentity, type ReviewLadderCycle, type ReviewLadderEvaluation, type ReviewLadderPolicy, type ReviewLadderStageEvent, type ReviewLadderTraceIdentity, type ReviewPromptSection, type ReviewPromptSectionProvenance, type ScanFactoryTraceDiagnosticsOptions, type ScanFactoryTraceOptions, type ScanFactoryTraceResult, type ScopedOutCommand, type TraceMirrorDiagnostic, type TraceSink, type TraceWriteResult, type TraceWriteSinks, type VerificationBatteryPlan, type VerificationReuse, type VerificationRunContext, type VerificationRunContextInput, type WaivedDemand, WorkerCheckoutGuardError, type WorkerCloseoutLessonsTraceEvent, appendReviewLadderStageTraceEvent, appendWithTraceSinks, applyDemandWaiver, assembleReviewPrompt, assertWorkerCheckoutAllowed, authorizeDemandWaiver, batteryScopeSummaryLines, blockingLadderFindings, boundary_manifest_d_exports as boundaryManifest, boundary_review_proof_d_exports as boundaryReviewProof, buildEpicStructureEvent, buildEpicStructurePayload, buildEvidenceEnvelope, buildReviewGateNotRequiredTraceEvent, buildReviewLadderStageTraceEvent, comment_provenance_d_exports as commentProvenance, createLocalJsonlTraceSink, createProgram, createVerificationRunContext, doctorProjectProfile, epicStructureEventId, evaluateReviewLadder, evidenceEnvelopeFilename, findingKey, followUpFromArgv, impactStampScopeDecision, inferFixedInThreadDispositions, isProductionHqUrl, loadProjectProfile, normalizeIssueComments, openLadderFindings, planPreviewLifecycle, planPublishFollowUp, planVerificationBattery, readiness_evaluation_d_exports as prReadinessEvaluation, external_evidence_d_exports as prReadinessExternalEvidence, pr_body_renderer_d_exports as prReadinessPrBodyRenderer, proof_identity_d_exports as prReadinessProofIdentity, review_proof_d_exports as prReadinessReviewProof, status_check_rollup_d_exports as prReadinessStatusChecks, verification_proof_d_exports as prReadinessVerificationProof, previewLifecycleTargets, publishEpicStructure, readDemandWaivers, readPrReadyProof, readPrReviewProof, resolveFactoryRepository, resolveFindingBlocking, resolveReviewFindingCategory, resolveReviewFindingSeverity, resolveReviewLadderPolicy, resolveTraceWriteSinks, reviewCycleStateFor, reviewFocusFromIssueBody, reviewPromptSectionSchema, reviewPromptSectionsSchema, run, runBoundaryCheck, runDemandWaive, runEvidenceEmit, runPrPublish, runPrReady, runPrReview, runPrVerify, scanFactoryTraceDiagnostics, scanFactoryTraceEvents, selectWaiversForCandidate, staleRepeatLadderFindings, toFactoryTraceEnvelope, tryAppendReviewGateNotRequiredTraceEvent, tryAppendReviewLadderStageTraceEvent, validateBoundaryCheckProof, validateDagDocument, validateDemandWaiverStore, validateFactoryTraceEvent, validateMergeFreezeState, validatePrReadyProof, validatePrReviewProof, validatePrVerifyProof, waivedDemandNotice, waivedDemandSchema, worktree_scratch_files_d_exports as worktreeScratchFiles };