@evomap/evolver-core 2.0.0-beta.2 → 2.0.0-beta.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (240) hide show
  1. package/assets/gep/genes.jsonl +5 -5
  2. package/dist/algo/bans.d.ts +10 -1
  3. package/dist/algo/bans.js +56 -6
  4. package/dist/algo/candidateAssembly.d.ts +25 -2
  5. package/dist/algo/candidateAssembly.js +171 -26
  6. package/dist/algo/capabilityCandidates.js +10 -0
  7. package/dist/algo/conversationSniffer.js +25 -8
  8. package/dist/algo/cycleEngine.d.ts +63 -5
  9. package/dist/algo/cycleEngine.js +320 -42
  10. package/dist/algo/cycleFailureClassifier.d.ts +1 -1
  11. package/dist/algo/evolutionEvent.d.ts +26 -0
  12. package/dist/algo/evolutionEvent.js +32 -0
  13. package/dist/algo/exploration.d.ts +7 -0
  14. package/dist/algo/exploration.js +16 -3
  15. package/dist/algo/geneHealth.d.ts +36 -3
  16. package/dist/algo/geneHealth.js +47 -4
  17. package/dist/algo/geneIntake.d.ts +46 -1
  18. package/dist/algo/geneIntake.js +121 -10
  19. package/dist/algo/geneSelection.d.ts +126 -6
  20. package/dist/algo/geneSelection.js +479 -36
  21. package/dist/algo/index.d.ts +6 -1
  22. package/dist/algo/index.js +6 -1
  23. package/dist/algo/kautoProjection.d.ts +41 -0
  24. package/dist/algo/kautoProjection.js +95 -0
  25. package/dist/algo/kautoValidator.d.ts +68 -0
  26. package/dist/algo/kautoValidator.js +256 -0
  27. package/dist/algo/memoryGraph.d.ts +62 -0
  28. package/dist/algo/memoryGraph.js +86 -0
  29. package/dist/algo/orchestrator.d.ts +17 -1
  30. package/dist/algo/orchestrator.js +30 -4
  31. package/dist/algo/publishEligibility.d.ts +34 -0
  32. package/dist/algo/publishEligibility.js +52 -0
  33. package/dist/algo/solidify.d.ts +11 -2
  34. package/dist/algo/solidify.js +37 -7
  35. package/dist/algo/ucb1.d.ts +53 -0
  36. package/dist/algo/ucb1.js +156 -0
  37. package/dist/assetrepair/hubRejection.d.ts +12 -0
  38. package/dist/assetrepair/hubRejection.js +109 -0
  39. package/dist/assetrepair/index.d.ts +2 -0
  40. package/dist/assetrepair/index.js +2 -0
  41. package/dist/assetrepair/repair.d.ts +33 -0
  42. package/dist/assetrepair/repair.js +155 -0
  43. package/dist/assetstore/assetSidecarRecords.d.ts +28 -0
  44. package/dist/assetstore/assetSidecarRecords.js +384 -0
  45. package/dist/assetstore/assetSidecarRecovery.d.ts +48 -0
  46. package/dist/assetstore/assetSidecarRecovery.js +288 -0
  47. package/dist/assetstore/assetStoreHealth.d.ts +81 -0
  48. package/dist/assetstore/assetStoreHealth.js +319 -0
  49. package/dist/assetstore/assetStoreLayout.d.ts +2 -0
  50. package/dist/assetstore/assetStoreLayout.js +6 -0
  51. package/dist/assetstore/assetStoreStorage.d.ts +42 -0
  52. package/dist/assetstore/assetStoreStorage.js +336 -0
  53. package/dist/assetstore/assetSyncLedger.d.ts +91 -1
  54. package/dist/assetstore/assetSyncLedger.js +718 -59
  55. package/dist/assetstore/foreignJsonlSource.d.ts +48 -0
  56. package/dist/assetstore/foreignJsonlSource.js +150 -0
  57. package/dist/assetstore/index.d.ts +5 -0
  58. package/dist/assetstore/index.js +5 -0
  59. package/dist/assetstore/learningHistory.js +3 -3
  60. package/dist/assetstore/localAssetStoreSnapshot.d.ts +51 -0
  61. package/dist/assetstore/localAssetStoreSnapshot.js +329 -0
  62. package/dist/assetstore/localJsonl.d.ts +12 -1
  63. package/dist/assetstore/localJsonl.js +251 -42
  64. package/dist/assetstore/provenance.d.ts +93 -4
  65. package/dist/assetstore/provenance.js +368 -84
  66. package/dist/assetstore/provider.d.ts +63 -0
  67. package/dist/assetstore/provider.js +97 -6
  68. package/dist/assetstore/reviewFilter.d.ts +19 -1
  69. package/dist/assetstore/reviewFilter.js +39 -1
  70. package/dist/assetstore/reviewLedger.d.ts +8 -2
  71. package/dist/assetstore/reviewLedger.js +71 -45
  72. package/dist/assetstore/unionReadStore.d.ts +25 -0
  73. package/dist/assetstore/unionReadStore.js +119 -0
  74. package/dist/benchmark/antiGeneBenchmark.d.ts +2 -0
  75. package/dist/benchmark/antiGeneBenchmark.js +4 -3
  76. package/dist/benchmark/antiGeneRollout.d.ts +2 -0
  77. package/dist/benchmark/antiGeneRollout.js +4 -3
  78. package/dist/benchmark/index.d.ts +3 -1
  79. package/dist/benchmark/index.js +3 -1
  80. package/dist/benchmark/selectionFlatAbstention.d.ts +152 -0
  81. package/dist/benchmark/selectionFlatAbstention.js +481 -0
  82. package/dist/benchmark/triggerShift.d.ts +62 -0
  83. package/dist/benchmark/triggerShift.js +106 -0
  84. package/dist/bootstrap/envFingerprint.d.ts +9 -0
  85. package/dist/bootstrap/envFingerprint.js +5 -0
  86. package/dist/bootstrap/index.d.ts +3 -1
  87. package/dist/bootstrap/index.js +3 -1
  88. package/dist/bootstrap/lifecycleBootstrap.d.ts +111 -0
  89. package/dist/bootstrap/lifecycleBootstrap.js +433 -0
  90. package/dist/bootstrap/v1EnvCompat.d.ts +113 -0
  91. package/dist/bootstrap/v1EnvCompat.js +303 -0
  92. package/dist/events/eventArchive.d.ts +2 -0
  93. package/dist/events/eventArchive.js +13 -3
  94. package/dist/events/eventSchema.d.ts +7 -7
  95. package/dist/events/eventStore.d.ts +2 -0
  96. package/dist/events/eventStore.js +5 -1
  97. package/dist/events/ingest.d.ts +2 -1
  98. package/dist/events/ingest.js +15 -0
  99. package/dist/events/paths.d.ts +12 -10
  100. package/dist/events/paths.js +24 -20
  101. package/dist/events/public.d.ts +2 -2
  102. package/dist/events/public.js +2 -2
  103. package/dist/events/reports.d.ts +2 -0
  104. package/dist/events/reports.js +4 -0
  105. package/dist/exec/autoExec.d.ts +68 -4
  106. package/dist/exec/autoExec.js +392 -33
  107. package/dist/exec/autonomousCycle.d.ts +31 -4
  108. package/dist/exec/autonomousCycle.js +71 -13
  109. package/dist/exec/claudeBridge.d.ts +80 -15
  110. package/dist/exec/claudeBridge.js +845 -76
  111. package/dist/exec/executionBinding.d.ts +414 -0
  112. package/dist/exec/executionBinding.js +588 -0
  113. package/dist/exec/index.d.ts +1 -0
  114. package/dist/exec/index.js +1 -0
  115. package/dist/exec/openPrRegistry.d.ts +8 -2
  116. package/dist/exec/openPrRegistry.js +32 -22
  117. package/dist/exec/prompt.js +14 -1
  118. package/dist/exec/proofOfWork.d.ts +1 -1
  119. package/dist/exec/proofOfWork.js +2 -2
  120. package/dist/exec/runnerRegistry.d.ts +153 -36
  121. package/dist/exec/runnerRegistry.js +848 -65
  122. package/dist/exec/selfPr.js +1 -7
  123. package/dist/feedback/envelope.d.ts +61 -0
  124. package/dist/feedback/envelope.js +168 -0
  125. package/dist/feedback/index.d.ts +1 -0
  126. package/dist/feedback/index.js +1 -0
  127. package/dist/hooks/hooks.js +1 -0
  128. package/dist/hub/assetCallLog.d.ts +35 -1
  129. package/dist/hub/assetCallLog.js +124 -1
  130. package/dist/hub/bindings.d.ts +8 -1
  131. package/dist/hub/bindings.js +29 -8
  132. package/dist/hub/capability.d.ts +130 -4
  133. package/dist/hub/conversationDistiller.d.ts +19 -0
  134. package/dist/hub/conversationDistiller.js +115 -37
  135. package/dist/hub/fake.d.ts +3 -2
  136. package/dist/hub/fake.js +2 -1
  137. package/dist/hub/index.d.ts +1 -0
  138. package/dist/hub/index.js +1 -0
  139. package/dist/hub/questionGenerator.d.ts +5 -1
  140. package/dist/hub/questionGenerator.js +8 -6
  141. package/dist/hub/recipeCompose.d.ts +27 -0
  142. package/dist/hub/recipeCompose.js +90 -0
  143. package/dist/hub/sanitize.js +122 -7
  144. package/dist/index.d.ts +6 -1
  145. package/dist/index.js +7 -1
  146. package/dist/issueReporter/index.d.ts +156 -0
  147. package/dist/issueReporter/index.js +1688 -0
  148. package/dist/mailbox/dispatch.d.ts +1 -1
  149. package/dist/mailbox/dispatch.js +22 -6
  150. package/dist/mailbox/envelope.d.ts +7 -1
  151. package/dist/mailbox/envelope.js +9 -2
  152. package/dist/mailbox/ipcServer.d.ts +12 -2
  153. package/dist/mailbox/ipcServer.js +183 -13
  154. package/dist/mailbox/store.d.ts +89 -3
  155. package/dist/mailbox/store.js +895 -41
  156. package/dist/modelCompatibility.d.ts +164 -0
  157. package/dist/modelCompatibility.js +309 -0
  158. package/dist/observers/valueDigestObserver.d.ts +9 -0
  159. package/dist/observers/valueDigestObserver.js +35 -2
  160. package/dist/ops/cleanup.js +1 -1
  161. package/dist/ops/evolutionGraphProjection.d.ts +20 -0
  162. package/dist/ops/evolutionGraphProjection.js +315 -0
  163. package/dist/ops/index.d.ts +2 -1
  164. package/dist/ops/index.js +2 -1
  165. package/dist/ops/savingsCore.js +1 -2
  166. package/dist/ops/selfUpdate.d.ts +18 -1
  167. package/dist/ops/selfUpdate.js +88 -23
  168. package/dist/ops/valueOutreach.d.ts +3 -1
  169. package/dist/ops/valueOutreach.js +5 -1
  170. package/dist/personality/schema.d.ts +24 -24
  171. package/dist/schema/evolutionGraph.d.ts +784 -0
  172. package/dist/schema/evolutionGraph.js +187 -0
  173. package/dist/schema/index.d.ts +1 -0
  174. package/dist/schema/index.js +1 -0
  175. package/dist/schema/proofOfWork.d.ts +125 -6
  176. package/dist/schema/proofOfWork.js +102 -4
  177. package/dist/schema/signal.d.ts +3 -3
  178. package/dist/schema/signal.js +1 -1
  179. package/dist/shadow/shadowHub.js +1 -0
  180. package/dist/signals/curriculum.d.ts +55 -0
  181. package/dist/signals/curriculum.js +202 -0
  182. package/dist/signals/cycleHistoryFromEvents.js +17 -8
  183. package/dist/signals/expand.d.ts +15 -1
  184. package/dist/signals/expand.js +169 -1
  185. package/dist/signals/extractor.d.ts +2 -2
  186. package/dist/signals/extractor.js +31 -6
  187. package/dist/signals/index.d.ts +4 -1
  188. package/dist/signals/index.js +4 -1
  189. package/dist/signals/metaSignals.d.ts +4 -0
  190. package/dist/signals/metaSignals.js +42 -0
  191. package/dist/signals/scopeVocabulary.d.ts +75 -0
  192. package/dist/signals/scopeVocabulary.js +91 -0
  193. package/dist/signals/signalGate.js +1 -1
  194. package/dist/signals/taskDomain.d.ts +22 -0
  195. package/dist/signals/taskDomain.js +43 -0
  196. package/dist/strategy/constraintAblation.d.ts +64 -0
  197. package/dist/strategy/constraintAblation.js +2820 -0
  198. package/dist/strategy/constraintAblationPredicates.d.ts +31 -0
  199. package/dist/strategy/constraintAblationPredicates.js +339 -0
  200. package/dist/strategy/index.d.ts +2 -1
  201. package/dist/strategy/index.js +2 -1
  202. package/dist/trace/index.d.ts +3 -1
  203. package/dist/trace/index.js +3 -1
  204. package/dist/trace/learningTrace.d.ts +216 -0
  205. package/dist/trace/learningTrace.js +298 -0
  206. package/dist/trace/proxyTurns.d.ts +31 -0
  207. package/dist/trace/proxyTurns.js +137 -0
  208. package/dist/trace/trajectory.d.ts +8 -0
  209. package/dist/trace/trajectory.js +14 -2
  210. package/dist/util/fetchPort.d.ts +1 -0
  211. package/dist/util/fetchPort.js +11 -0
  212. package/dist/util/fileLock.d.ts +113 -7
  213. package/dist/util/fileLock.js +1035 -80
  214. package/dist/util/index.d.ts +3 -1
  215. package/dist/util/index.js +2 -1
  216. package/dist/verify/index.d.ts +2 -1
  217. package/dist/verify/index.js +1 -1
  218. package/dist/verify/sandboxRunner.d.ts +30 -0
  219. package/dist/verify/sandboxRunner.js +370 -27
  220. package/dist/verify/sandboxedValidation.d.ts +16 -2
  221. package/dist/verify/sandboxedValidation.js +200 -22
  222. package/dist/verify/validation.d.ts +35 -4
  223. package/dist/verify/validation.js +164 -16
  224. package/dist/wire/geneHints.d.ts +88 -16
  225. package/dist/wire/geneHints.js +124 -15
  226. package/dist/wire/index.d.ts +8 -3
  227. package/dist/wire/index.js +2 -2
  228. package/dist/wire/schemaGate.d.ts +21 -0
  229. package/dist/wire/schemaGate.js +119 -10
  230. package/dist/workflow/dsl.d.ts +24 -3
  231. package/dist/workflow/dsl.js +4 -0
  232. package/dist/workflow/engine.d.ts +5 -1
  233. package/dist/workflow/engine.js +3 -0
  234. package/dist/workflow/index.d.ts +3 -1
  235. package/dist/workflow/index.js +3 -1
  236. package/dist/workflow/runtime.d.ts +110 -0
  237. package/dist/workflow/runtime.js +1298 -0
  238. package/dist/workflow/stateStore.d.ts +172 -0
  239. package/dist/workflow/stateStore.js +1044 -0
  240. package/package.json +12 -4
