feat: trigger metadata + matcher for crystallized skills — increment 1 of #3210 - #3211
feat: trigger metadata + matcher for crystallized skills — increment 1 of #3210#3211Lexus2016 wants to merge 2 commits into
Conversation
Co-Authored-By: Hermes Evolution <evolution@hermes.ai>
૮ >ﻌ< ა ci reviewran on e2cbdd8 — Merge branch 'main' into evolution/issue-3210-trigger-skills
|
|
Integration review: blocked in-cycle. The new trigger_matcher module adds real value to skill_crystallizer frontmatter (extract/validate/render/parse are wired), but and have zero production call sites in this increment — they are referenced only by their own module and tests. Per the evolution integration dead-code gate, autonomous merge is not permitted. The PR is also above the 200-line self-merge cap, which the author already flagged. Please rework so the scoring surface ships with its runtime consumer (the deferred trigger monitor wiring), not as dead code. |
First coherent slice of #3210 (evidence-grounded, trigger-monitored skill library).
What lands:
evolution/lib/trigger_matcher.py: deterministic trigger extraction from traces, frontmatter validation/parse/render, runtime state->trigger scoring (score_trigger,best_matches).evolution/lib/skill_crystallizer.py: every crystallized skill now carries a validatedtriggers:block in SKILL.md frontmatter;validate_candidaterejects malformed trigger blocks (back-compat: candidates without triggers stay valid).tests/evolution/test_trigger_matcher.py(20 tests incl. existing suite green; fulltests/evolutionshard 431 passed locally).Note: 308 changed lines — above the 200-line autonomous self-merge cap; the merge gate should hold this for human review.
Deferred (next increment):