Skip to content

feat: trigger metadata + matcher for crystallized skills — increment 1 of #3210 - #3211

Closed
Lexus2016 wants to merge 2 commits into
mainfrom
evolution/issue-3210-trigger-skills
Closed

feat: trigger metadata + matcher for crystallized skills — increment 1 of #3210#3211
Lexus2016 wants to merge 2 commits into
mainfrom
evolution/issue-3210-trigger-skills

Conversation

@Lexus2016

Copy link
Copy Markdown
Owner

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 validated triggers: block in SKILL.md frontmatter; validate_candidate rejects malformed trigger blocks (back-compat: candidates without triggers stay valid).
  • Tests: tests/evolution/test_trigger_matcher.py (20 tests incl. existing suite green; full tests/evolution shard 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):

  • Runtime trigger monitor wired into the agent turn loop (prompt-cache-safe injection).
  • Co-evolution loop: outcome logging + automatic demotion of repeatedly failing triggered skills.

Co-Authored-By: Hermes Evolution <evolution@hermes.ai>
@github-actions

github-actions Bot commented Aug 26, 2026

Copy link
Copy Markdown
Contributor

૮ >ﻌ< ა ci review

ran on e2cbdd8 — Merge branch 'main' into evolution/issue-3210-trigger-skills

⚠️ Warnings

OSV vulnerability scan · View job

8 known vulnerabilities found in pinned dependencies.

How to fix:

Review the findings in the Security tab. Update the affected dependencies if a patched version is available.


debug info

CI timings

CI timings · View report · View job

Wall time 6m7s vs 6m41s (-8.5%). 7 job(s) slower, 16 faster, 2 unchanged.

  • Check contributors / check-attribution: -117.0s
  • Python tests / Run tests slice 3/12: +82.0s
  • Python tests / Run tests slice 11/12: -32.0s
  • Python tests / Run tests slice 8/12: +31.0s
  • Python tests / Run tests slice 4/12: +29.0s

@Lexus2016

Copy link
Copy Markdown
Owner Author

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant