Skip to content

Add signature macro support and change Field types - #1

Merged
krypticmouse merged 1 commit into
mainfrom
master
Aug 1, 2025
Merged

Add signature macro support and change Field types#1
krypticmouse merged 1 commit into
mainfrom
master

Conversation

@krypticmouse

@krypticmouse krypticmouse commented Aug 1, 2025

Copy link
Copy Markdown
Owner

Silly me :P

@krypticmouse
krypticmouse merged commit 846e0af into main Aug 1, 2025
3 of 10 checks passed
@krypticmouse
krypticmouse deleted the master branch August 1, 2025 03:41
isc-tdyar referenced this pull request in isc-tdyar/DSRs Nov 23, 2025
Documents existing GEPA implementation and outlines completion work needed:

Existing Implementation (Complete):
- Core GEPA algorithm with LLM-driven reflection and mutation (534 lines)
- Pareto frontier management with per-example dominance tracking (275 lines)
- Basic unit tests for GEPACandidate and ParetoFrontier
- Budget control, statistics tracking, and lineage tracking

Missing Components (To Be Completed):
- End-to-end example demonstrating FeedbackEvaluator usage
- Integration test with real OpenAI API
- CHANGELOG documentation
- Enhanced rustdoc with comprehensive usage patterns

User Stories:
- P1: Basic GEPA optimization with evolutionary search
- P2: Track evolution progress and Pareto frontier statistics
- P3: Budget-constrained optimization
- P3: Dual-model setup for cost efficiency

Reference: GEPA paper (Agrawal et al., 2025, arxiv:2507.19457)
Pattern: Following BootstrapFewShot completion pattern (#1-bootstrap-fewshot)

Co-Authored-By: Claude <noreply@anthropic.com>
krypticmouse added a commit that referenced this pull request Aug 14, 2026
…che (RFC 0002 IR-1)

- ir::sig::SignatureDef/FieldDef/ConstraintDef/RenderSpec: a signature as an
  owned, serde-derivable runtime value; SignatureBuilder validates at finish()
  with the same rejections as #[derive(Signature)] (empty side, duplicate
  aliased names, bad format value, invalid jinja, check-without-label,
  malformed constraint expression, non-string map keys).
- SignatureDef::of::<S>() bridges the derive statics (FieldSchema -> FieldDef,
  flattened fields keep leaf names); types_of::<S>() exposes the class/enum
  TypeTable from the same entry; matches::<S>() is the structural-equality
  check include_program! will use; augmented_with() is the value-lane
  Augmented<S, A>.
- The remaining two leaked TypeId caches collapse into the single
  StaticSigCache: SignatureSchema::of now delegates to it (leak #1), and the
  per-derive OnceLock schema() fast path is no longer emitted (leak #4).
  Loaded programs own their arenas; nothing dynamic touches the cache.
- Golden tests: derive-built == builder-built for representative signatures
  (plain, aliases+constraints+format+docs, class/enum tables, flatten,
  generic Augmented), serde round-trips, builder rejections, pointer-stable
  cache.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant