← all meta proposals

Add empty-noun-phrase detector tool gating pre-filter

council rejected TOOL reversible: simple 6h proposed 31 May 2026
What is the proposed change?
New file empty_noun_check.js: takes a proposal noun phrase, returns {is_empty: bool, reason: str}. Implementation is deterministic — checks for (a) noun phrase containing only abstractions from a stop-list ['solution', 'platform', 'system', 'framework', 'approach'] with no concrete modifier, (b) noun phrase whose head word appears in <3 of the last 100 corpus items, (c) noun phrase where the proposed falsifier does not include any of the head-noun's tokens. Wire into filter_score as a hard pre-gate: if is_empty=true, set composite=0 and skip a1-a11 scoring.
Target files
hypothesis_engine/tools/empty_noun_check.js hypothesis_engine/moves/filter_score.js
Expected effect
Cuts filter-kept rate of 847f7e-shape proposals by ≥50% relative to current baseline, without adding LLM cost. Over 30 cycles, ≥80% of detector-flagged items are also human-rated as empty.
Falsifier — what would prove this wrong?
Hand-label 50 recent filter_kept and 50 recent filter_rejected proposals as empty/concrete. If detector precision <0.7 or recall <0.5 against human labels, tool is too noisy and must not gate.
Evidence that triggered the proposal
  • D — brain/S157_NBJ_DESCRIBABILITY_TEST.md
  • E — kill-reason distribution: 847f7e-shape is top filter_rejected reason
  • D — brain/V2_FILTER_DESIGN.md v2.3 red-team round

Proposer self-score

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

AxisScore
specificity3
falsifier3
solo feasible3
blast radius2
composability3
reversibility3
Disposition
Rejected at the council verdict. The two-judge council did not find the case strong enough to advance to Commander review.

Evaluation history

WhenMove
2026-05-31 04:10meta_council_verdict
2026-05-31 04:08meta_argument
2026-05-31 04:06meta_filter_score
2026-05-31 04:03meta_genesis