@@ -4,37 +4,63 @@ import type { GepCategory, Mutation, Capsule, EvolutionEvent } from '../wire/ind
4
4
  import type { AssetStoreProvider } from '../assetstore/provider.js';
5
5
  import type { StrategyPoint } from '../strategy/strategyPoint.js';
6
6
  import { type CycleStage } from '../cycle/stateMachine.js';
7
- import { type GeneDecision, type SelectionInput, type GeneCandidateInput, type AntiWarning } from './geneSelection.js';
7
+ import { type GeneDecision, type SelectionInput, type GeneCandidateInput, type AntiWarning, type SelectionGuardMode } from './geneSelection.js';
8
8
  import { type EnvFingerprint } from '../bootstrap/envFingerprint.js';
9
9
  import type { PersonalityStore } from '../personality/store.js';
10
- import { type ResolutionStatus } from './solidify.js';
10
+ import { type FailureEvidenceIdentityInput, type ResolutionStatus } from './solidify.js';
11
11
  import type { ProofOfWork } from '../schema/proofOfWork.js';
12
+ import type { ExecutionTerminalDisposition, FrozenExecutionBinding, ImmutableExecutionProvenance } from '../exec/executionBinding.js';
12
13
  import { type ClassifyRecentEvent } from './cycleFailureClassifier.js';
