darwin-agents 0.9.0 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/CHANGELOG.md +105 -0
  2. package/README.md +87 -0
  3. package/dist/src/cli/evolution-flags.d.ts +4 -0
  4. package/dist/src/cli/evolution-flags.d.ts.map +1 -1
  5. package/dist/src/cli/evolution-flags.js +69 -1
  6. package/dist/src/cli/evolution-flags.js.map +1 -1
  7. package/dist/src/cli/evolve.d.ts +4 -0
  8. package/dist/src/cli/evolve.d.ts.map +1 -1
  9. package/dist/src/cli/evolve.js +21 -0
  10. package/dist/src/cli/evolve.js.map +1 -1
  11. package/dist/src/cli/index.js +2 -0
  12. package/dist/src/cli/index.js.map +1 -1
  13. package/dist/src/evolution/demos.d.ts +128 -0
  14. package/dist/src/evolution/demos.d.ts.map +1 -0
  15. package/dist/src/evolution/demos.js +196 -0
  16. package/dist/src/evolution/demos.js.map +1 -0
  17. package/dist/src/evolution/enabled-state.d.ts +5 -5
  18. package/dist/src/evolution/enabled-state.d.ts.map +1 -1
  19. package/dist/src/evolution/enabled-state.js +17 -5
  20. package/dist/src/evolution/enabled-state.js.map +1 -1
  21. package/dist/src/evolution/feedback-filter.d.ts +54 -0
  22. package/dist/src/evolution/feedback-filter.d.ts.map +1 -0
  23. package/dist/src/evolution/feedback-filter.js +65 -0
  24. package/dist/src/evolution/feedback-filter.js.map +1 -0
  25. package/dist/src/evolution/loop.d.ts +70 -0
  26. package/dist/src/evolution/loop.d.ts.map +1 -1
  27. package/dist/src/evolution/loop.js +198 -20
  28. package/dist/src/evolution/loop.js.map +1 -1
  29. package/dist/src/evolution/selection.d.ts +73 -0
  30. package/dist/src/evolution/selection.d.ts.map +1 -0
  31. package/dist/src/evolution/selection.js +121 -0
  32. package/dist/src/evolution/selection.js.map +1 -0
  33. package/dist/src/index.d.ts +3 -0
  34. package/dist/src/index.d.ts.map +1 -1
  35. package/dist/src/index.js +15 -0
  36. package/dist/src/index.js.map +1 -1
  37. package/dist/src/types.d.ts +132 -6
  38. package/dist/src/types.d.ts.map +1 -1
  39. package/dist/src/types.js.map +1 -1
  40. package/package.json +4 -1
