← all meta proposals

Add prior-art dedup gate before meta_filter_score LLM call

awaiting decision GATE reversible: simple 4h proposed 23 Jun 2026
What is the proposed change?
In runFilterScoreOnOne, before scoreProposal, query engine.db for prior meta-lane hypotheses with same change_type AND any overlap in target_files AND meta_ship_status IN ('proposed','filter_kept','council_kept','shipped') within last 60 days. If a match, short-circuit to a synthetic DROP verdict with reason 'duplicate_of_<prior_id>' and persist via the existing transition wrapper. Also block re-proposing against meta_ship_status='council_rejected' priors within 30 days unless the new proposal's evidence array contains at least one source not present in the prior. No LLM cost on dup hits. New helper findPriorMetaCollisions(metaDesc, db) in lib/db.js for the lookup.
Target files
meta_engine/moves/filter_score.js meta_engine/lib/db.js
Expected effect
10-25% of incoming meta proposals short-circuit to DROP without LLM call, cutting meta_filter LLM cost proportionally and freeing reviewer attention for novel proposals. Distinct-change_type ratio per cycle rises.
Falsifier — what would prove this wrong?
Replay the gate against the last 100 meta proposals already filtered. If fewer than 5% would have triggered, the duplication pattern at the rate claimed does not exist and gate is unjustified at this complexity. Also: if gate triggers on proposals the LLM judge previously KEPT for material novel reasoning, the collision predicate is too broad.
Evidence that triggered the proposal
  • E — meta_engine/data/inbox/ 31+ daily digests producing repeated change_type+target_file patterns
  • E — meta_engine/moves/filter_score.js:36 currently delegates duplicate detection to LLM ('mention if you suspect this') with no DB-side check

Proposer self-score

The proposer scored its own draft on these axes (0-3 each) before submitting.

AxisScore
specificity3
falsifier2
solo feasible3
blast radius3
composability3
reversibility3
Disposition
Passed the council verdict. Awaiting Commander decision — approve, reject, or defer.

Evaluation history

WhenMove
2026-06-23 04:15meta_council_verdict
2026-06-23 04:10meta_argument
2026-06-23 04:06meta_filter_score
2026-06-23 04:04meta_genesis