14
+ import type { MemoryGraphGeneEvidence } from './memoryGraph.js';
15
+ import { type SelectionPolicy } from './ucb1.js';
13
16
  export interface TriggerEval {
14
17
  trigger: boolean;
15
18
  reasons: string[];
16
19
  valueScore: number;
17
20
  }
21
+ export type ExecutionFailureKind = 'spawn_failed' | 'timeout' | 'cancelled' | 'permission_denied' | 'non_zero_exit' | 'invalid_output' | 'runtime_error';
18
22
  export interface ExecutionResult {
19
23
  outcome: {
20
24
  status: 'success' | 'failed';
21
25
  score: number;
22
26
  reason?: string;
23
27
  };
28
+ bindingCorrelation?: {
29
+ bindingDigest: `sha256:${string}`;
30
+ runId: string;
31
+ };
32
+ executionTerminal?: {
33
+ status: 'success' | 'failed';
34
+ disposition: ExecutionTerminalDisposition;
35
+ };
36
+ provenance?: ImmutableExecutionProvenance;
37
+ hubLifecycle?: {
38
+ state: 'not_submitted';
39
+ };
40
+ nativeSessionId?: string;
24
41
  proofOfWork?: ProofOfWork;
25
42
  strongEvidence?: boolean;
43
+ /** Optional logical failure identity supplied by the runner; absent keeps the failure as legacy advisory evidence. */
44
+ failureIdentity?: FailureEvidenceIdentityInput;
45
+ /** Structured runner failure metadata. Safe to persist; unlike sessionLog it contains no transcript text. */
46
+ failureKind?: ExecutionFailureKind;
47
+ exitCode?: number | null;
26
48
  /**
27
49
  * The agent run's transcript (stdout, plus stderr when present), attached by the execution layer on a FAILED
28
50
  * outcome. It is the host-side context classifyCycleFailure needs to reach the host_no_transcript /
29
51
  * host_provider_error buckets on the PRODUCTION path (#279): an empty transcript means the host gave evolver
30
52
  * nothing to evolve from; a provider-error string (429 / quota / context-length) means the host's LLM call
31
- * failed, not the gene. Consumed only for failure triage and NEVER persisted to event payloads (the engine
32
- * writes only the derived failure_class), so it adds no root_events bloat and leaks no transcript content.
53
+ * failed, not the gene. Consumed only for failure triage and NEVER persisted to event payloads; the engine
54
+ * writes only the derived failure_class, so it adds no root_events bloat and leaks no transcript content.
33
55
  */
34
56
  sessionLog?: string;
35
57
  }