@@ -0,0 +1,121 @@
1
+ /**
2
+ * Parent-selection strategies (v0.10.0) — GEPA `candidate_selection_strategy`
3
+ * parity for the online evolution loop.
4
+ *
5
+ * Upstream GEPA exposes three strategies for picking WHICH candidate to
6
+ * mutate next: sample from the Pareto frontier (default), always take the
7
+ * current best, or epsilon-greedy explore/exploit. Darwin's online loop
8
+ * historically always reflected from the currently-ACTIVE prompt (plus the
9
+ * opt-in v0.7 coverage selection). This module adds the missing strategies as
10
+ * a pure, injectable-RNG helper:
11
+ *
12
+ * - `"active"` — loop default, reflect from the active prompt
13
+ * (handled by the caller; this helper returns null).
14
+ * - `"best"` — GEPA `current_best`: highest scalarised composite
15
+ * over the version history.
16
+ * - `"pareto"` — GEPA default: uniform sample from the non-dominated
17
+ * front of the version history.
18
+ * - `"epsilon-greedy"`— with probability ε pick a uniformly-random version
19
+ * (explore), otherwise the best (exploit).
20
+ *
21
+ * Why it matters: always mutating the active prompt is a hill-climb that can
22
+ * get stuck on a local optimum. Sampling parents from the Pareto front keeps
23
+ * lineages alive that win on DIFFERENT objectives, and epsilon-greedy buys
24
+ * cheap exploration — both directly per the GEPA paper's selection ablation.
25
+ *
26
+ * Purity: no I/O, no LLM calls, deterministic given the same `rng`. The RNG
27
+ * is injected (default `Math.random`) so tests pin outcomes exactly — same
28
+ * pattern as `sampleByCoverage` (v0.7.0).
29
+ */
30
+ import { DARWIN_DEFAULT_OBJECTIVES, nonDominatedFront, scalarise, } from "./pareto.js";
31
+ export const DEFAULT_EXPLORATION_EPSILON = 0.1;
32
+ const DEFAULT_OBJECTIVES = DARWIN_DEFAULT_OBJECTIVES;
33
+ // ─── Internals ──────────────────────────────────────────────────────────────
34
+ /** Clamp epsilon to [0, 1]; NaN/Infinity → default (never bypasses the clamp). */
35
+ function resolveEpsilon(value) {
36
+ if (typeof value !== "number" || !Number.isFinite(value))
37
+ return DEFAULT_EXPLORATION_EPSILON;
38
+ return Math.min(1, Math.max(0, value));
39
+ }
40
+ /**
41
+ * Uniform index pick; clamps a pathological rng (>1 / <0 / NaN) into range —
42
+ * same defensive posture as `sampleByCoverage` (pareto.ts), so a
43
+ * non-conforming injected RNG degrades to index 0 instead of throwing or
44
+ * returning `undefined`.
45
+ */
46
+ function pickIndex(length, rng) {
47
+ const value = rng();
48
+ if (!Number.isFinite(value))
49
+ return 0;
50
+ const raw = Math.floor(value * length);
51
+ return Math.min(length - 1, Math.max(0, raw));
52
+ }
53
+ /**
54
+ * Flatten variants to `{ ...metrics, __index }` so dominance/scalarisation
55
+ * run on plain records and the winner maps back by INDEX — never by
56
+ * metrics-object reference identity, which silently drops variants that
57
+ * share one metrics object (documented v0.5.0 R2-M1 failure mode).
58
+ */
59
+ function flatten(variants) {
60
+ return variants.map((v, i) => ({ ...v.metrics, __index: i }));
61
+ }
62
+ function bestIndex(flat, objectives) {
63
+ let winner = 0;
64
+ let winnerScore = Number.NEGATIVE_INFINITY;
65
+ for (let i = 0; i < flat.length; i++) {
66
+ const score = scalarise(flat[i], objectives);
67
+ if (score > winnerScore) {
68
+ winnerScore = score;
69
+ winner = i;
70
+ }
71
+ }
72
+ return winner;
73
+ }
74
+ // ─── Public API ─────────────────────────────────────────────────────────────
75
+ /**
76
+ * Pick the parent variant the next challenger should be derived from.
77
+ *
78
+ * Returns `null` when the strategy is `"active"` (caller keeps the active
79
+ * prompt — the historical default path) or when `variants` is empty. A
80
+ * single-element list short-circuits to that element for every non-active
81
+ * strategy.
82
+ */
83
+ export function selectParentVariant(variants, strategy, options = {}) {
84
+ if (strategy === "active")
85
+ return null;
86
+ if (variants.length === 0)
87
+ return null;
88
+ if (variants.length === 1)
89
+ return variants[0];
90
+ const objectives = options.objectives ?? DEFAULT_OBJECTIVES;
91
+ const rng = options.rng ?? Math.random;
92
+ const flat = flatten(variants);
93
+ switch (strategy) {
94
+ case "best": {
95
+ return variants[bestIndex(flat, objectives)];
96
+ }
97
+ case "pareto": {
98
+ const front = nonDominatedFront(flat, objectives);
99
+ // Defensive: an all-non-finite history yields an empty comparable set —
100
+ // nonDominatedFront keeps everything then, so front is never empty here,
101
+ // but guard anyway rather than index into a hole.
102
+ if (front.length === 0)
103
+ return null;
104
+ const pick = front[pickIndex(front.length, rng)];
105
+ return variants[pick["__index"]];
106
+ }
107
+ case "epsilon-greedy": {
108
+ const epsilon = resolveEpsilon(options.epsilon);
109
+ if (rng() < epsilon) {
110
+ return variants[pickIndex(variants.length, rng)]; // explore
111
+ }
112
+ return variants[bestIndex(flat, objectives)]; // exploit
113
+ }
114
+ default: {
115
+ // Unknown strategy string (e.g. from a hand-edited config file):
116
+ // behave like "active" rather than throwing mid-evolution-cycle.
117
+ return null;
118
+ }
119
+ }
120
+ }
121
+ //# sourceMappingURL=selection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selection.js","sourceRoot":"","sources":["../../../src/evolution/selection.ts"],"names":[],"mappings":"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"}
@@ -40,4 +40,7 @@ export { parseCriticScore, type ParsedCriticScore } from './evolution/parse-scor
40
40
  export { runMultiCritic, stripMarkdownForJudging, getCriticPrompts, type RunCriticFn, type RunMultiCriticOptions, type CriticPromptDef, type CriticScore, type MultiCriticResult, } from './evolution/multi-critic.js';
