feat(third-door): wire high surprise to DiscoveryCandidate (#20 follow-up) #31
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/third-door-surprise-discovery-wiring"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Closes the remaining #20 surface from the Third-Door Blueprint Fidelity Ledger §6: high geometric surprise now raises a proposal-only
DiscoveryCandidateinto the existing discovery sink stream (contemplation already consumes that JSONL).Issue: #30 — [third-door] Surprise → DiscoveryCandidate wiring (ledger #20 follow-up)
core.physics.surpriseis_discovery_eligible+discovery_eligibleon dual audit dicts; defaultγ = 0.35. No teaching/vault imports.teaching.discoveryhigh_surprise; purecandidate_from_surprise_dual; opt-inemit_surprise_discovery→DiscoveryCandidateSink. Unreviewed, proposal-only.Discovery ≠ transfer: eligible only when
sur_norm > γand not productive/transfer-accepted and not metric-refused.What changed
Physics (
core/physics/surprise.py)DEFAULT_DISCOVERY_GAMMA = 0.35(blueprint Super §3.2 default γ)is_discovery_eligible(...)dual_procrustes_surprise/dual_operatoremitdiscovery_eligible+discovery_gammaon every audit dictsurprise_residualunchanged (metric-exact from #26)Teaching (
teaching/discovery.py)DiscoveryTrigger:high_surprisecandidate_from_surprise_dual(dual, source_turn_trace=...)→DiscoveryCandidate(domain="math", review_state="unreviewed")emit_surprise_discovery(dual, sink=...)— opt-in sink emit; pure factory without sinkTests + ledger
tests/test_third_door_surprise_discovery_wiring.py— eligibility, determinism, sink, no-import/no-vault boundariestests/test_adr_0239_surprise_dual.py— assertsdiscovery_eligiblekeyContainment
SelfAuthorshipMineruntouched (stillAuthorshipProposalonly)Test plan
python3 -m pytest tests/test_third_door_surprise_discovery_wiring.py tests/test_adr_0239_surprise_dual.py tests/test_adr_0239_surprise_metric_projection.py tests/test_discovery_candidates.py tests/test_adr_0240_temporal_and_miner.py -q→ 59 passedOut of scope
Closes ledger #20 wiring when merged (operator math already landed via #26).
Approve & merge.
#20 wiring complete and contained. Physics marks
discovery_eligible(pure, no teaching imports). Teaching provides purecandidate_from_surprise_dual+ opt-inemit_surprise_discoveryto existing sink (proposal-only, no VaultStore/self-install). Tests + ledger updated. All traces clean. Ready to land. Great closure of the surprise surface.