opencode-swarm 7.171.0 → 7.171.1
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/binaries/win32-arm64/swarm-sandbox-runner.exe +0 -0
- package/binaries/win32-x64/swarm-sandbox-runner.exe +0 -0
- package/dist/cli/{coder-settlement-pn26zx36.js → coder-settlement-vxpmxk46.js} +7 -7
- package/dist/cli/{config-doctor-jrhpq41y.js → config-doctor-vwy3c9g9.js} +2 -2
- package/dist/cli/{core-r0nbh1k2.js → core-2znms60v.js} +1 -1
- package/dist/cli/{curation-policy-qemp257w.js → curation-policy-fakrpw5t.js} +4 -4
- package/dist/cli/{curator-drift-3ssjr0nx.js → curator-drift-r9r8gepb.js} +2 -2
- package/dist/cli/{curator-0g733bka.js → curator-kc80aj6d.js} +32 -32
- package/dist/cli/{curator-llm-factory-89yjg1m4.js → curator-llm-factory-exke3rag.js} +32 -32
- package/dist/cli/{evidence-summary-service-4r7sqb2h.js → evidence-summary-service-g3gr1pfs.js} +13 -13
- package/dist/cli/{gate-evidence-f13tm63x.js → gate-evidence-8mwsj2b7.js} +4 -4
- package/dist/cli/{guardrail-explain-kt4w2rt8.js → guardrail-explain-pkbjswtd.js} +33 -33
- package/dist/cli/{guardrail-log-18wdr04f.js → guardrail-log-qx1tpeda.js} +6 -6
- package/dist/cli/{guardrail-reset-795t6nah.js → guardrail-reset-v91p8ca6.js} +32 -32
- package/dist/cli/{hive-promoter-gwtvg5vc.js → hive-promoter-02vxb018.js} +32 -32
- package/dist/cli/{index-9fxnn8xg.js → index-0caqxnby.js} +1 -1
- package/dist/cli/{index-nmffafb0.js → index-2j0pd6sj.js} +32 -32
- package/dist/cli/{index-sz75avt3.js → index-3jcp3zb6.js} +1 -1
- package/dist/cli/{index-b3nw1bzp.js → index-3jwamrzw.js} +3 -3
- package/dist/cli/{index-sz9qnjd6.js → index-3zzyxs7q.js} +5 -5
- package/dist/cli/{index-dgpdnve5.js → index-4rq1d5k5.js} +2 -1
- package/dist/cli/{index-gxbesz2h.js → index-4sf357vj.js} +3 -3
- package/dist/cli/{index-yj0qrgyc.js → index-5134766r.js} +6 -6
- package/dist/cli/{index-003d071j.js → index-5vgd9st3.js} +6 -6
- package/dist/cli/{index-znf55hyt.js → index-6k5aq7b9.js} +2 -2
- package/dist/cli/{index-xdw0m34m.js → index-6mjtptnb.js} +1 -1
- package/dist/cli/{index-wp0396m1.js → index-7pae558g.js} +6 -6
- package/dist/cli/{index-4m7q9hqd.js → index-7qqwx64h.js} +5 -5
- package/dist/cli/{index-ak3ca0nv.js → index-8nbzfbjg.js} +5 -5
- package/dist/cli/{index-bvr0p6ns.js → index-95e3a9en.js} +1 -1
- package/dist/cli/{index-4dpsvbdt.js → index-9cp6bhx9.js} +3 -3
- package/dist/cli/{index-cravqkxf.js → index-9dz2ee2g.js} +55 -50
- package/dist/cli/{index-br3mvbsa.js → index-aa2eyfvr.js} +2 -2
- package/dist/cli/{index-ttyvcxxb.js → index-cdee25pp.js} +2 -2
- package/dist/cli/{index-zjkkz9qh.js → index-d5pk5b95.js} +2 -2
- package/dist/cli/{index-wy4txsws.js → index-d6bs0p6d.js} +7 -7
- package/dist/cli/{index-j92fe86t.js → index-dr1ym009.js} +9 -9
- package/dist/cli/{index-v3e19zzm.js → index-er6sk4e6.js} +1 -1
- package/dist/cli/{index-cex3emb2.js → index-evxd1art.js} +1 -1
- package/dist/cli/{index-bernkwgf.js → index-g6nen3gt.js} +1 -1
- package/dist/cli/{index-cgpwjctj.js → index-kb66he4e.js} +1 -1
- package/dist/cli/{index-k2cpsr0d.js → index-m1j1rth6.js} +1 -1
- package/dist/cli/{index-fdz0076x.js → index-nfs78aqj.js} +1 -1
- package/dist/cli/{index-g93g1c5r.js → index-rdjmbeex.js} +1 -1
- package/dist/cli/{index-d7yc4ys8.js → index-rkj71ej6.js} +3 -3
- package/dist/cli/{index-7s5cm87j.js → index-s7h6txsk.js} +2 -2
- package/dist/cli/{index-h17tpj0y.js → index-vs7b2pqm.js} +4 -4
- package/dist/cli/{index-7c0e181h.js → index-wn9gf91x.js} +1 -1
- package/dist/cli/{index-mvcjc28t.js → index-xefajbqv.js} +258 -175
- package/dist/cli/{index-0qa2cqyv.js → index-xm0131fx.js} +5 -5
- package/dist/cli/{index-dvbf6fpn.js → index-yqbnsmmv.js} +39 -0
- package/dist/cli/{index-npst1d4g.js → index-ztxh3nmf.js} +34 -34
- package/dist/cli/index.js +32 -32
- package/dist/cli/{knowledge-escalator-kpfm536v.js → knowledge-escalator-4j6xgcvj.js} +10 -10
- package/dist/cli/{knowledge-events-t3e721m2.js → knowledge-events-5ax1g356.js} +8 -8
- package/dist/cli/{knowledge-link-refyc1fz.js → knowledge-link-vh9pfnb9.js} +3 -3
- package/dist/cli/{knowledge-store-sk2bhh52.js → knowledge-store-2nrtfb5x.js} +4 -4
- package/dist/cli/{knowledge-validator-nmc56pbg.js → knowledge-validator-efcax8g9.js} +6 -6
- package/dist/cli/{pending-delegations-ckshrtar.js → pending-delegations-29qj2kya.js} +9 -9
- package/dist/cli/{pr-subscriptions-h81nme2p.js → pr-subscriptions-t51vcrvd.js} +9 -9
- package/dist/cli/{pr-workflow-gate-m1k4b8mr.js → pr-workflow-gate-03367gvd.js} +32 -32
- package/dist/cli/{runner-kzs5wbqh.js → runner-8m8qhngm.js} +4 -4
- package/dist/cli/{scan-cursor-e7varrte.js → scan-cursor-nhxpv6tj.js} +5 -5
- package/dist/cli/{schema-nsb0saad.js → schema-ht5hmsce.js} +1 -1
- package/dist/cli/{scope-persistence-2s5h5ry7.js → scope-persistence-6qebaksv.js} +13 -13
- package/dist/cli/{skill-generator-wpq9j1nf.js → skill-generator-tfm4kawf.js} +12 -12
- package/dist/cli/{snapshot-coordination-init-8nhmhefs.js → snapshot-coordination-init-zgfjjv9p.js} +32 -32
- package/dist/cli/{telemetry-z9scwfbz.js → telemetry-0mz37v3h.js} +1 -1
- package/dist/cli/{worktree-collision-ownership-2kmajcc9.js → worktree-collision-ownership-6mgm8p9g.js} +9 -9
- package/dist/cli/{worktree-isolation-kepgr7j2.js → worktree-isolation-02rr7t21.js} +32 -32
- package/dist/db/observability-event-store.d.ts +17 -1
- package/dist/index.js +17 -16
- package/dist/observability/index.d.ts +1 -1
- package/dist/observability/observe.d.ts +6 -0
- package/dist/pr-review/reducer.d.ts +18 -10
- package/dist/pr-review/types.d.ts +43 -47
- package/dist/telemetry.d.ts +10 -2
- package/package.json +2 -1
|
@@ -16,7 +16,7 @@ import {
|
|
|
16
16
|
resolveExecutableFromPath,
|
|
17
17
|
runEvaluation,
|
|
18
18
|
runExternalTool
|
|
19
|
-
} from "./index-
|
|
19
|
+
} from "./index-er6sk4e6.js";
|
|
20
20
|
import {
|
|
21
21
|
finalizeShellAuditForClose,
|
|
22
22
|
isPolicyProtectedPath,
|
|
@@ -26,20 +26,20 @@ import {
|
|
|
26
26
|
protectedRoots,
|
|
27
27
|
redactDecisionLineForArchive,
|
|
28
28
|
stableCanonicalStringify
|
|
29
|
-
} from "./index-
|
|
29
|
+
} from "./index-4sf357vj.js";
|
|
30
30
|
import {
|
|
31
31
|
canonicalProjectKey,
|
|
32
32
|
closeGroupCommitWriter,
|
|
33
33
|
getGlobalEventBus,
|
|
34
34
|
getGroupCommitWriter,
|
|
35
35
|
importLegacyJsonl
|
|
36
|
-
} from "./index-
|
|
36
|
+
} from "./index-kb66he4e.js";
|
|
37
37
|
import {
|
|
38
38
|
detectStraySwarmDirs,
|
|
39
39
|
readDoctorArtifact,
|
|
40
40
|
removeStraySwarmDir,
|
|
41
41
|
runConfigDoctor
|
|
42
|
-
} from "./index-
|
|
42
|
+
} from "./index-wn9gf91x.js";
|
|
43
43
|
import {
|
|
44
44
|
MAX_TRANSIENT_RETRIES,
|
|
45
45
|
archiveEvidence,
|
|
@@ -81,7 +81,7 @@ import {
|
|
|
81
81
|
updateTaskStatus,
|
|
82
82
|
validateProjectRoot,
|
|
83
83
|
withPlanLifecycleLock
|
|
84
|
-
} from "./index-
|
|
84
|
+
} from "./index-dr1ym009.js";
|
|
85
85
|
import {
|
|
86
86
|
EvaluationTaskV1Schema,
|
|
87
87
|
GateAuditManifestV1Schema,
|
|
@@ -98,7 +98,7 @@ import {
|
|
|
98
98
|
saveGateAuditResult,
|
|
99
99
|
savePromotionDecision,
|
|
100
100
|
saveTaskSetSnapshot
|
|
101
|
-
} from "./index-
|
|
101
|
+
} from "./index-3jcp3zb6.js";
|
|
102
102
|
import {
|
|
103
103
|
canonicalHash,
|
|
104
104
|
canonicalJson,
|
|
@@ -146,15 +146,15 @@ import {
|
|
|
146
146
|
retireSkill,
|
|
147
147
|
selectCandidateEntries,
|
|
148
148
|
syncBundledProjectSkillsIfMissingAsync
|
|
149
|
-
} from "./index-
|
|
149
|
+
} from "./index-9cp6bhx9.js";
|
|
150
150
|
import {
|
|
151
151
|
readRecentEscalations
|
|
152
|
-
} from "./index-
|
|
152
|
+
} from "./index-8nbzfbjg.js";
|
|
153
153
|
import {
|
|
154
154
|
alreadyCuratedThisGeneration,
|
|
155
155
|
claimNextScanBatch,
|
|
156
156
|
resolveCohortId
|
|
157
|
-
} from "./index-
|
|
157
|
+
} from "./index-cdee25pp.js";
|
|
158
158
|
import {
|
|
159
159
|
CURATOR_CONSOLIDATION_PROMPT,
|
|
160
160
|
CURATOR_INIT_PROMPT,
|
|
@@ -174,7 +174,7 @@ import {
|
|
|
174
174
|
sweepStale,
|
|
175
175
|
unsubscribe,
|
|
176
176
|
updateSnapshot
|
|
177
|
-
} from "./index-
|
|
177
|
+
} from "./index-7qqwx64h.js";
|
|
178
178
|
import {
|
|
179
179
|
clearWorktreeMergeStatus,
|
|
180
180
|
getAllWorktreeMergeFailures,
|
|
@@ -186,7 +186,7 @@ import {
|
|
|
186
186
|
listCoderSettlementWalStates,
|
|
187
187
|
recoverCoderSettlement,
|
|
188
188
|
recoverStaleCoderSettlements
|
|
189
|
-
} from "./index-
|
|
189
|
+
} from "./index-3zzyxs7q.js";
|
|
190
190
|
import {
|
|
191
191
|
parsePorcelainV2Snapshot,
|
|
192
192
|
resolveCommitCountSince,
|
|
@@ -257,7 +257,7 @@ import {
|
|
|
257
257
|
transitionTaskWorkflowEvidence,
|
|
258
258
|
withTaskEvidenceTransaction,
|
|
259
259
|
writeWorkflowWalFile
|
|
260
|
-
} from "./index-
|
|
260
|
+
} from "./index-3jwamrzw.js";
|
|
261
261
|
import {
|
|
262
262
|
isPathUnderSwarmWorktreeBase,
|
|
263
263
|
listLiveLaneOwners,
|
|
@@ -266,7 +266,7 @@ import {
|
|
|
266
266
|
recordLiveLaneOwner,
|
|
267
267
|
removeWorktree,
|
|
268
268
|
resolveWorktreeBaseDir
|
|
269
|
-
} from "./index-
|
|
269
|
+
} from "./index-rdjmbeex.js";
|
|
270
270
|
import {
|
|
271
271
|
DEFAULT_STALE_DELEGATION_TIMEOUT_MS,
|
|
272
272
|
DELEGATION_COMPACTION_HIGH_WATER_BYTES,
|
|
@@ -300,7 +300,7 @@ import {
|
|
|
300
300
|
scanBackgroundCoderReservationsForAdmission,
|
|
301
301
|
scanDelegationsForRecovery,
|
|
302
302
|
sweepStaleDelegations
|
|
303
|
-
} from "./index-
|
|
303
|
+
} from "./index-xm0131fx.js";
|
|
304
304
|
import {
|
|
305
305
|
MAX_EVENT_LOG_ENTRIES,
|
|
306
306
|
_internals,
|
|
@@ -316,7 +316,7 @@ import {
|
|
|
316
316
|
recordKnowledgeEvent,
|
|
317
317
|
recordPhaseCloseIntent,
|
|
318
318
|
resolveKnowledgeEventsPath
|
|
319
|
-
} from "./index-
|
|
319
|
+
} from "./index-d6bs0p6d.js";
|
|
320
320
|
import {
|
|
321
321
|
estimateTokens,
|
|
322
322
|
readSwarmFileAsync,
|
|
@@ -342,18 +342,18 @@ import {
|
|
|
342
342
|
validateActionableFields,
|
|
343
343
|
validateLesson,
|
|
344
344
|
validateSkillPath
|
|
345
|
-
} from "./index-
|
|
345
|
+
} from "./index-vs7b2pqm.js";
|
|
346
346
|
import {
|
|
347
347
|
MAX_CURATION_PROPOSALS,
|
|
348
348
|
authorizeCuration,
|
|
349
349
|
buildConfigFingerprintInput
|
|
350
|
-
} from "./index-
|
|
350
|
+
} from "./index-0caqxnby.js";
|
|
351
351
|
import {
|
|
352
352
|
cohortConfigFingerprint
|
|
353
353
|
} from "./index-rtry5xyf.js";
|
|
354
354
|
import {
|
|
355
355
|
resolveWorktreeIsolationConfig
|
|
356
|
-
} from "./index-
|
|
356
|
+
} from "./index-s7h6txsk.js";
|
|
357
357
|
import {
|
|
358
358
|
RetrospectiveEvidenceSchema
|
|
359
359
|
} from "./index-3qf1vxtb.js";
|
|
@@ -363,7 +363,7 @@ import {
|
|
|
363
363
|
clearAllScopes,
|
|
364
364
|
clearScopeBindingFromDisk,
|
|
365
365
|
clearScopeBindings
|
|
366
|
-
} from "./index-
|
|
366
|
+
} from "./index-5vgd9st3.js";
|
|
367
367
|
import {
|
|
368
368
|
clearPlanLedgerForReset,
|
|
369
369
|
computePlanStructureHash,
|
|
@@ -379,7 +379,7 @@ import {
|
|
|
379
379
|
replayFromLedgerWithStatus,
|
|
380
380
|
resolvePlanningProfile,
|
|
381
381
|
takeSnapshotEvent
|
|
382
|
-
} from "./index-
|
|
382
|
+
} from "./index-7pae558g.js";
|
|
383
383
|
import {
|
|
384
384
|
CORE_EVENT_LOCKED,
|
|
385
385
|
appendCoreEventSync,
|
|
@@ -389,7 +389,7 @@ import {
|
|
|
389
389
|
hasSpecDriftAuditEvent,
|
|
390
390
|
hasTaskRepairAuditEvent,
|
|
391
391
|
readCoreEvents
|
|
392
|
-
} from "./index-
|
|
392
|
+
} from "./index-6k5aq7b9.js";
|
|
393
393
|
import {
|
|
394
394
|
DEFAULT_QA_GATES,
|
|
395
395
|
computeProfileHash,
|
|
@@ -397,7 +397,7 @@ import {
|
|
|
397
397
|
getEffectiveGates,
|
|
398
398
|
getProfileLookupForIdentity,
|
|
399
399
|
setGatesForIdentity
|
|
400
|
-
} from "./index-
|
|
400
|
+
} from "./index-aa2eyfvr.js";
|
|
401
401
|
import {
|
|
402
402
|
MAX_COORDINATION_STATE_LIST_ROWS,
|
|
403
403
|
deleteCoordinationImports,
|
|
@@ -409,7 +409,7 @@ import {
|
|
|
409
409
|
listCoordinationStates,
|
|
410
410
|
transitionCoordinationState,
|
|
411
411
|
withCoordinationTransaction
|
|
412
|
-
} from "./index-
|
|
412
|
+
} from "./index-g6nen3gt.js";
|
|
413
413
|
import {
|
|
414
414
|
DURABILITY_CLASSES,
|
|
415
415
|
closeAllProjectDbs,
|
|
@@ -417,7 +417,7 @@ import {
|
|
|
417
417
|
getProjectDb,
|
|
418
418
|
projectDbExists,
|
|
419
419
|
projectDbPath
|
|
420
|
-
} from "./index-
|
|
420
|
+
} from "./index-yqbnsmmv.js";
|
|
421
421
|
import {
|
|
422
422
|
loadDatabaseCtor
|
|
423
423
|
} from "./index-rdm3px0g.js";
|
|
@@ -432,7 +432,7 @@ import {
|
|
|
432
432
|
observeCuratorCompliance,
|
|
433
433
|
observeStoreHealth,
|
|
434
434
|
readLearningHealth
|
|
435
|
-
} from "./index-
|
|
435
|
+
} from "./index-nfs78aqj.js";
|
|
436
436
|
import {
|
|
437
437
|
appendKnowledge,
|
|
438
438
|
appendRejectedLesson,
|
|
@@ -462,7 +462,7 @@ import {
|
|
|
462
462
|
transactFile,
|
|
463
463
|
transactKnowledge,
|
|
464
464
|
wordBigrams
|
|
465
|
-
} from "./index-
|
|
465
|
+
} from "./index-5134766r.js";
|
|
466
466
|
import {
|
|
467
467
|
readTailJsonl,
|
|
468
468
|
readTailJsonlDetailed,
|
|
@@ -483,7 +483,7 @@ import {
|
|
|
483
483
|
resolveLinkDir,
|
|
484
484
|
sanitizeLinkId,
|
|
485
485
|
writeLinkPointer
|
|
486
|
-
} from "./index-
|
|
486
|
+
} from "./index-95e3a9en.js";
|
|
487
487
|
import {
|
|
488
488
|
assertProjectRoot,
|
|
489
489
|
atomicWriteFile,
|
|
@@ -492,20 +492,21 @@ import {
|
|
|
492
492
|
listActiveLocks,
|
|
493
493
|
tryAcquireLock,
|
|
494
494
|
withEvidenceLock
|
|
495
|
-
} from "./index-
|
|
495
|
+
} from "./index-evxd1art.js";
|
|
496
496
|
import {
|
|
497
497
|
require_proper_lockfile
|
|
498
498
|
} from "./index-7g4c7s5r.js";
|
|
499
499
|
import {
|
|
500
500
|
OPENINFERENCE_MAPPING_VERSION,
|
|
501
501
|
OTEL_GENAI_MAPPING_VERSION,
|
|
502
|
+
canonicalLineContent,
|
|
502
503
|
emit,
|
|
503
504
|
extractWorkflowIds,
|
|
504
505
|
getLastHeartbeat,
|
|
505
506
|
pseudonymousRef,
|
|
506
507
|
resolveLineageSalt,
|
|
507
508
|
telemetry
|
|
508
|
-
} from "./index-
|
|
509
|
+
} from "./index-9dz2ee2g.js";
|
|
509
510
|
import {
|
|
510
511
|
atomicWriteSwarmFile,
|
|
511
512
|
atomicWriteSwarmFileSync,
|
|
@@ -530,7 +531,7 @@ import {
|
|
|
530
531
|
loadGateOverrides,
|
|
531
532
|
loadPluginConfig,
|
|
532
533
|
loadPluginConfigWithMeta
|
|
533
|
-
} from "./index-
|
|
534
|
+
} from "./index-m1j1rth6.js";
|
|
534
535
|
import {
|
|
535
536
|
init_git_executable,
|
|
536
537
|
resolveGitExecutable,
|
|
@@ -559,7 +560,7 @@ import {
|
|
|
559
560
|
resolveAutoReviewConfig,
|
|
560
561
|
resolveGeneratedAgentRole,
|
|
561
562
|
stripKnownSwarmPrefix
|
|
562
|
-
} from "./index-
|
|
563
|
+
} from "./index-4rq1d5k5.js";
|
|
563
564
|
import {
|
|
564
565
|
AGENT_TOOL_MAP,
|
|
565
566
|
ALL_AGENT_NAMES,
|
|
@@ -3173,7 +3174,7 @@ async function importLegacyPrWorkflowGateStateIfNeeded(directory, sessionID, all
|
|
|
3173
3174
|
return null;
|
|
3174
3175
|
throw error2;
|
|
3175
3176
|
}
|
|
3176
|
-
const legacy = allowSalvagedImport ? (await (await import("./pr-workflow-gate-
|
|
3177
|
+
const legacy = allowSalvagedImport ? (await (await import("./pr-workflow-gate-03367gvd.js")).readPrWorkflowGateStateForRecovery(directory, sessionID))?.state ?? null : await readPrWorkflowGateStateFileFromDisk(filePath, sessionID);
|
|
3177
3178
|
if (!legacy)
|
|
3178
3179
|
return null;
|
|
3179
3180
|
const namespace = workflowGateStateCoordinationNamespace(sessionID);
|
|
@@ -3243,7 +3244,7 @@ async function deleteStateWhileLocked(directory, sessionID, options = {}) {
|
|
|
3243
3244
|
let recoveryState = null;
|
|
3244
3245
|
if (!currentAuthoritative) {
|
|
3245
3246
|
if (options.allowSalvagedRead) {
|
|
3246
|
-
const { readPrWorkflowGateStateForRecovery } = await import("./pr-workflow-gate-
|
|
3247
|
+
const { readPrWorkflowGateStateForRecovery } = await import("./pr-workflow-gate-03367gvd.js");
|
|
3247
3248
|
recoveryState = (await readPrWorkflowGateStateForRecovery(directory, normalizedSessionID))?.state ?? null;
|
|
3248
3249
|
}
|
|
3249
3250
|
if (!recoveryState) {
|
|
@@ -5373,43 +5374,6 @@ function reducePrReviewEvent(state, event) {
|
|
|
5373
5374
|
}
|
|
5374
5375
|
]);
|
|
5375
5376
|
}
|
|
5376
|
-
case "transcript_evidence_presented": {
|
|
5377
|
-
if (event.laneHasStructuredReceipt) {
|
|
5378
|
-
return rejected(state, "receipt_cannot_be_downgraded", `lane ${event.laneId} has a structured receipt; transcript evidence cannot alter it`);
|
|
5379
|
-
}
|
|
5380
|
-
return applied(state);
|
|
5381
|
-
}
|
|
5382
|
-
case "provider_terminal_observed": {
|
|
5383
|
-
if (event.evidence.source === "observer_deadline") {
|
|
5384
|
-
return rejected(state, "observer_deadline_not_terminal_evidence", "a collection wait deadline is never terminal provider evidence");
|
|
5385
|
-
}
|
|
5386
|
-
if (event.evidence.source === "client_unavailable") {
|
|
5387
|
-
return rejected(state, "client_absence_not_terminal_evidence", "an unavailable host messages client is never terminal provider evidence");
|
|
5388
|
-
}
|
|
5389
|
-
if (event.evidence.source === "parser_or_transcript") {
|
|
5390
|
-
return rejected(state, "parser_failure_not_provider_signal", "parser/transcript rejection is never a provider circuit signal");
|
|
5391
|
-
}
|
|
5392
|
-
if (event.evidence.source === "stale_observation") {
|
|
5393
|
-
return rejected(state, "stale_observation_not_provider_signal", "a presumed-stale sweep is never terminal provider evidence");
|
|
5394
|
-
}
|
|
5395
|
-
if (event.generation !== currentGeneration(state)) {
|
|
5396
|
-
return rejected(state, "stale_generation_result", `terminal evidence generation ${event.generation} is not the active generation`);
|
|
5397
|
-
}
|
|
5398
|
-
return applied(state);
|
|
5399
|
-
}
|
|
5400
|
-
case "lane_cancelled": {
|
|
5401
|
-
if (event.generation !== currentGeneration(state)) {
|
|
5402
|
-
return rejected(state, "stale_generation_result", `cancellation generation ${event.generation} does not match the active generation`);
|
|
5403
|
-
}
|
|
5404
|
-
return applied(state, [
|
|
5405
|
-
{
|
|
5406
|
-
kind: "settle_delegation",
|
|
5407
|
-
batchId: event.batchId,
|
|
5408
|
-
laneId: event.laneId,
|
|
5409
|
-
status: "cancelled"
|
|
5410
|
-
}
|
|
5411
|
-
]);
|
|
5412
|
-
}
|
|
5413
5377
|
case "circuit_advance_requested": {
|
|
5414
5378
|
const adoption = adoptPrReviewCircuit(state.prReviewResilience?.circuit, event.nowMs);
|
|
5415
5379
|
let circuit = null;
|
|
@@ -5488,53 +5452,40 @@ function reducePrReviewEvent(state, event) {
|
|
|
5488
5452
|
return rejected(state, "live_lane_blocks_coverage", `coverage finalization blocked by live dimension(s): ${settlement.liveDimensions.join(", ")}`);
|
|
5489
5453
|
}
|
|
5490
5454
|
const verdict = event.requestedVerdict;
|
|
5491
|
-
if (verdict
|
|
5492
|
-
if (settlement.kind === "PARTIAL") {
|
|
5493
|
-
return rejected(state, "partial_coverage_cannot_approve",
|
|
5455
|
+
if (verdict !== undefined) {
|
|
5456
|
+
if (settlement.kind === "PARTIAL" && verdict === "APPROVE") {
|
|
5457
|
+
return rejected(state, "partial_coverage_cannot_approve", `a partial review can never emit ${verdict}`);
|
|
5494
5458
|
}
|
|
5495
|
-
if (settlement.kind === "NO_COVERAGE") {
|
|
5496
|
-
return rejected(state, "
|
|
5459
|
+
if (settlement.kind === "NO_COVERAGE" && verdict !== "INCOMPLETE") {
|
|
5460
|
+
return rejected(state, "no_coverage_requires_incomplete", `a zero-coverage review must report INCOMPLETE, not ${verdict}`);
|
|
5497
5461
|
}
|
|
5498
5462
|
}
|
|
5499
|
-
return applied(state
|
|
5463
|
+
return applied(state);
|
|
5500
5464
|
}
|
|
5501
5465
|
case "critic_result_recorded": {
|
|
5502
|
-
const
|
|
5466
|
+
const settledFindingIds = new Set(event.criticSettledReceipts.filter((receipt) => receipt.status === "UPHELD" || receipt.status === "DOWNGRADED" || receipt.status === "DISPROVED").map((receipt) => receipt.findingId));
|
|
5467
|
+
const unfulfilled = event.criticRequiredFindingIds.filter((id) => !settledFindingIds.has(id));
|
|
5503
5468
|
if (unfulfilled.length > 0) {
|
|
5504
5469
|
return rejected(state, "critic_required_unfulfilled", `critic confirmation missing for finding(s): ${unfulfilled.join(", ")}`);
|
|
5505
5470
|
}
|
|
5506
|
-
return applied(state
|
|
5507
|
-
}
|
|
5508
|
-
case "publication_armed": {
|
|
5509
|
-
if (event.verdict === "APPROVE" && event.coverageKind !== "COMPLETE") {
|
|
5510
|
-
return rejected(state, event.coverageKind === "NO_COVERAGE" ? "no_coverage_cannot_approve" : "partial_coverage_cannot_approve", `cannot arm publication of ${event.verdict} on ${event.coverageKind} coverage`);
|
|
5511
|
-
}
|
|
5512
|
-
return applied(state, [{ kind: "persist_state" }]);
|
|
5471
|
+
return applied(state);
|
|
5513
5472
|
}
|
|
5514
|
-
case "
|
|
5515
|
-
case "armed_recovery_requested":
|
|
5516
|
-
case "reviewer_authorization_consumed": {
|
|
5473
|
+
case "armed_recovery_requested": {
|
|
5517
5474
|
const reason = bindingRejection(state, event);
|
|
5518
5475
|
if (reason) {
|
|
5519
5476
|
return rejected(state, "stale_foreign_authorization", reason.detail);
|
|
5520
5477
|
}
|
|
5521
|
-
|
|
5522
|
-
|
|
5523
|
-
}
|
|
5524
|
-
|
|
5525
|
-
|
|
5526
|
-
|
|
5478
|
+
const cancellations = {
|
|
5479
|
+
...state.prReviewDimensionCancellations ?? {}
|
|
5480
|
+
};
|
|
5481
|
+
for (const dimension of event.dimensionsToCancel) {
|
|
5482
|
+
cancellations[dimension] = {
|
|
5483
|
+
reason: event.reason,
|
|
5484
|
+
cancelledAt: event.nowIso,
|
|
5485
|
+
source: "armed_recovery"
|
|
5527
5486
|
};
|
|
5528
|
-
for (const dimension of event.dimensionsToCancel) {
|
|
5529
|
-
cancellations[dimension] = {
|
|
5530
|
-
reason: "armed-recovery cancellation of remaining lanes",
|
|
5531
|
-
cancelledAt: event.nowIso,
|
|
5532
|
-
source: "armed_recovery"
|
|
5533
|
-
};
|
|
5534
|
-
}
|
|
5535
|
-
return applied({ ...state, prReviewDimensionCancellations: cancellations }, [{ kind: "persist_state" }]);
|
|
5536
5487
|
}
|
|
5537
|
-
return applied(state, [{ kind: "persist_state" }]);
|
|
5488
|
+
return applied({ ...state, prReviewDimensionCancellations: cancellations }, [{ kind: "persist_state" }]);
|
|
5538
5489
|
}
|
|
5539
5490
|
default: {
|
|
5540
5491
|
const exhausted = event;
|
|
@@ -13877,7 +13828,7 @@ function isLaneOwnedByCurrentSession(branchName, expectedSessionId) {
|
|
|
13877
13828
|
return extracted === expectedSessionId;
|
|
13878
13829
|
}
|
|
13879
13830
|
async function inspectStandardWorktreeCollisionOwnership(identity) {
|
|
13880
|
-
const collisionOwnership = await import("./worktree-collision-ownership-
|
|
13831
|
+
const collisionOwnership = await import("./worktree-collision-ownership-6mgm8p9g.js");
|
|
13881
13832
|
return collisionOwnership.inspectStandardWorktreeCollisionOwnership(identity);
|
|
13882
13833
|
}
|
|
13883
13834
|
async function runRecoveryGit(directory, args, timeoutMs = 15000) {
|
|
@@ -14303,7 +14254,7 @@ async function precreateStandardWorktreeSession(args) {
|
|
|
14303
14254
|
const laneProfile = computeLaneRuntimeProfile(worktreeConfig.runtime_isolation, laneIndex, handle.worktreePath);
|
|
14304
14255
|
if (laneProfile) {
|
|
14305
14256
|
try {
|
|
14306
|
-
const { writeLaneProfileToDiskReal } = await import("./core-
|
|
14257
|
+
const { writeLaneProfileToDiskReal } = await import("./core-2znms60v.js");
|
|
14307
14258
|
await writeLaneProfileToDiskReal(handle.worktreePath, laneProfile.laneIndex, laneProfile.envOverrides);
|
|
14308
14259
|
} catch {}
|
|
14309
14260
|
}
|
|
@@ -15274,7 +15225,7 @@ async function finishStandardWorktreeDispatch(directory, dispatch, config, callI
|
|
|
15274
15225
|
}
|
|
15275
15226
|
clearWorktreeMergeStatus(statusKey);
|
|
15276
15227
|
try {
|
|
15277
|
-
const { removeLaneProfileFromDiskReal } = await import("./core-
|
|
15228
|
+
const { removeLaneProfileFromDiskReal } = await import("./core-2znms60v.js");
|
|
15278
15229
|
await removeLaneProfileFromDiskReal(dispatch.handle.worktreePath, dispatch.laneIndex);
|
|
15279
15230
|
} catch {}
|
|
15280
15231
|
const state = serializationStateBySessionID.get(dispatch.parentSessionID);
|
|
@@ -17595,6 +17546,15 @@ var MAX_EVENT_PAYLOAD_BYTES = 16 * 1024;
|
|
|
17595
17546
|
var LEGACY_STREAM_FILES = ["telemetry.jsonl.1", "telemetry.jsonl"];
|
|
17596
17547
|
var IMPORT_ID_NAMESPACE = "obs-import-v1";
|
|
17597
17548
|
var MAX_IMPORT_LINE_BYTES = 1024 * 1024;
|
|
17549
|
+
var LINE_HASH_NAMESPACE = "obs-line-v1";
|
|
17550
|
+
var LINE_HASH_QUERY_CHUNK = 500;
|
|
17551
|
+
var LIVE_LINE_HASH_BACKFILL_MARKER = "__live_line_hash_backfill__";
|
|
17552
|
+
function lineHashOf(content) {
|
|
17553
|
+
return createHash18("sha256").update(`${LINE_HASH_NAMESPACE}\x00${content}`).digest("hex");
|
|
17554
|
+
}
|
|
17555
|
+
function normalizeSegmentForLineHash(segment) {
|
|
17556
|
+
return segment.endsWith("\r") ? segment.slice(0, -1) : segment;
|
|
17557
|
+
}
|
|
17598
17558
|
function flushPendingWrites(directory) {
|
|
17599
17559
|
try {
|
|
17600
17560
|
_internals25.getGroupCommitWriter(directory).flushSync();
|
|
@@ -17608,8 +17568,8 @@ var INSERT_EVENT_SQL = `INSERT OR IGNORE INTO observability_event (
|
|
|
17608
17568
|
trace_id, span_id, host_session_id, task_id, lane_id, batch_id,
|
|
17609
17569
|
phase_id, council_round_id, project_ref, outcome_status, retry_index,
|
|
17610
17570
|
privacy_class, sampled, payload_json, relationship_violations,
|
|
17611
|
-
quarantined, quarantine_reason, ingested_via
|
|
17612
|
-
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`;
|
|
17571
|
+
quarantined, quarantine_reason, line_hash, ingested_via
|
|
17572
|
+
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`;
|
|
17613
17573
|
function insertRow(db, columns, ingestedVia) {
|
|
17614
17574
|
db.run(INSERT_EVENT_SQL, [
|
|
17615
17575
|
columns.event_id,
|
|
@@ -17635,6 +17595,7 @@ function insertRow(db, columns, ingestedVia) {
|
|
|
17635
17595
|
columns.relationship_violations,
|
|
17636
17596
|
columns.quarantined,
|
|
17637
17597
|
columns.quarantine_reason,
|
|
17598
|
+
columns.line_hash,
|
|
17638
17599
|
ingestedVia
|
|
17639
17600
|
]);
|
|
17640
17601
|
}
|
|
@@ -17673,9 +17634,11 @@ function unparseableImportRow(line, reason) {
|
|
|
17673
17634
|
payload_json: line.length > MAX_EVENT_PAYLOAD_BYTES ? '{"truncated":true}' : JSON.stringify({ raw_line: line }),
|
|
17674
17635
|
relationship_violations: null,
|
|
17675
17636
|
quarantined: 1,
|
|
17676
|
-
quarantine_reason: reason
|
|
17637
|
+
quarantine_reason: reason,
|
|
17638
|
+
line_hash: null
|
|
17677
17639
|
},
|
|
17678
|
-
quarantined: true
|
|
17640
|
+
quarantined: true,
|
|
17641
|
+
contentHash: lineHashOf(normalizeSegmentForLineHash(line))
|
|
17679
17642
|
};
|
|
17680
17643
|
}
|
|
17681
17644
|
function buildImportRow(line) {
|
|
@@ -17718,18 +17681,75 @@ function buildImportRow(line) {
|
|
|
17718
17681
|
payload_json: payloadJson.length > MAX_EVENT_PAYLOAD_BYTES ? '{"truncated":true}' : payloadJson,
|
|
17719
17682
|
relationship_violations: null,
|
|
17720
17683
|
quarantined: timestamp === null ? 1 : 0,
|
|
17721
|
-
quarantine_reason: timestamp === null ? "import_missing_timestamp" : null
|
|
17684
|
+
quarantine_reason: timestamp === null ? "import_missing_timestamp" : null,
|
|
17685
|
+
line_hash: null
|
|
17722
17686
|
},
|
|
17723
|
-
quarantined: timestamp === null
|
|
17687
|
+
quarantined: timestamp === null,
|
|
17688
|
+
contentHash: lineHashOf(normalizeSegmentForLineHash(line))
|
|
17724
17689
|
};
|
|
17725
17690
|
}
|
|
17691
|
+
function reconstructLiveRowLineHash(row) {
|
|
17692
|
+
const { payload_json: payloadJson } = row;
|
|
17693
|
+
if (!payloadJson.startsWith("{") || !payloadJson.endsWith("}") || payloadJson.length < 2) {
|
|
17694
|
+
return null;
|
|
17695
|
+
}
|
|
17696
|
+
let parsed;
|
|
17697
|
+
try {
|
|
17698
|
+
parsed = JSON.parse(payloadJson);
|
|
17699
|
+
} catch {
|
|
17700
|
+
return null;
|
|
17701
|
+
}
|
|
17702
|
+
if (typeof parsed !== "object" || parsed === null || Array.isArray(parsed) || Object.keys(parsed).some((k) => k === "timestamp" || k === "event")) {
|
|
17703
|
+
return null;
|
|
17704
|
+
}
|
|
17705
|
+
const body = payloadJson.slice(1, -1);
|
|
17706
|
+
const line = body.length === 0 ? `{"timestamp":${JSON.stringify(row.occurred_at)},"event":${JSON.stringify(row.kind)}}` : `{"timestamp":${JSON.stringify(row.occurred_at)},"event":${JSON.stringify(row.kind)},${body}}`;
|
|
17707
|
+
return lineHashOf(line);
|
|
17708
|
+
}
|
|
17709
|
+
function backfillLiveLineHashesOnce(db) {
|
|
17710
|
+
const done = db.query("SELECT 1 as found FROM observability_import WHERE source = ?").get(LIVE_LINE_HASH_BACKFILL_MARKER);
|
|
17711
|
+
if (done !== undefined && done !== null)
|
|
17712
|
+
return;
|
|
17713
|
+
const rows = db.query("SELECT rowid, occurred_at, kind, payload_json FROM observability_event WHERE line_hash IS NULL AND ingested_via = 'live' AND quarantined = 0").all();
|
|
17714
|
+
for (const row of rows) {
|
|
17715
|
+
const hash = reconstructLiveRowLineHash(row);
|
|
17716
|
+
if (hash === null)
|
|
17717
|
+
continue;
|
|
17718
|
+
db.run("UPDATE observability_event SET line_hash = ? WHERE rowid = ?", [
|
|
17719
|
+
hash,
|
|
17720
|
+
row.rowid
|
|
17721
|
+
]);
|
|
17722
|
+
}
|
|
17723
|
+
db.run("INSERT INTO observability_import (source, fingerprint_size, fingerprint_mtime_ms, lines_seen, imported_at) VALUES (?, 0, 0, 0, ?)", [LIVE_LINE_HASH_BACKFILL_MARKER, new Date().toISOString()]);
|
|
17724
|
+
}
|
|
17725
|
+
function filterImportCandidates(db, rows) {
|
|
17726
|
+
const existing = new Set;
|
|
17727
|
+
for (let i = 0;i < rows.length; i += LINE_HASH_QUERY_CHUNK) {
|
|
17728
|
+
const chunk = rows.slice(i, i + LINE_HASH_QUERY_CHUNK).map((r) => r.contentHash);
|
|
17729
|
+
const placeholders = chunk.map(() => "?").join(", ");
|
|
17730
|
+
const found = db.query(`SELECT line_hash FROM observability_event WHERE line_hash IN (${placeholders})`).all(...chunk);
|
|
17731
|
+
for (const f of found)
|
|
17732
|
+
existing.add(f.line_hash);
|
|
17733
|
+
}
|
|
17734
|
+
const toInsert = [];
|
|
17735
|
+
let skippedLive = 0;
|
|
17736
|
+
for (const row of rows) {
|
|
17737
|
+
if (existing.has(row.contentHash)) {
|
|
17738
|
+
skippedLive += 1;
|
|
17739
|
+
continue;
|
|
17740
|
+
}
|
|
17741
|
+
toInsert.push({ columns: row.columns, quarantined: row.quarantined });
|
|
17742
|
+
}
|
|
17743
|
+
return { toInsert, skippedLive };
|
|
17744
|
+
}
|
|
17726
17745
|
function syncObservabilityImport(directory) {
|
|
17727
17746
|
flushPendingWrites(directory);
|
|
17728
17747
|
const root = canonicalProjectKey(directory);
|
|
17729
17748
|
const result = {
|
|
17730
17749
|
imported: 0,
|
|
17731
17750
|
quarantined: 0,
|
|
17732
|
-
skippedUnchanged: true
|
|
17751
|
+
skippedUnchanged: true,
|
|
17752
|
+
skippedLive: 0
|
|
17733
17753
|
};
|
|
17734
17754
|
for (const fileName of LEGACY_STREAM_FILES) {
|
|
17735
17755
|
const filePath = join16(root, ".swarm", fileName);
|
|
@@ -17764,11 +17784,11 @@ function syncObservabilityImport(directory) {
|
|
|
17764
17784
|
continue;
|
|
17765
17785
|
rows.push(built);
|
|
17766
17786
|
}
|
|
17767
|
-
const imported = rows.length;
|
|
17768
|
-
const quarantined = rows.filter((r) => r.quarantined).length;
|
|
17769
17787
|
db.run("BEGIN IMMEDIATE");
|
|
17770
17788
|
try {
|
|
17771
|
-
|
|
17789
|
+
backfillLiveLineHashesOnce(db);
|
|
17790
|
+
const { toInsert, skippedLive } = filterImportCandidates(db, rows);
|
|
17791
|
+
for (const row of toInsert)
|
|
17772
17792
|
insertRow(db, row.columns, "import");
|
|
17773
17793
|
db.run(`INSERT INTO observability_import (source, fingerprint_size, fingerprint_mtime_ms, lines_seen, imported_at)
|
|
17774
17794
|
VALUES (?, ?, ?, ?, ?)
|
|
@@ -17785,14 +17805,15 @@ function syncObservabilityImport(directory) {
|
|
|
17785
17805
|
]);
|
|
17786
17806
|
runRetentionIfOverCap(db);
|
|
17787
17807
|
db.run("COMMIT");
|
|
17808
|
+
result.imported += toInsert.length;
|
|
17809
|
+
result.quarantined += toInsert.filter((r) => r.quarantined).length;
|
|
17810
|
+
result.skippedLive += skippedLive;
|
|
17788
17811
|
} catch (err) {
|
|
17789
17812
|
try {
|
|
17790
17813
|
db.run("ROLLBACK");
|
|
17791
17814
|
} catch {}
|
|
17792
17815
|
throw err;
|
|
17793
17816
|
}
|
|
17794
|
-
result.imported += imported;
|
|
17795
|
-
result.quarantined += quarantined;
|
|
17796
17817
|
}
|
|
17797
17818
|
return result;
|
|
17798
17819
|
}
|
|
@@ -17889,7 +17910,8 @@ function legacyStreamExists(directory) {
|
|
|
17889
17910
|
var _internals25 = {
|
|
17890
17911
|
getProjectDb,
|
|
17891
17912
|
getGroupCommitWriter,
|
|
17892
|
-
extractWorkflowIds
|
|
17913
|
+
extractWorkflowIds,
|
|
17914
|
+
canonicalLineContent
|
|
17893
17915
|
};
|
|
17894
17916
|
|
|
17895
17917
|
// src/observability/otlp-exporter.ts
|
|
@@ -18131,6 +18153,7 @@ async function handleReportCommand(directory, args) {
|
|
|
18131
18153
|
...postImportCoverage,
|
|
18132
18154
|
importedThisSync: importResult.imported,
|
|
18133
18155
|
quarantinedThisSync: importResult.quarantined,
|
|
18156
|
+
skippedLiveThisSync: importResult.skippedLive,
|
|
18134
18157
|
rowCap: MAX_REPORT_ROWS,
|
|
18135
18158
|
truncated: query.truncated,
|
|
18136
18159
|
totalMatching: query.totalMatching,
|
|
@@ -21798,7 +21821,7 @@ function getDisplayFinalPromptPressure() {
|
|
|
21798
21821
|
async function rehydratePrSubscriptions(sessionID, directory) {
|
|
21799
21822
|
const map = new Map;
|
|
21800
21823
|
try {
|
|
21801
|
-
const { listActive: listActive2 } = await import("./pr-subscriptions-
|
|
21824
|
+
const { listActive: listActive2 } = await import("./pr-subscriptions-t51vcrvd.js");
|
|
21802
21825
|
const records = await listActive2(directory);
|
|
21803
21826
|
for (const record of records) {
|
|
21804
21827
|
if (record.sessionID !== sessionID)
|
|
@@ -23297,14 +23320,25 @@ async function recoverArmedPrWorkflow(directory, sessionID, request) {
|
|
|
23297
23320
|
if (entry.terminalState !== "NOT_LAUNCHED")
|
|
23298
23321
|
continue;
|
|
23299
23322
|
cancelledDimensions.push(entry.dimension);
|
|
23300
|
-
|
|
23301
|
-
|
|
23302
|
-
|
|
23303
|
-
|
|
23304
|
-
|
|
23305
|
-
|
|
23306
|
-
|
|
23307
|
-
|
|
23323
|
+
}
|
|
23324
|
+
if (cancelledDimensions.length > 0) {
|
|
23325
|
+
const recoveryOutcome = reducePrReviewEvent(state, {
|
|
23326
|
+
type: "armed_recovery_requested",
|
|
23327
|
+
binding: {
|
|
23328
|
+
sessionID: state.sessionID,
|
|
23329
|
+
...state.workflowInstanceId ? { workflowInstanceId: state.workflowInstanceId } : {},
|
|
23330
|
+
prHeadSha: state.prHeadSha,
|
|
23331
|
+
revisionDigest: armed.revisionDigest,
|
|
23332
|
+
generation: state.revision
|
|
23333
|
+
},
|
|
23334
|
+
dimensionsToCancel: cancelledDimensions,
|
|
23335
|
+
nowIso: isoNow(),
|
|
23336
|
+
reason: sanitizedReason
|
|
23337
|
+
});
|
|
23338
|
+
if (recoveryOutcome.status === "rejected") {
|
|
23339
|
+
throw new Error(`BLOCKED: armed recovery rejected (${recoveryOutcome.rejection.code}): ${recoveryOutcome.rejection.detail}`);
|
|
23340
|
+
}
|
|
23341
|
+
cancellations = recoveryOutcome.state.prReviewDimensionCancellations ?? cancellations;
|
|
23308
23342
|
}
|
|
23309
23343
|
}
|
|
23310
23344
|
const recoveredAt = isoNow();
|
|
@@ -24081,11 +24115,20 @@ async function enforcePrReviewBaseDimensionsWhileLocked(directory, normalizedSes
|
|
|
24081
24115
|
})),
|
|
24082
24116
|
validatedAt: isoNow()
|
|
24083
24117
|
};
|
|
24118
|
+
const admissionOutcome = reducePrReviewEvent(state, {
|
|
24119
|
+
type: "base_admission_requested",
|
|
24120
|
+
batchId,
|
|
24121
|
+
lanes: record.lanes,
|
|
24122
|
+
maxBatches: MAX_WORKFLOW_BATCHES,
|
|
24123
|
+
validatedAt: record.validatedAt
|
|
24124
|
+
});
|
|
24125
|
+
if (admissionOutcome.status === "rejected") {
|
|
24126
|
+
throw new Error("BLOCKED: PR_REVIEW base batch limit reached");
|
|
24127
|
+
}
|
|
24128
|
+
const admittedState = admissionOutcome.state;
|
|
24084
24129
|
const nextState = {
|
|
24085
|
-
...
|
|
24130
|
+
...admittedState,
|
|
24086
24131
|
updatedAt: isoNow(),
|
|
24087
|
-
prReviewBaseDispatches: [...previous, record],
|
|
24088
|
-
prReviewBaseDispatch: record,
|
|
24089
24132
|
...requestedContractRetry ? {
|
|
24090
24133
|
prReviewContractRetryDimensions: [
|
|
24091
24134
|
...state.prReviewContractRetryDimensions ?? [],
|
|
@@ -26618,6 +26661,32 @@ async function assertPrReviewTerminalReady(directory, sessionID, laneLiveness) {
|
|
|
26618
26661
|
throw new Error(`BLOCKED: PR_REVIEW reviewer verdicts require critic coverage for: ${criticInventory.join(", ")}`);
|
|
26619
26662
|
}
|
|
26620
26663
|
await assertPrReviewValidationSettled(directory, sessionID, "critic", ctx);
|
|
26664
|
+
const criticVerdicts = deriveLatestPrReviewCriticVerdicts(directory, state, ctx);
|
|
26665
|
+
const reviewerClaims = authoritativeReviewerClaims2(directory, state, ctx);
|
|
26666
|
+
const settledReceipts = [];
|
|
26667
|
+
for (const [itemId, verdict] of criticVerdicts) {
|
|
26668
|
+
if (verdict.status !== "UPHELD" && verdict.status !== "DOWNGRADED" && verdict.status !== "DISPROVED") {
|
|
26669
|
+
continue;
|
|
26670
|
+
}
|
|
26671
|
+
const reviewerRowDigest = reviewerClaims.get(itemId)?.rowDigest;
|
|
26672
|
+
if (!reviewerRowDigest)
|
|
26673
|
+
continue;
|
|
26674
|
+
settledReceipts.push({
|
|
26675
|
+
findingId: itemId,
|
|
26676
|
+
status: verdict.status,
|
|
26677
|
+
reviewerRowDigest
|
|
26678
|
+
});
|
|
26679
|
+
}
|
|
26680
|
+
const criticOutcome = reducePrReviewEvent(state, {
|
|
26681
|
+
type: "critic_result_recorded",
|
|
26682
|
+
criticRequiredFindingIds: criticInventory,
|
|
26683
|
+
criticSettledReceipts: settledReceipts
|
|
26684
|
+
});
|
|
26685
|
+
if (criticOutcome.status === "rejected") {
|
|
26686
|
+
const settledIds = new Set(settledReceipts.map((r) => r.findingId));
|
|
26687
|
+
const unfulfilled = criticInventory.filter((id) => !settledIds.has(id));
|
|
26688
|
+
throw new Error(`BLOCKED: PR_REVIEW reviewer verdicts require critic coverage for: ${unfulfilled.join(", ")}`);
|
|
26689
|
+
}
|
|
26621
26690
|
}
|
|
26622
26691
|
const requiredBoundaries = [
|
|
26623
26692
|
"post_explorer",
|
|
@@ -27082,13 +27151,34 @@ async function completePrWorkflow(directory, sessionID, expectedMode, prHeadSha,
|
|
|
27082
27151
|
}
|
|
27083
27152
|
const ctx = await createPrReviewGateContext2(directory, state);
|
|
27084
27153
|
const settlement = derivePrReviewDimensionSettlement(directory, state, ctx.revisionDigest);
|
|
27085
|
-
|
|
27086
|
-
|
|
27087
|
-
|
|
27154
|
+
const dispatchCoverageFinalization = (finalizationSettlement) => {
|
|
27155
|
+
const outcome = reducePrReviewEvent(state, {
|
|
27156
|
+
type: "coverage_finalization_requested",
|
|
27157
|
+
settlement: {
|
|
27158
|
+
kind: finalizationSettlement.kind,
|
|
27159
|
+
coveredDimensions: finalizationSettlement.coveredDimensions,
|
|
27160
|
+
unresolvedDimensions: finalizationSettlement.unresolvedDimensions,
|
|
27161
|
+
liveDimensions: finalizationSettlement.liveDimensions
|
|
27162
|
+
},
|
|
27163
|
+
requestedVerdict: verdict
|
|
27164
|
+
});
|
|
27165
|
+
if (outcome.status === "applied")
|
|
27166
|
+
return;
|
|
27167
|
+
const { code } = outcome.rejection;
|
|
27168
|
+
if (code === "live_lane_blocks_coverage") {
|
|
27169
|
+
if (finalizationSettlement.kind === "NO_COVERAGE") {
|
|
27170
|
+
throw new Error(`BLOCKED: PR_REVIEW completion has zero covered dimensions and still-live lanes for: ${finalizationSettlement.liveDimensions.join(", ")}. Collect or settle them, then complete with report_verdict INCOMPLETE.`);
|
|
27171
|
+
}
|
|
27172
|
+
throw new Error(`BLOCKED: PR_REVIEW base coverage is incomplete and still has live lanes for: ${finalizationSettlement.liveDimensions.join(", ")}. Completion is allowed only once every launched lane is terminal or explicitly cancelled.`);
|
|
27088
27173
|
}
|
|
27089
|
-
if (
|
|
27174
|
+
if (code === "no_coverage_requires_incomplete") {
|
|
27090
27175
|
throw new Error(`BLOCKED: PR_REVIEW NO_COVERAGE completion must report verdict INCOMPLETE; got "${verdict}". A zero-coverage report never approves and never claims a code-quality review.`);
|
|
27091
27176
|
}
|
|
27177
|
+
const allowedList = allowedPrReviewReportVerdicts(finalizationSettlement.kind).join(" | ");
|
|
27178
|
+
throw new Error(`BLOCKED: PR_REVIEW ${finalizationSettlement.kind} completion allows report_verdict ${allowedList}; got "${verdict}". Partial coverage never approves and never claims a full review.`);
|
|
27179
|
+
};
|
|
27180
|
+
dispatchCoverageFinalization(settlement);
|
|
27181
|
+
if (settlement.kind === "NO_COVERAGE") {
|
|
27092
27182
|
const noCoverageRunId = state.prReviewArtifactRunId ?? state.prReviewReservedRunId ?? generatePrReviewRunId();
|
|
27093
27183
|
const admittedState = await admitPrReviewPartialBaseCoverage2(directory, sessionID, noCoverageRunId, settlement.unresolvedDimensions.map((entry) => entry.dimension));
|
|
27094
27184
|
terminalClearRevision = admittedState.revision;
|
|
@@ -27106,19 +27196,12 @@ async function completePrWorkflow(directory, sessionID, expectedMode, prHeadSha,
|
|
|
27106
27196
|
});
|
|
27107
27197
|
} catch {}
|
|
27108
27198
|
} else {
|
|
27109
|
-
const preAllowed = allowedPrReviewReportVerdicts(settlement.kind);
|
|
27110
|
-
if (!preAllowed.includes(verdict)) {
|
|
27111
|
-
throw new Error(`BLOCKED: PR_REVIEW ${settlement.kind} completion allows report_verdict ${preAllowed.join(" | ")}; got "${verdict}". Partial coverage never approves and never claims a full review.`);
|
|
27112
|
-
}
|
|
27113
27199
|
const ready = await assertPrReviewTerminalReady(directory, sessionID, options?.laneLiveness);
|
|
27114
27200
|
const readyState = ready.state;
|
|
27115
27201
|
if (workflowIdentity(readyState) !== workflowIdentity(state) || readyState.revision !== state.revision) {
|
|
27116
27202
|
throw new Error("BLOCKED: PR_REVIEW state changed while checking terminal readiness; retry from current state");
|
|
27117
27203
|
}
|
|
27118
|
-
|
|
27119
|
-
if (!allowed.includes(verdict)) {
|
|
27120
|
-
throw new Error(`BLOCKED: PR_REVIEW ${ready.settlement.kind} completion allows report_verdict ${allowed.join(" | ")}; got "${verdict}". Partial coverage never approves and never claims a full review.`);
|
|
27121
|
-
}
|
|
27204
|
+
dispatchCoverageFinalization(ready.settlement);
|
|
27122
27205
|
}
|
|
27123
27206
|
} else {
|
|
27124
27207
|
await ensurePublicationGenerationCurrent(directory, sessionID);
|
|
@@ -38117,9 +38200,9 @@ function hashContent(content) {
|
|
|
38117
38200
|
return createHash23("sha1").update(content).digest("hex");
|
|
38118
38201
|
}
|
|
38119
38202
|
async function loadConfigForPolicyCurator(directory) {
|
|
38120
|
-
const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-
|
|
38203
|
+
const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-ht5hmsce.js");
|
|
38121
38204
|
try {
|
|
38122
|
-
const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-
|
|
38205
|
+
const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-rkj71ej6.js");
|
|
38123
38206
|
const { config: loadedConfig } = loadPluginConfigWithMeta2(directory);
|
|
38124
38207
|
return KnowledgeConfigSchema2.parse(loadedConfig.knowledge ?? {});
|
|
38125
38208
|
} catch {
|
|
@@ -41177,7 +41260,7 @@ async function resolveCuratorLLMDelegate(directory, mode, sessionId) {
|
|
|
41177
41260
|
const seam = _internals35.createCuratorLLMDelegate;
|
|
41178
41261
|
if (seam)
|
|
41179
41262
|
return seam(directory, mode, sessionId);
|
|
41180
|
-
const { createCuratorLLMDelegate } = await import("./curator-llm-factory-
|
|
41263
|
+
const { createCuratorLLMDelegate } = await import("./curator-llm-factory-exke3rag.js");
|
|
41181
41264
|
return createCuratorLLMDelegate(directory, mode, sessionId);
|
|
41182
41265
|
}
|
|
41183
41266
|
async function reconcileCloseTerminalStateForPlan(directory, targetPlan, options) {
|
|
@@ -41572,7 +41655,7 @@ async function runFinalizeStage(ctx) {
|
|
|
41572
41655
|
}
|
|
41573
41656
|
}
|
|
41574
41657
|
try {
|
|
41575
|
-
const { CuratorConfigSchema: CCS } = await import("./schema-
|
|
41658
|
+
const { CuratorConfigSchema: CCS } = await import("./schema-ht5hmsce.js");
|
|
41576
41659
|
const { config: pmLoadedConfig } = _internals35.loadPluginConfigWithMeta(ctx.directory);
|
|
41577
41660
|
const curatorCfg = CCS.parse(pmLoadedConfig.curator ?? {});
|
|
41578
41661
|
if (curatorCfg.enabled && curatorCfg.postmortem_enabled) {
|
|
@@ -43389,7 +43472,7 @@ function serializeAgentSession(s) {
|
|
|
43389
43472
|
}
|
|
43390
43473
|
async function writeSnapshot(directory, state) {
|
|
43391
43474
|
try {
|
|
43392
|
-
const { ensureSnapshotCoordinationReady } = await import("./snapshot-coordination-init-
|
|
43475
|
+
const { ensureSnapshotCoordinationReady } = await import("./snapshot-coordination-init-zgfjjv9p.js");
|
|
43393
43476
|
await ensureSnapshotCoordinationReady(directory);
|
|
43394
43477
|
const snapshot = {
|
|
43395
43478
|
version: 3,
|
|
@@ -46045,7 +46128,7 @@ function planMerges(active, threshold, maxComparisons, maxMerges) {
|
|
|
46045
46128
|
};
|
|
46046
46129
|
}
|
|
46047
46130
|
async function sweepActiveNearDuplicates(directory, options = {}) {
|
|
46048
|
-
const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-
|
|
46131
|
+
const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-rkj71ej6.js");
|
|
46049
46132
|
const { config } = loadPluginConfigWithMeta2(directory);
|
|
46050
46133
|
const sweepConfig = config.learning?.dedup_sweep;
|
|
46051
46134
|
if (sweepConfig?.enabled === false)
|
|
@@ -47169,7 +47252,7 @@ async function runCuratorPhase(directory, phase, agentsDispatched, config, knowl
|
|
|
47169
47252
|
}
|
|
47170
47253
|
if (config.skill_generation_enabled === true && skillCandidates.length > 0) {
|
|
47171
47254
|
try {
|
|
47172
|
-
const skillModule = await import("./skill-generator-
|
|
47255
|
+
const skillModule = await import("./skill-generator-tfm4kawf.js");
|
|
47173
47256
|
for (const cand of skillCandidates) {
|
|
47174
47257
|
if (cand.confidence < (config.min_skill_confidence ?? DEFAULT_SKILL_MIN_CONFIDENCE)) {
|
|
47175
47258
|
continue;
|
|
@@ -47641,7 +47724,7 @@ async function applyCuratorKnowledgeUpdates(directory, recommendations, knowledg
|
|
|
47641
47724
|
} catch {}
|
|
47642
47725
|
}
|
|
47643
47726
|
if (contradictedEntries.length > 0 && knowledgeConfig.contradiction_threshold_action === "quarantine") {
|
|
47644
|
-
const { maybeQuarantineOnContradiction } = await import("./knowledge-escalator-
|
|
47727
|
+
const { maybeQuarantineOnContradiction } = await import("./knowledge-escalator-4j6xgcvj.js");
|
|
47645
47728
|
for (const { id } of contradictedEntries) {
|
|
47646
47729
|
try {
|
|
47647
47730
|
await maybeQuarantineOnContradiction(directory, id, knowledgeConfig.contradiction_quarantine_threshold, knowledgeConfig.contradiction_quarantine_window_days);
|
|
@@ -48473,7 +48556,7 @@ async function runCuratorPostMortem(directory, options = {}) {
|
|
|
48473
48556
|
warnings.push("Failed to collect knowledge summary.");
|
|
48474
48557
|
}
|
|
48475
48558
|
try {
|
|
48476
|
-
const { getScanStatus } = await import("./scan-cursor-
|
|
48559
|
+
const { getScanStatus } = await import("./scan-cursor-nhxpv6tj.js");
|
|
48477
48560
|
const scanStatus = await getScanStatus(directory);
|
|
48478
48561
|
if (scanStatus.remaining_estimate > 0) {
|
|
48479
48562
|
warnings.push(`Fair scan: reviewed ${knowledgeSummary.length} entries this sweep (generation ${scanStatus.generation}); ${scanStatus.remaining_estimate} more eligible entries will be visited in future curation sweeps.`);
|
|
@@ -48645,9 +48728,9 @@ var _internals51 = {
|
|
|
48645
48728
|
verifyPostMortemKnowledgeActions,
|
|
48646
48729
|
repairPostMortemActions,
|
|
48647
48730
|
loadDefaultKnowledgeConfig: async (directory) => {
|
|
48648
|
-
const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-
|
|
48731
|
+
const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-ht5hmsce.js");
|
|
48649
48732
|
try {
|
|
48650
|
-
const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-
|
|
48733
|
+
const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-rkj71ej6.js");
|
|
48651
48734
|
const loaded = loadPluginConfigWithMeta2(directory);
|
|
48652
48735
|
return KnowledgeConfigSchema2.parse(loaded.config.knowledge ?? {});
|
|
48653
48736
|
} catch {
|
|
@@ -48655,11 +48738,11 @@ var _internals51 = {
|
|
|
48655
48738
|
}
|
|
48656
48739
|
},
|
|
48657
48740
|
applyCuratorKnowledgeUpdates: async (directory, recommendations, knowledgeConfig, generation) => {
|
|
48658
|
-
const { applyCuratorKnowledgeUpdates: applyCuratorKnowledgeUpdates2 } = await import("./curator-
|
|
48741
|
+
const { applyCuratorKnowledgeUpdates: applyCuratorKnowledgeUpdates2 } = await import("./curator-kc80aj6d.js");
|
|
48659
48742
|
return applyCuratorKnowledgeUpdates2(directory, recommendations, knowledgeConfig, generation);
|
|
48660
48743
|
},
|
|
48661
48744
|
checkHivePromotions: async (entries2, knowledgeConfig, directory) => {
|
|
48662
|
-
const { checkHivePromotions } = await import("./hive-promoter-
|
|
48745
|
+
const { checkHivePromotions } = await import("./hive-promoter-02vxb018.js");
|
|
48663
48746
|
return checkHivePromotions(entries2, knowledgeConfig, directory);
|
|
48664
48747
|
},
|
|
48665
48748
|
applyProposalTriage: async (directory, triage) => {
|
|
@@ -48668,7 +48751,7 @@ var _internals51 = {
|
|
|
48668
48751
|
activateProposal,
|
|
48669
48752
|
listSkills: listSkills2,
|
|
48670
48753
|
sanitizeSlug
|
|
48671
|
-
} = await import("./skill-generator-
|
|
48754
|
+
} = await import("./skill-generator-tfm4kawf.js");
|
|
48672
48755
|
const result = {
|
|
48673
48756
|
approved: [],
|
|
48674
48757
|
rejected: [],
|
|
@@ -48710,7 +48793,7 @@ var _internals51 = {
|
|
|
48710
48793
|
return result;
|
|
48711
48794
|
},
|
|
48712
48795
|
readPriorDriftReports: async (directory) => {
|
|
48713
|
-
const { readPriorDriftReports } = await import("./curator-drift-
|
|
48796
|
+
const { readPriorDriftReports } = await import("./curator-drift-r9r8gepb.js");
|
|
48714
48797
|
return readPriorDriftReports(directory);
|
|
48715
48798
|
},
|
|
48716
48799
|
readSwarmKnowledge: (directory) => readKnowledge(resolveSwarmKnowledgePath(directory))
|
|
@@ -56189,7 +56272,7 @@ function wireCloseInternals() {
|
|
|
56189
56272
|
archiveEvidence,
|
|
56190
56273
|
endAgentSession,
|
|
56191
56274
|
flushAndDrainTelemetry: async () => {
|
|
56192
|
-
const { flushAndDrainTelemetry } = await import("./telemetry-
|
|
56275
|
+
const { flushAndDrainTelemetry } = await import("./telemetry-0mz37v3h.js");
|
|
56193
56276
|
return flushAndDrainTelemetry();
|
|
56194
56277
|
},
|
|
56195
56278
|
finalizeContextTelemetry,
|
|
@@ -57541,9 +57624,9 @@ var _internals60 = {
|
|
|
57541
57624
|
loadPluginConfigWithMeta,
|
|
57542
57625
|
loadCuratorDeps: async () => {
|
|
57543
57626
|
const [{ CuratorConfigSchema }, curator, { createCuratorLLMDelegate }] = await Promise.all([
|
|
57544
|
-
import("./schema-
|
|
57545
|
-
import("./curator-
|
|
57546
|
-
import("./curator-llm-factory-
|
|
57627
|
+
import("./schema-ht5hmsce.js"),
|
|
57628
|
+
import("./curator-kc80aj6d.js"),
|
|
57629
|
+
import("./curator-llm-factory-exke3rag.js")
|
|
57547
57630
|
]);
|
|
57548
57631
|
return { CuratorConfigSchema, curator, createCuratorLLMDelegate };
|
|
57549
57632
|
}
|
|
@@ -59452,7 +59535,7 @@ async function computeCurationDiagnostics(directory, entries2) {
|
|
|
59452
59535
|
let scanCompleted = false;
|
|
59453
59536
|
let scanRemaining = 0;
|
|
59454
59537
|
try {
|
|
59455
|
-
const { getScanStatus } = await import("./scan-cursor-
|
|
59538
|
+
const { getScanStatus } = await import("./scan-cursor-nhxpv6tj.js");
|
|
59456
59539
|
const status = await getScanStatus(directory);
|
|
59457
59540
|
scanGeneration = status.generation;
|
|
59458
59541
|
scanCompleted = status.completed;
|
|
@@ -59460,19 +59543,19 @@ async function computeCurationDiagnostics(directory, entries2) {
|
|
|
59460
59543
|
} catch {}
|
|
59461
59544
|
let configMatch = null;
|
|
59462
59545
|
try {
|
|
59463
|
-
const { isLinked: isLinked2 } = await import("./knowledge-link-
|
|
59546
|
+
const { isLinked: isLinked2 } = await import("./knowledge-link-vh9pfnb9.js");
|
|
59464
59547
|
if (isLinked2(directory)) {
|
|
59465
|
-
const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-
|
|
59548
|
+
const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-ht5hmsce.js");
|
|
59466
59549
|
let config;
|
|
59467
59550
|
try {
|
|
59468
|
-
const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-
|
|
59551
|
+
const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-rkj71ej6.js");
|
|
59469
59552
|
const loaded = loadPluginConfigWithMeta2(directory);
|
|
59470
59553
|
config = KnowledgeConfigSchema2.parse(loaded.config.knowledge ?? {});
|
|
59471
59554
|
} catch {
|
|
59472
59555
|
config = KnowledgeConfigSchema2.parse({});
|
|
59473
59556
|
}
|
|
59474
59557
|
const { cohortConfigFingerprint: cohortConfigFingerprint2 } = await import("./config-fingerprint-v22xh5a2.js");
|
|
59475
|
-
const { buildConfigFingerprintInput: buildConfigFingerprintInput2, readCohortConfigFingerprint } = await import("./curation-policy-
|
|
59558
|
+
const { buildConfigFingerprintInput: buildConfigFingerprintInput2, readCohortConfigFingerprint } = await import("./curation-policy-fakrpw5t.js");
|
|
59476
59559
|
const currentFp = cohortConfigFingerprint2(buildConfigFingerprintInput2(config));
|
|
59477
59560
|
const cohortFp = await readCohortConfigFingerprint(directory);
|
|
59478
59561
|
configMatch = cohortFp === null ? null : currentFp === cohortFp;
|
|
@@ -60863,7 +60946,7 @@ async function handleDoctorCommand(directory, args) {
|
|
|
60863
60946
|
const result = runConfigDoctor(config, directory);
|
|
60864
60947
|
let output;
|
|
60865
60948
|
if (enableAutoFix && result.hasAutoFixableIssues) {
|
|
60866
|
-
const { runConfigDoctorWithFixes } = await import("./config-doctor-
|
|
60949
|
+
const { runConfigDoctorWithFixes } = await import("./config-doctor-vwy3c9g9.js");
|
|
60867
60950
|
const fixResult = await runConfigDoctorWithFixes(directory, config, true, {
|
|
60868
60951
|
applyLossy: true
|
|
60869
60952
|
});
|
|
@@ -61817,7 +61900,7 @@ async function handleEvidenceCommand(directory, args) {
|
|
|
61817
61900
|
return formatTaskEvidenceMarkdown(evidenceData);
|
|
61818
61901
|
}
|
|
61819
61902
|
async function handleEvidenceSummaryCommand(directory) {
|
|
61820
|
-
const { buildEvidenceSummary } = await import("./evidence-summary-service-
|
|
61903
|
+
const { buildEvidenceSummary } = await import("./evidence-summary-service-g3gr1pfs.js");
|
|
61821
61904
|
const artifact = await buildEvidenceSummary(directory);
|
|
61822
61905
|
if (!artifact) {
|
|
61823
61906
|
return "No plan found. Run `/swarm plan` to check plan status.";
|
|
@@ -81821,7 +81904,7 @@ function createCuratorLLMDelegate(directory, mode = "init", sessionId) {
|
|
|
81821
81904
|
}
|
|
81822
81905
|
const sdkOpts = signal ? { signal } : {};
|
|
81823
81906
|
try {
|
|
81824
|
-
const { getSwarmAgents: getSwarmAgents2, resolveFallbackModel: resolveFallbackModel2 } = await import("./index-
|
|
81907
|
+
const { getSwarmAgents: getSwarmAgents2, resolveFallbackModel: resolveFallbackModel2 } = await import("./index-2j0pd6sj.js");
|
|
81825
81908
|
const createResult = await client.session.create({
|
|
81826
81909
|
...sessionId ? {
|
|
81827
81910
|
body: {
|
|
@@ -96025,7 +96108,7 @@ async function runValidationWithTransientRetry(input, candidateContent, baseline
|
|
|
96025
96108
|
if (!input.dispatcher) {
|
|
96026
96109
|
throw new Error("no evaluation dispatcher available (cannot run validation)");
|
|
96027
96110
|
}
|
|
96028
|
-
const { createModelEvaluationExecutor: createModelEvaluationExecutor2 } = await import("./runner-
|
|
96111
|
+
const { createModelEvaluationExecutor: createModelEvaluationExecutor2 } = await import("./runner-8m8qhngm.js");
|
|
96029
96112
|
const executor = createModelEvaluationExecutor2(input.dispatcher, input.sessionId);
|
|
96030
96113
|
const result = await withProtectedSetIntegrity([evalInputRoot, ...protectedRoots(input.directory)], () => _internals116.evaluateCandidateV1({
|
|
96031
96114
|
projectRoot: input.directory,
|
|
@@ -98654,7 +98737,7 @@ function buildDetailedHelp(commandName, entry) {
|
|
|
98654
98737
|
async function handleHelpCommand(ctx) {
|
|
98655
98738
|
const targetCommand = ctx.args.join(" ");
|
|
98656
98739
|
if (!targetCommand) {
|
|
98657
|
-
const { buildHelpText } = await import("./index-
|
|
98740
|
+
const { buildHelpText } = await import("./index-ztxh3nmf.js");
|
|
98658
98741
|
return buildHelpText();
|
|
98659
98742
|
}
|
|
98660
98743
|
const tokens = targetCommand.split(/\s+/);
|
|
@@ -98668,7 +98751,7 @@ async function handleHelpCommand(ctx) {
|
|
|
98668
98751
|
> Note: \`/swarm ${resolved.key}\` is a deprecated alias for \`/swarm ${aliasTarget}\`.` : detailed;
|
|
98669
98752
|
}
|
|
98670
98753
|
const similar = _internals24.findSimilarCommands(targetCommand);
|
|
98671
|
-
const { buildHelpText: fullHelp } = await import("./index-
|
|
98754
|
+
const { buildHelpText: fullHelp } = await import("./index-ztxh3nmf.js");
|
|
98672
98755
|
if (similar.length > 0) {
|
|
98673
98756
|
return `Command '/swarm ${targetCommand}' not found.
|
|
98674
98757
|
|
|
@@ -98983,7 +99066,7 @@ var COMMAND_REGISTRY = {
|
|
|
98983
99066
|
},
|
|
98984
99067
|
"guardrail explain": {
|
|
98985
99068
|
handler: async (ctx) => {
|
|
98986
|
-
const { handleGuardrailExplain } = await import("./guardrail-explain-
|
|
99069
|
+
const { handleGuardrailExplain } = await import("./guardrail-explain-pkbjswtd.js");
|
|
98987
99070
|
return handleGuardrailExplain(ctx.directory, ctx.args);
|
|
98988
99071
|
},
|
|
98989
99072
|
description: "Dry-run: show what the guardrails would do to a command or write target (executes nothing)",
|
|
@@ -98993,7 +99076,7 @@ var COMMAND_REGISTRY = {
|
|
|
98993
99076
|
},
|
|
98994
99077
|
"guardrail reset": {
|
|
98995
99078
|
handler: async (ctx) => {
|
|
98996
|
-
const { handleGuardrailReset } = await import("./guardrail-reset-
|
|
99079
|
+
const { handleGuardrailReset } = await import("./guardrail-reset-v91p8ca6.js");
|
|
98997
99080
|
return handleGuardrailReset(ctx.args, ctx.sessionID);
|
|
98998
99081
|
},
|
|
98999
99082
|
description: "Reset one exact active invocation/action circuit after repair",
|
|
@@ -99014,7 +99097,7 @@ var COMMAND_REGISTRY = {
|
|
|
99014
99097
|
},
|
|
99015
99098
|
"guardrail-log": {
|
|
99016
99099
|
handler: async (ctx) => {
|
|
99017
|
-
const { handleGuardrailLog } = await import("./guardrail-log-
|
|
99100
|
+
const { handleGuardrailLog } = await import("./guardrail-log-qx1tpeda.js");
|
|
99018
99101
|
return handleGuardrailLog(ctx.directory, ctx.args);
|
|
99019
99102
|
},
|
|
99020
99103
|
description: "Read the guardrail decision log (use --blocks-only for blocks)",
|