41
41
  export { meanVar, msprtTwoSample, hoeffdingTwoSample, type ConfidenceMethod, type SequentialVerdict, type MeanVar, type MsprtOptions, type HoeffdingOptions, } from './evolution/sequential.js';
42
42
  export { toolSequence, toolSet, jaccard, sequenceSimilarity, errorRate, compareTrajectory, evaluateCanary, runCanaryOverExperiments, type CanaryThresholds, type TrajectoryComparison, type CanaryOptions, type CanaryResult, type CanaryStatus, type CanaryReport, type RunCanaryOptions, } from './evolution/canary.js';
43
+ export { selectDemoCandidates, buildDemoSection, applyDemoSection, stripDemoSection, DEMO_SECTION_START, DEMO_SECTION_END, DEFAULT_MAX_DEMOS, DEFAULT_DEMO_SCORE_THRESHOLD, DEFAULT_DEMO_MIN_OUTPUT_CHARS, DEFAULT_DEMO_TASK_CHARS, DEFAULT_DEMO_OUTPUT_CHARS, type DemoCandidate, type DemoSelectionOptions, type DemoRenderOptions, } from './evolution/demos.js';
44
+ export { selectParentVariant, DEFAULT_EXPLORATION_EPSILON, type CandidateSelectionStrategy, type SelectableVariant, type ParentSelectionOptions, } from './evolution/selection.js';
45
+ export { isPerfectScore, resolvePerfectFeedbackScore, filterPerfectFeedback, DEFAULT_PERFECT_FEEDBACK_SCORE, } from './evolution/feedback-filter.js';
43
46
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/dist/src/index.js CHANGED
@@ -61,4 +61,19 @@ export { meanVar, msprtTwoSample, hoeffdingTwoSample, } from './evolution/sequen
61
61
  // drift the A/B quality gate misses. Exported so consumers can run the same
62
62
  // drift check on their own captured trajectories.
63
63
  export { toolSequence, toolSet, jaccard, sequenceSimilarity, errorRate, compareTrajectory, evaluateCanary, runCanaryOverExperiments, } from './evolution/canary.js';
