()
| 128 | } |
| 129 | |
| 130 | function getDefaultGenes() { |
| 131 | return { |
| 132 | version: 1, |
| 133 | genes: [ |
| 134 | { |
| 135 | type: 'Gene', id: 'gene_gep_repair_from_errors', category: 'repair', |
| 136 | signals_match: [ |
| 137 | 'error|错误|异常|エラー|오류', |
| 138 | 'exception|异常|例外|예외', |
| 139 | 'failed|失败|失敗|실패|fail', |
| 140 | 'unstable|不稳定|不安定|불안정', |
| 141 | 'log_error', |
| 142 | 'test_failure', |
| 143 | ], |
| 144 | preconditions: ['signals contains error-related indicators'], |
| 145 | strategy: [ |
| 146 | 'Extract structured signals from logs and user instructions', |
| 147 | 'Select an existing Gene by signals match (no improvisation)', |
| 148 | 'Estimate blast radius (files, lines) before editing', |
| 149 | 'Apply smallest reversible patch', |
| 150 | 'Validate using declared validation steps; rollback on failure', |
| 151 | 'Solidify knowledge: append EvolutionEvent, update Gene/Capsule store', |
| 152 | ], |
| 153 | constraints: { max_files: 12, forbidden_paths: ['.git', 'node_modules'] }, |
| 154 | validation: [ |
| 155 | buildValidationCmd(['src/evolve', 'src/gep/solidify', 'src/gep/policyCheck', 'src/gep/selector', 'src/gep/memoryGraph', 'src/gep/assetStore']), |
| 156 | 'node scripts/validate-suite.js', |
| 157 | ], |
| 158 | }, |
| 159 | { |
| 160 | type: 'Gene', id: 'gene_gep_optimize_prompt_and_assets', category: 'optimize', |
| 161 | signals_match: [ |
| 162 | 'protocol|协议|プロトコル|프로토콜', |
| 163 | 'gep', |
| 164 | 'prompt|提示词|提示|プロンプト|프롬프트', |
| 165 | 'audit|审计|監査|감사', |
| 166 | 'reusable|可复用|再利用|재사용', |
| 167 | ], |
| 168 | preconditions: ['need stricter, auditable evolution protocol outputs'], |
| 169 | strategy: [ |
| 170 | 'Extract signals and determine selection rationale via Selector JSON', |
| 171 | 'Prefer reusing existing Gene/Capsule; only create if no match exists', |
| 172 | 'Refactor prompt assembly to embed assets (genes, capsules, parent event)', |
| 173 | 'Reduce noise and ambiguity; enforce strict output schema', |
| 174 | 'Validate by running node index.js run and ensuring no runtime errors', |
| 175 | 'Solidify: record EvolutionEvent, update Gene definitions, create Capsule on success', |
| 176 | ], |
| 177 | constraints: { max_files: 20, forbidden_paths: ['.git', 'node_modules'] }, |
| 178 | validation: [ |
| 179 | buildValidationCmd(['src/evolve', 'src/gep/prompt', 'src/gep/contentHash', 'src/gep/skillDistiller']), |
| 180 | 'node scripts/validate-suite.js', |
| 181 | ], |
| 182 | }, |
| 183 | { |
| 184 | type: 'Gene', id: 'gene_tool_integrity', category: 'repair', |
| 185 | signals_match: ['tool_bypass|工具绕过|ツール迂回|도구우회'], |
| 186 | preconditions: ['agent used shell/exec to perform an action that a registered tool can handle'], |
| 187 | strategy: [ |
no test coverage detected