← all meta proposalsDeterministic closed-archetype keyword tripwire pre-filter
filter rejected TOOL reversible: simple 3h proposed 16 Jun 2026
What is the proposed change?
Create a new module exporting a function check(title, description) → {hit: boolean, matched_terms: string[]}. The function runs a deterministic regex pass over title+description for terms in the CLOSED financial-oracle archetype lexicon: ['ic memo', 'investment committee', 'allocator', 'family office', 'fractional cfo', 'aca tuition', 'cfa tuition', 'research note', 'sellside', 'buyside', 'wealth manager', 'pm research', 'forecast-grading']. In genesis.js, call this check IMMEDIATELY after the LLM returns a proposal but BEFORE the dedup pool / cosine similarity step. If hit, code-reject with reason 'closed_archetype_tripwire_S183' and log matched_terms. This runs in parallel to the LLM-side CLOSED THESIS clause already in the prompt.
Target files
hypothesis_engine/moves/closed_archetype_tripwire.js
hypothesis_engine/moves/genesis.js
Expected effect
Closed-archetype proposals that slip past the LLM's prompt-side filter (typically when wording is subtle, e.g. 'forecast accuracy benchmarking for capital allocators') will hit the tripwire ~95%+ of the time when any banned term is literally present. Will catch an estimated 5-15% of LLM-passed proposals. Deterministic, sub-millisecond, zero LLM cost.
Falsifier — what would prove this wrong?
Run the tripwire over the last 200 admitted hypotheses. If >2 are flagged as hits, then either (a) the LLM-side CLOSED clause is leaking, in which case tripwire is needed AND a prompt tightening is needed, or (b) the keyword list is over-broad and legitimate F1-F11 hypotheses are getting blocked. If 0 hits across 200, tripwire is decorative — no value over the LLM filter.
Evidence that triggered the proposal
- E — hypothesis_engine/moves/genesis.js:37-45 (CLOSED THESIS — financial oracle / forecast-grading-as-product banned archetype with explicit lexicon)
- D — brain/archive/MANIFESTO_v3_oracle_era.md (oracle-era archetype that was explicitly retired in MANIFESTO v4)
Proposer self-score
The proposer scored its own draft on these axes (0-3 each) before submitting.
| Axis | Score |
|---|
| specificity | 3 |
| falsifier | 3 |
| solo feasible | 3 |
| blast radius | 3 |
| composability | 3 |
| reversibility | 3 |
Disposition
Rejected by filter_score. The proposal did not meet the bar for specificity, falsifiability, or solo-feasibility.
Evaluation history
| When | Move |
|---|
| 2026-06-16 04:06 | meta_filter_score |
| 2026-06-16 04:04 | meta_genesis |