64
+ // V0.10.0 — SIMBA-style demo injection (DSPy SIMBA "append_a_demo", adapted
65
+ // to the online loop). Pure selection + rendering over the agent's own
66
+ // highest-scoring past runs; the demo-augmented prompt is a normal challenger
67
+ // (alignment guard + A/B test + safety gate). Zero LLM cost.
68
+ export { selectDemoCandidates, buildDemoSection, applyDemoSection, stripDemoSection, DEMO_SECTION_START, DEMO_SECTION_END, DEFAULT_MAX_DEMOS, DEFAULT_DEMO_SCORE_THRESHOLD, DEFAULT_DEMO_MIN_OUTPUT_CHARS, DEFAULT_DEMO_TASK_CHARS, DEFAULT_DEMO_OUTPUT_CHARS, } from './evolution/demos.js';
69
+ // V0.10.0 — GEPA candidate_selection_strategy parity for the online loop:
70
+ // pick the reflection parent from the scored version history ('best' |
71
+ // 'pareto' | 'epsilon-greedy') instead of always mutating the active prompt.
72
+ // Injectable RNG for deterministic tests.
73
+ export { selectParentVariant, DEFAULT_EXPLORATION_EPSILON, } from './evolution/selection.js';
74
+ // V0.11.0 — perfect-score feedback filtering (adapted from GEPA's
75
+ // `skip_perfect_score`): drop already-perfect runs from the optimizer /
76
+ // reflector feedback so it focuses on runs with an actual improvement gradient.
77
+ // Pure + generic over `{ score }`.
78
+ export { isPerfectScore, resolvePerfectFeedbackScore, filterPerfectFeedback, DEFAULT_PERFECT_FEEDBACK_SCORE, } from './evolution/feedback-filter.js';
64
79
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,WAAW;AACX,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACxF,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,8DAA8D;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AA4B7D,YAAY;AACZ,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE7D,kBAAkB;AAClB,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvF,YAAY;AACZ,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAE9D,SAAS;AACT,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAE/F,gBAAgB;AAChB,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAGtE,sEAAsE;AACtE,mGAAmG;AACnG,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,yBAAyB,GAK1B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,SAAS,GAGV,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,aAAa,EACb,sBAAsB,GAMvB,MAAM,+BAA+B,CAAC;AAEvC,uEAAuE;AACvE,2EAA2E;AAC3E,4EAA4E;AAC5E,mBAAmB;AACnB,OAAO,EACL,0BAA0B,EAC1B,kCAAkC,EAClC,eAAe,GAGhB,MAAM,0BAA0B,CAAC;AAElC,yEAAyE;AACzE,yEAAyE;AACzE,8EAA8E;AAC9E,OAAO,EAAE,gBAAgB,EAA0B,MAAM,4BAA4B,CAAC;AAEtF,gFAAgF;AAChF,OAAO,EACL,cAAc,EACd,uBAAuB,EACvB,gBAAgB,GAMjB,MAAM,6BAA6B,CAAC;AAErC,yEAAyE;AACzE,yEAAyE;AACzE,2EAA2E;AAC3E,6BAA6B;AAC7B,OAAO,EACL,OAAO,EACP,cAAc,EACd,kBAAkB,GAMnB,MAAM,2BAA2B,CAAC;AAEnC,4EAA4E;AAC5E,4EAA4E;AAC5E,8EAA8E;AAC9E,4EAA4E;AAC5E,kDAAkD;AAClD,OAAO,EACL,YAAY,EACZ,OAAO,EACP,OAAO,EACP,kBAAkB,EAClB,SAAS,EACT,iBAAiB,EACjB,cAAc,EACd,wBAAwB,GAQzB,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -152,6 +152,116 @@ export interface EvolutionConfig {
152
152
  * the single-challenger reflective path is unchanged.
153
153
  */
154
154
  useCoverage?: boolean;
155
+ /**
156
+ * v0.10.0 — Strategy for picking WHICH prompt version the next challenger
157
+ * is derived from (GEPA `candidate_selection_strategy` parity). Only
158
+ * consulted when `useGepa` is `true` AND a `GepaOptimizer` is wired in:
159
+ *
160
+ * - `'active'` (default): reflect from the currently-active prompt —
161
+ * byte-for-byte the historical behaviour.
162
+ * - `'best'`: reflect from the highest scalarised-composite version in
163
+ * the history (GEPA `current_best`).
164
+ * - `'pareto'`: reflect from a uniformly-sampled member of the version
165
+ * history's Pareto front (GEPA default) — keeps lineages alive that
166
+ * win on different objectives instead of hill-climbing one line.
167
+ * - `'epsilon-greedy'`: with probability {@link explorationEpsilon} pick
168
+ * a random version (explore), otherwise the best (exploit).
169
+ *
170
+ * Precedence: `useCoverage` (GEPA Algorithm 2, the more specific
171
+ * selector) wins when it finds a coverage parent; `candidateSelection`
172
+ * is the fallback selector for that cycle. Versions without any run
173
+ * metrics are never candidates. Default `'active'`.
174
+ */
175
+ candidateSelection?: 'active' | 'best' | 'pareto' | 'epsilon-greedy';
176
+ /**
177
+ * v0.10.0 — Exploration probability for
178
+ * `candidateSelection: 'epsilon-greedy'` (clamped to [0, 1], non-finite
179
+ * → default). Default `0.1`.
180
+ */
181
+ explorationEpsilon?: number;
182
+ /**
183
+ * v0.10.0 — Opt into SIMBA-style DEMO INJECTION as a challenger source.
184
+ * On every {@link demoEveryK}-th evolution cycle, instead of an LLM
185
+ * mutation the loop appends (or refreshes) a marker-delimited
186
+ * "Demonstrations" section built from the agent's own highest-scoring
187
+ * past runs (DSPy SIMBA's `append_a_demo` strategy, adapted to the
188
+ * online loop). The demo-augmented prompt is a normal challenger: same
189
+ * alignment guard, same A/B test, same safety gate — if demos don't
190
+ * help, the incumbent wins. Zero LLM cost (pure selection + rendering).
191
+ *
192
+ * Works WITHOUT `useGepa` (no reflector involved). When both `useDemos`
193
+ * and `useMerge` would fire on the same cycle, demos win — staggering
194
+ * `demoEveryK` / `mergeEveryK` (e.g. 4 / 3) reduces the overlap to the
195
+ * LCM cycles (every 12th with 4/3), where the demos-win precedence
196
+ * resolves the collision. Default `false`.
197
+ */
198
+ useDemos?: boolean;
199
+ /**
200
+ * v0.10.0 — Demo-injection cadence: attempt a demo challenger on every
201
+ * K-th evolution cycle (cycle index = active prompt version integer).
202
+ * Only consulted when `useDemos` is `true`. Default 4, clamped ≥ 1.
203
+ */
204
+ demoEveryK?: number;
205
+ /**
206
+ * v0.10.0 — Maximum demonstrations to inject (default 2). Kept
207
+ * deliberately below SIMBA's per-predictor 4 because the online loop
208
+ * appends demos to one system prompt and prompt length correlates
209
+ * negatively with reliability (documented v2-prompt incident).
210
+ */
211
+ maxDemos?: number;
212
+ /**
213
+ * v0.10.0 — Minimum critic score (1-10) for a past run to qualify as a
214
+ * demonstration. Default 8 — mirrors the closed-loop feedback convention
215
+ * where ≥ 8 marks a high-quality pattern.
216
+ */
217
+ demoScoreThreshold?: number;
218
+ /**
219
+ * v0.11.0 — Skip already-PERFECT past runs when assembling the critic
220
+ * feedback the optimizer / GEPA reflector learns from. Adapted from GEPA's
221
+ * `skip_perfect_score`: upstream skips the whole reflection iteration when an
222
+ * entire sampled minibatch is perfect; Darwin generalizes it to per-report
223
+ * filtering because the critic scores on real runs are already paid for (no
224
+ * eval-budget reason to keep "nothing to fix" reports in the pool). A run
225
+ * scored at or above {@link perfectFeedbackScore} carries no improvement
226
+ * gradient, so dropping it concentrates the feedback on runs that went wrong.
227
+ * When `true`, such reports are dropped from BOTH the reflective feedback and
228
+ * the legacy optimizer feedback. If EVERY recent report is perfect the filter
229
+ * yields an empty feedback set — the reflective path then falls back to the
230
+ * legacy stats optimizer and the legacy path proceeds on aggregate stats as
231
+ * it did before feedback reports existed (so the loop keeps exploring; it
232
+ * does not, like upstream, leave a perfect candidate untouched). Default
233
+ * `false` — every report is included, byte-for-byte the historical behaviour.
234
+ */
235
+ skipPerfectFeedback?: boolean;
236
+ /**
237
+ * v0.11.0 — Critic score (1-10) at or above which a run counts as PERFECT
238
+ * for {@link skipPerfectFeedback}. Only consulted when `skipPerfectFeedback`
239
+ * is `true`. Default 10 (only a literal top score is skipped); lower it
240
+ * (e.g. 9) to also skip near-perfect runs. Non-finite / out-of-range values
241
+ * fall back to the default.
242
+ */
243
+ perfectFeedbackScore?: number;
244
+ /**
245
+ * v0.11.0 — Lifetime cap on how many merge-derived challengers this agent
246
+ * may produce. Adapted from GEPA's `max_merge_invocations` (default 5
247
+ * upstream, per-`optimize()`-run); Darwin mirrors the value but makes the cap
248
+ * a per-agent LIFETIME budget persisted in {@link
249
+ * DarwinState.mergeInvocations}, because a process-scoped counter would reset
250
+ * every cron tick and never trigger. Only consulted when `useMerge` is
251
+ * `true`. The GEPA paper leaves merge-budget allocation as open research; the
252
+ * reason Darwin needs a cap is its own: an uncapped `mergeEveryK` cadence
253
+ * would merge forever, so late in an agent's life merges would crowd out the
254
+ * reflective exploration that finds genuinely new strategies. Once the cap is
255
+ * reached the merge branch is skipped and the loop falls back to the
256
+ * reflective path for the rest of the agent's life (unlike upstream, the
257
+ * budget does not re-arm — a future `--reset`-clears-it option is a candidate).
258
+ * The count is the number of merge challengers actually CREATED (a merge that
259
+ * failed the alignment guard is not counted — it consumed no A/B slot), and
260
+ * it is written ONLY when a cap is set, so an uncapped `useMerge` agent's
261
+ * state is unchanged from v0.10. Default `undefined` — uncapped, byte-for-byte
262
+ * the v0.10 behaviour; set it to 5 to match GEPA's protective default.
263
+ */
264
+ maxMergeInvocations?: number;
155
265
  }