36
58
  export interface SolidifyPermitContext {
37
59
  cycleId: string;
60
+ bindingDigest?: `sha256:${string}`;
61
+ runId?: string;
62
+ executionTerminal?: ExecutionResult['executionTerminal'];
63
+ provenance?: ImmutableExecutionProvenance;
38
64
  geneId: string;
39
65
  signals: readonly string[];
40
66
  mutation: Mutation;
@@ -61,6 +87,8 @@ export interface CycleEngineDeps {
61
87
  rng?: () => number;
62
88
  /** Injected environment fingerprint (deterministic tests). Defaults to capturing the real runtime env. */
63
89
  envFingerprint?: () => EnvFingerprint;
90
+ /** Latest external capability gaps. Composition owns persistence/wire details; core reads one bounded snapshot. */
91
+ capabilityGaps?: () => readonly string[];
64
92
  /** 触发评估(常注入 TriggerEngine.evaluate 的包装; 缺省=直接触发). */
65
93
  trigger?: (p: ProblemPattern, now: number) => Promise<TriggerEval> | TriggerEval;
66
94
  /** 可进化人格(可选). 注入后, 每轮:
@@ -77,10 +105,20 @@ export interface CycleInput {
77
105
  cycleId: string;
78
106
  problem: ProblemPattern;
79
107
  signals: readonly string[];
108
+ /** Curriculum targets already prepared before candidate assembly. Omit for direct runCycle callers. */
109
+ curriculumSignals?: readonly string[];
80
110
  category: GepCategory;
81
111
  /** Optional explicit strategy preset name; when set, it wins over history-derived meta-signal auto-detection. */
82
112
  strategyName?: string;
83
113
  candidates: readonly GeneCandidateInput[];
114
+ /** Trust-filtered library corpus captured before relevance admission for stable semantic IDF. */
115
+ semanticCorpus?: readonly GeneCandidateInput[];
116
+ /** Emergency rollback: use the pre-IDF semantic scorer for this cycle. */
117
+ disableSemanticIdf?: boolean;
118
+ /** Experimental plateau selection policy. Default preserves engine-health + legacy random drift. */
119
+ selectionPolicy?: SelectionPolicy;
120
+ /** Versioned relevance-guard rollout. Omit for legacy direct-call behavior. */
121
+ selectionGuard?: SelectionGuardMode;
84
122
  selectionFloor?: number;
85
123
  /**
86
124
  * Explicit GEP/runtime-selected gene. Forwarded after candidate assembly and local hard filters, so it cannot
@@ -92,16 +130,20 @@ export interface CycleInput {
92
130
  summary: string;
93
131
  confidence: number;
94
132
  execute: (mutation: Mutation, decision: GeneDecision) => Promise<ExecutionResult> | ExecutionResult;
133
+ /** Immutable external execution binding; omitted for legacy local cycles. */
134
+ executionBinding?: FrozenExecutionBinding;
95
135
  /** Optional adapter/runtime permit gate. Runs after execute succeeds and before solidify writes assets. */
96
136
  solidifyPermit?: SolidifyPermitGate;
97
137
  /**
98
138
  * Distilled-gene fallback pool (ported from v1 #97): broadly-applicable distilled genes that do NOT match the
99
139
  * live signals, assembled (trust/review/ban-filtered) upstream. Forwarded to selection, which uses one only as a
100
- * last resort when no candidate clears the floor — reusing a known distilled strategy instead of a blind innovate.
140
+ * last resort when normal selection has no reusable positive choice — reusing a known distilled strategy instead of a blind innovate.
101
141
  */
102
142
  distilledFallback?: readonly GeneCandidateInput[];
103
143
  /** Advisory-only AntiGene warnings matched upstream for this cycle's base signals. */
104
144
  antiWarnings?: readonly AntiWarning[];
145
+ /** Bounded structured outcome evidence for explainability and prompt enrichment. */
146
+ memoryEvidence?: readonly MemoryGraphGeneEvidence[];
105
147
  /**
106
148
  * Optional triage context for the cycle.failed event (PORT v1 #279 issue-reporter half). When the caller can
107
149
  * supply a session transcript or a list of recent failed cycles, classifyCycleFailure runs and the resulting
@@ -123,13 +165,21 @@ export interface CycleInput {
123
165
  }
124
166
  export interface CycleResult {
125
167
  cycleId: string;
168
+ bindingDigest?: `sha256:${string}`;
169
+ runId?: string;
170
+ terminalDisposition?: ExecutionTerminalDisposition;
171
+ execution?: ExecutionResult;
126
172
  triggered: boolean;
127
173
  finalStage: CycleStage;
174
+ /** Real CycleEngine returns this on every path; optional keeps injected legacy engines source-compatible. */
175
+ producedValue?: boolean;
128
176
  decision?: GeneDecision;
129
177
  mutation?: Mutation;
130
178
  capsule?: Capsule;
131
179
  event?: EvolutionEvent;
132
180
  resolutionStatus?: ResolutionStatus;
181
+ failureKind?: ExecutionFailureKind;
182
+ exitCode?: number | null;
133
183
  reasons: string[];
134
184
  }
135
185
  /**
@@ -139,5 +189,13 @@ export interface CycleResult {
139
189
  export declare class CycleEngine {
140
190
  private readonly deps;
141
191
  constructor(deps: CycleEngineDeps);
192
+ /**
193
+ * Add V1-compatible curriculum targets from V2's replayable event history. Public so the orchestrator can run
194
+ * it before candidate assembly; runCycle calls it again for direct callers. Set merging makes that idempotent.
195
+ */
196
+ prepareCurriculumSignals(signals: readonly string[]): {
197
+ signals: string[];
198
+ curriculumSignals: string[];
199
+ };
142
200
  runCycle(input: CycleInput): Promise<CycleResult>;
143
201
  }