111 lines
3.7 KiB
JSON
111 lines
3.7 KiB
JSON
|
|
{
|
||
|
|
"version": 2,
|
||
|
|
"genes": [
|
||
|
|
{
|
||
|
|
"type": "Gene",
|
||
|
|
"id": "gene_gep_repair_from_errors",
|
||
|
|
"category": "repair",
|
||
|
|
"signals_match": [
|
||
|
|
"error",
|
||
|
|
"exception",
|
||
|
|
"failed",
|
||
|
|
"unstable"
|
||
|
|
],
|
||
|
|
"preconditions": [
|
||
|
|
"signals contains error-related indicators"
|
||
|
|
],
|
||
|
|
"strategy": [
|
||
|
|
"Extract structured signals from logs and user instructions",
|
||
|
|
"Select an existing Gene by signals match (no improvisation)",
|
||
|
|
"Estimate blast radius (files, lines) before editing",
|
||
|
|
"Apply smallest reversible patch",
|
||
|
|
"Validate using declared validation steps; rollback on failure",
|
||
|
|
"Solidify knowledge: append EvolutionEvent, update Gene/Capsule store"
|
||
|
|
],
|
||
|
|
"constraints": {
|
||
|
|
"max_files": 20,
|
||
|
|
"forbidden_paths": [
|
||
|
|
".git",
|
||
|
|
"node_modules"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
"validation": [
|
||
|
|
"node scripts/validate-modules.js ./src/evolve ./src/gep/solidify ./src/gep/policyCheck ./src/gep/selector ./src/gep/memoryGraph ./src/gep/assetStore",
|
||
|
|
"node scripts/validate-suite.js"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"type": "Gene",
|
||
|
|
"id": "gene_gep_optimize_prompt_and_assets",
|
||
|
|
"category": "optimize",
|
||
|
|
"signals_match": [
|
||
|
|
"protocol",
|
||
|
|
"gep",
|
||
|
|
"prompt",
|
||
|
|
"audit",
|
||
|
|
"reusable"
|
||
|
|
],
|
||
|
|
"preconditions": [
|
||
|
|
"need stricter, auditable evolution protocol outputs"
|
||
|
|
],
|
||
|
|
"strategy": [
|
||
|
|
"Extract signals and determine selection rationale via Selector JSON",
|
||
|
|
"Prefer reusing existing Gene/Capsule; only create if no match exists",
|
||
|
|
"Refactor prompt assembly to embed assets (genes, capsules, parent event)",
|
||
|
|
"Reduce noise and ambiguity; enforce strict output schema",
|
||
|
|
"Validate by running node index.js run and ensuring no runtime errors",
|
||
|
|
"Solidify: record EvolutionEvent, update Gene definitions, create Capsule on success"
|
||
|
|
],
|
||
|
|
"constraints": {
|
||
|
|
"max_files": 20,
|
||
|
|
"forbidden_paths": [
|
||
|
|
".git",
|
||
|
|
"node_modules"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
"validation": [
|
||
|
|
"node scripts/validate-modules.js ./src/evolve ./src/gep/prompt ./src/gep/contentHash ./src/gep/skillDistiller",
|
||
|
|
"node scripts/validate-suite.js"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"type": "Gene",
|
||
|
|
"id": "gene_gep_innovate_from_opportunity",
|
||
|
|
"category": "innovate",
|
||
|
|
"signals_match": [
|
||
|
|
"user_feature_request",
|
||
|
|
"user_improvement_suggestion",
|
||
|
|
"perf_bottleneck",
|
||
|
|
"capability_gap",
|
||
|
|
"stable_success_plateau",
|
||
|
|
"external_opportunity"
|
||
|
|
],
|
||
|
|
"preconditions": [
|
||
|
|
"at least one opportunity signal is present",
|
||
|
|
"no active log_error signals (stability first)"
|
||
|
|
],
|
||
|
|
"strategy": [
|
||
|
|
"Extract opportunity signals and identify the specific user need or system gap",
|
||
|
|
"Search existing Genes and Capsules for partial matches (avoid reinventing)",
|
||
|
|
"Design a minimal, testable implementation plan (prefer small increments)",
|
||
|
|
"Estimate blast radius; innovate changes may touch more files but must stay within constraints",
|
||
|
|
"Implement the change with clear validation criteria",
|
||
|
|
"Validate using declared validation steps; rollback on failure",
|
||
|
|
"Solidify: record EvolutionEvent with intent=innovate, create new Gene if pattern is novel, create Capsule on success"
|
||
|
|
],
|
||
|
|
"constraints": {
|
||
|
|
"max_files": 25,
|
||
|
|
"forbidden_paths": [
|
||
|
|
".git",
|
||
|
|
"node_modules"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
"validation": [
|
||
|
|
"node scripts/validate-modules.js ./src/evolve ./src/gep/solidify ./src/gep/policyCheck ./src/gep/mutation ./src/gep/personality",
|
||
|
|
"node scripts/validate-suite.js"
|
||
|
|
]
|
||
|
|
}
|
||
|
|
]
|
||
|
|
}
|
||
|
|
|