156
266
  export interface McpServerConfig {
157
267
  command: string;
@@ -388,6 +498,13 @@ export interface DarwinState {
388
498
  consecutiveFailures: Record<string, number>;
389
499
  /** Total experiment count per agent */
390
500
  experimentCounts: Record<string, number>;
501
+ /**
502
+ * v0.11.0 — Lifetime count of merge-derived challengers created per agent,
503
+ * used to enforce {@link EvolutionConfig.maxMergeInvocations} (GEPA's
504
+ * `max_merge_invocations`). Optional + read defensively (`?? 0`): state
505
+ * rows written before this field existed simply lack the key.
506
+ */
507
+ mergeInvocations?: Record<string, number>;
391
508
  /**
392
509
  * Persisted enable/disable override per agent, set by `darwin evolve
393
510
  * <agent> --enable|--disable`. When an entry exists it WINS over the
@@ -398,12 +515,13 @@ export interface DarwinState {
398
515
  */
399
516
  evolutionEnabled?: Record<string, boolean>;
400
517
  /**
401
- * Persisted overrides for the advanced evolution-config flags
402
- * (`useGepa` / `useMerge` / `paretoGate` / `useCoverage` /
403
- * `reflectionModel`), set by `darwin evolve <agent> --gepa|--merge|…`. Merged
404
- * OVER the agent definition's static `evolution` block when resolving the
405
- * effective config, so these knobs are reachable from the CLI and survive
406
- * process exit. Optional + read defensively (older state rows lack it).
518
+ * Persisted overrides for the advanced evolution-config flags (the keys in
519
+ * `OVERRIDE_KEYS`, enabled-state.ts kept as the single list so this comment
520
+ * never drifts as new flags are added), set by `darwin evolve <agent>
521
+ * --gepa|--merge|…`. Merged OVER the agent definition's static `evolution`
522
+ * block when resolving the effective config, so these knobs are reachable
523
+ * from the CLI and survive process exit. Optional + read defensively (older
524
+ * state rows lack it).
407
525
  */
408
526
  evolutionConfigOverrides?: Record<string, EvolutionConfigOverride>;
409
527
  }
@@ -420,6 +538,14 @@ export interface EvolutionConfigOverride {
420
538
  paretoGate?: boolean;
421
539
  useCoverage?: boolean;
422
540
  reflectionModel?: string;
541
+ /** v0.10.0 — SIMBA-style demo injection (`--demos` / `--no-demos`). */
542
+ useDemos?: boolean;
543
+ /** v0.10.0 — parent-selection strategy (`--candidate-selection <s>`). */
544
+ candidateSelection?: 'active' | 'best' | 'pareto' | 'epsilon-greedy';
545
+ /** v0.11.0 — skip perfect-score feedback (`--skip-perfect` / `--no-skip-perfect`). */
546
+ skipPerfectFeedback?: boolean;
547
+ /** v0.11.0 — lifetime merge cap (`--max-merge <n>`). */
548
+ maxMergeInvocations?: number;
423
549
  }
424
550
  export interface DarwinPattern {
425
551
  description: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,WAAW,eAAe;IAC9B,+CAA+C;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb,sCAAsC;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,2BAA2B;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,sDAAsD;IACtD,YAAY,EAAE,MAAM,CAAC;IACrB,mCAAmC;IACnC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,uDAAuD;IACvD,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,qCAAqC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,uBAAuB;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kEAAkE;IAClE,IAAI,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;IACxB,qDAAqD;IACrD,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,kBAAkB,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACxE,uCAAuC;IACvC,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,cAAc,CAAC;IACvB,MAAM,EAAE,YAAY,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,sCAAsC;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,oDAAoD;IACpD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4BAA4B;IAC5B,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB;;;;;;OAMG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,6CAA6C;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iGAAiG;IACjG,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;OAKG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;;OAOG;IACH,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;;;;;;;;;;;;OAmBG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;;;;;;OAUG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;;;;;;OAWG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;;;;;;;;;;;;;;;OAmBG;IACH,kBAAkB,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,gBAAgB,CAAC;IACrE;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;;;;;;;;;;;;;OAgBG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;;;OAMG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B;;;;;;;;;;;;;;;;;;;OAmBG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAID,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED,MAAM,WAAW,YAAY;IAC3B,mBAAmB;IACnB,QAAQ,EAAE,YAAY,GAAG,eAAe,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC/D,qBAAqB;IACrB,MAAM,EAAE,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAC;IACzC,+DAA+D;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yDAAyD;IACzD,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,gCAAgC;IAChC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IACtC,gCAAgC;IAChC,SAAS,CAAC,EAAE;QACV,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,UAAU,CAAC,EAAE,OAAO,CAAC;KACtB,CAAC;IACF,0CAA0C;IAC1C,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAID,MAAM,WAAW,aAAa;IAC5B,0CAA0C;IAC1C,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,8BAA8B;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,iCAAiC;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,yBAAyB;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,+BAA+B;IAC/B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,gDAAgD;IAChD,EAAE,EAAE,MAAM,CAAC;IACX,iBAAiB;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,0BAA0B;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,qBAAqB;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,oDAAoD;IACpD,QAAQ,EAAE,MAAM,CAAC;IACjB,6BAA6B;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,kCAAkC;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,+CAA+C;IAC/C,OAAO,EAAE,OAAO,CAAC;IACjB,uBAAuB;IACvB,OAAO,EAAE,aAAa,CAAC;IACvB,sBAAsB;IACtB,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAC9B,uBAAuB;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,cAAc,CAAC;CAC7B;AAID;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,eAAe;IAC9B,4EAA4E;IAC5E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gFAAgF;IAChF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,2GAA2G;IAC3G,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,yFAAyF;IACzF,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,aAAa;IAC5B;;;;;OAKG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kEAAkE;IAClE,IAAI,EAAE,MAAM,CAAC;IACb,qEAAqE;IACrE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,gFAAgF;IAChF,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,qCAAqC;IACrC,OAAO,EAAE,SAAS,GAAG,OAAO,CAAC;IAC7B,0CAA0C;IAC1C,UAAU,EAAE,MAAM,CAAC;IACnB,yDAAyD;IACzD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4FAA4F;IAC5F,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iFAAiF;IACjF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,sDAAsD;IACtD,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,2EAA2E;IAC3E,KAAK,EAAE,MAAM,CAAC;IACd,2CAA2C;IAC3C,OAAO,EAAE,MAAM,CAAC;IAChB,mCAAmC;IACnC,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,cAAc;IAC7B,mEAAmE;IACnE,OAAO,EAAE,CAAC,CAAC;IACX,mDAAmD;IACnD,SAAS,EAAE,aAAa,EAAE,CAAC;IAC3B;;;;;;;;OAQG;IACH,cAAc,EAAE,MAAM,CAAC;IACvB,0CAA0C;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,kFAAkF;IAClF,cAAc,EAAE,MAAM,CAAC;IACvB,8FAA8F;IAC9F,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB;;;;OAIG;IACH,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,wDAAwD;IACxD,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,0BAA0B;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,yBAAyB;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,2CAA2C;IAC3C,SAAS,EAAE,MAAM,CAAC;CACnB;AAID,MAAM,WAAW,aAAa;IAC5B,sCAAsC;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,2BAA2B;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,gCAAgC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,wCAAwC;IACxC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,mCAAmC;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,yCAAyC;IACzC,MAAM,EAAE,OAAO,CAAC;IAChB,uBAAuB;IACvB,KAAK,EAAE,kBAAkB,CAAC;CAC3B;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;CACxB;AAID,MAAM,WAAW,MAAM;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,sEAAsE;IACtE,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,sCAAsC;IACtC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,gCAAgC;IAChC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;IACvC,wCAAwC;IACxC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,0CAA0C;IAC1C,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5C,uCAAuC;IACvC,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C;;;;;;;OAOG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3C;;;;;;;;OAQG;IACH,wBAAwB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC;CACpE;AAED;;;;;;GAMG;AACH,MAAM,WAAW,uBAAuB;IACtC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uEAAuE;IACvE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,yEAAyE;IACzE,kBAAkB,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,gBAAgB,CAAC;IACrE,sFAAsF;IACtF,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,wDAAwD;IACxD,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAID,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,UAAU,GAAG,UAAU,GAAG,OAAO,GAAG,SAAS,CAAC;IACpD,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAID,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,eAAe,EAAE,aAM7B,CAAC;AAIF,MAAM,WAAW,gBAAgB;IAC/B,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,wBAAwB,EAAE,MAAM,CAAC;IACjC;;;;;;;;;;;;;;;;;;OAkBG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;;;;;;;;;;;;;;;OAiBG;IACH,gBAAgB,CAAC,EAAE,aAAa,GAAG,OAAO,GAAG,WAAW,CAAC;IACzD,6EAA6E;IAC7E,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;+CAC2C;IAC3C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,4EAA4E;IAC5E,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,uFAAuF;IACvF,oBAAoB,CAAC,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClD;AAED,eAAO,MAAM,cAAc,EAAE,gBAI5B,CAAC;AAIF,MAAM,WAAW,cAAc;IAE7B;;;;;;;;;;;;;;;;OAgBG;IACH,cAAc,CAAC,GAAG,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAChF,iBAAiB,CAAC,EAAE,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;IAClE,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IAClE,YAAY,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IACpE,QAAQ,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;IACjC,SAAS,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7C,wEAAwE;IACxE,WAAW,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAG3E,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAID,MAAM,WAAW,QAAQ;IACvB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,cAAc,CAAC;IAC7D,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAID,MAAM,WAAW,SAAS;IACxB,UAAU,EAAE,gBAAgB,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE;QACV,aAAa,EAAE,aAAa,EAAE,CAAC;QAC/B,aAAa,EAAE,OAAO,CAAC;QACvB,aAAa,EAAE,OAAO,CAAC;QACvB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;CACH"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAqdH,MAAM,CAAC,MAAM,eAAe,GAAkB;IAC5C,OAAO,EAAE,IAAI;IACb,WAAW,EAAE,IAAI;IACjB,YAAY,EAAE,IAAI;IAClB,QAAQ,EAAE,IAAI;IACd,OAAO,EAAE,IAAI;CACd,CAAC;AA0DF,MAAM,CAAC,MAAM,cAAc,GAAqB;IAC9C,aAAa,EAAE,EAAE;IACjB,aAAa,EAAE,IAAI;IACnB,wBAAwB,EAAE,CAAC;CAC5B,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAmlBH,MAAM,CAAC,MAAM,eAAe,GAAkB;IAC5C,OAAO,EAAE,IAAI;IACb,WAAW,EAAE,IAAI;IACjB,YAAY,EAAE,IAAI;IAClB,QAAQ,EAAE,IAAI;IACd,OAAO,EAAE,IAAI;CACd,CAAC;AA0DF,MAAM,CAAC,MAAM,cAAc,GAAqB;IAC9C,aAAa,EAAE,EAAE;IACjB,aAAa,EAAE,IAAI;IACnB,wBAAwB,EAAE,CAAC;CAC5B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "darwin-agents",
3
- "version": "0.9.0",
3
+ "version": "0.11.0",
4
4
  "description": "AI agents that improve themselves. Self-evolving prompts via A/B testing, multi-model critics, safety gates, and pattern detection.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -102,6 +102,9 @@
102
102
  "url": "https://github.com/studiomeyer-io/darwin-agents/issues"
103
103
  },
104
104
  "author": "StudioMeyer <hello@studiomeyer.io>",
105
+ "contributors": [
106
+ "Claude Fable 5 (Anthropic) <noreply@anthropic.com> (https://www.anthropic.com/claude)"
107
+ ],
105
108
  "license": "MIT",
106
109
  "engines": {
107
110
  "node": ">=20"