feat(analysis): bind prediction-contradiction refusals to an analysis-run profile - #487
Conversation
…-run profile GAP-004: cutoff-safe prediction_contradiction_v1 / tepp.prediction_contradiction.v1. Binds refuse_promotion already on protected main. Distinct from support-edge, summarizes-edge, retrospective-edge, role-contradiction, subevent-containment, inferred-status, episode-membership, relation-absence, outcome-order, membership-target, citation-edge, and copy-identity. contradiction_agreement_rate stays library-side. AvailableTime cutoff runs before duplicate checks; MAX_EVIDENCE_UNITS bounds execution and artifact validation.
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: trueThanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
* ci(actions): reduce duplicate TEPP workflow load Remove the repository-local hourly PR scheduler now owned by the central required workflow. Isolate PR validation by repository and pull request, and avoid duplicate documentation runs for crate-only changes. Signed-off-by: Seongho Bae <me@seonghobae.me> * ci(actions): reduce duplicate TEPP workflow load Remove the repository-local hourly PR scheduler now owned by the central required workflow. Isolate PR validation by repository and pull request, and avoid duplicate documentation runs for crate-only changes. Signed-off-by: Seongho Bae <me@seonghobae.me> --------- Signed-off-by: Seongho Bae <me@seonghobae.me>
* fix(actions): centralize hourly development admission Signed-off-by: Seongho Bae <me@seonghobae.me> * fix(actions): opt in to central development coordinator Signed-off-by: Seongho Bae <me@seonghobae.me> --------- Signed-off-by: Seongho Bae <me@seonghobae.me>
…-004 Resolve the CHANGELOG.md append conflict by keeping both entries. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Protected main's documentation contract admits only implemented-main|active-PR|partial|accepted-target|research-only|out-of-scope. Source/tests/doctoring live on Draft #487, so the honest value is active-PR; the lineage note about #416/#437 is unchanged. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Restack on protected main (a243f18)
Local evidence on the pushed head (toolchain 1.98.0): The other 26 CONFLICTING 🤖 Generated with Claude Code |
Base-lineage finding (no change pushed)This PR's declared base is So the remaining CONFLICTING state is against #416, not main (this head already contains main since
I did not pick either because it changes the landing authority that #416/#437 define. 🤖 Generated with Claude Code |
Consolidation status
fold_into_landing_vehicle—prediction_contradiction_v1/tepp.prediction_contradiction.v1is a Validation / Analysis Run profile and changes the same shared integration surface as #416 (Cargo.lock,crates/analysis_engine/Cargo.toml,crates/analysis_engine/src/lib.rs,DOCUMENTATION.md,docs/TRACEABILITY.md, anddocs/adr/README.md). It remains a Draft fold child of #416, not an independent protected-main landing authority.Current exact child head:
8d89bd5f21d7188981bcd990ee5b3b1e2ab826ac. Current surviving #416 head:03f8de2ed0a0fb842d2022d411814e440df7cfb4. Fresh comparison is diverged: the child has 8 commits not in the surviving vehicle and is 81 surviving-vehicle commits behind, with protectedmain@a243f18da4a4ca8a8d068c39922537f1f8ed6ad0as merge base. GitHub therefore reports this child non-mergeable. This is a repair finding, not a reason to Close: unique source/tests/doctoring remain here until a real conflict-resolving ordinary fold verifies inheritance on the surviving head. Because #416 is still actively acquiring causal scientific repairs and exact-head evidence, finish that foundation first rather than repeatedly churning this dependent branch.Scientific finding and repair
The initial profile incorrectly treated a deliberately mixed four-class fixture as a production-data prerequisite:
assignment_count >= 4and nonzero covered, partial-overlap, adjacent, and contradictory counts were required during execution/artifact validation. Those Allen support classes are observations, not design strata. A real historical census may legitimately contain only covered predictions or only contradictions; absence of a relation class must remain a truthful zero count.RED
a2892b6ad4f632882f63da39eed2d4706ddf9213adds covered-only and contradiction-only censuses. Causal source repaira64020152300232cb3214a66b45d97225b6d2b5bremoves the artificial minimum/four-class gate while preserving nonempty admitted evidence,MAX_EVIDENCE_UNITS, exact class-count sums,refused_promotion_count + covered_count == assignment_count, cutoff-before-duplicate admission, digest validation, and the fixed claim boundary.6b0c8de64f41bc11f8bf908e0f9cbe854c1e213cremoves predecessor tests that encoded the rejected fixture-as-validity rule.Fresh docs-to-code review found ADR 0079 still contradicted that repaired source: it remained
Acceptedon a conflicted fold child and still said a mixed four-class census was required. Commite07b2ff9f78ef456ff911b8643710af20921fe54repairs the ADR toProposedimplementation lineage under ADR 0002/0016/0022, removes the false class-strata prerequisite, records sparse-census RED/repair lineage, and leaves canonical ADR identity/status normalization to #437. The shared ADR index remains part of the #416 conflict-resolving fold surface rather than independent architecture authority on this child.The four-class mixed fixture remains useful coverage because it exercises every
PredictionContradictionErrormapping; it is not a scientific eligibility condition.Preserved profile evidence
prediction_contradiction_v1; schematepp.prediction_contradiction.v1.unmatched_prediction_is_not_observed.prediction_contradiction::refuse_promotionsemantics rather than duplicating interval truth.KnowledgeCutoff::instant().AvailableTime <= knowledge_cutoffadmission occurs before duplicate-identity checks, so future-unavailable rows cannot perturb historical identity/count results.MAX_EVIDENCE_UNITSbounds execution admission and artifact validation.contradiction_agreement_rateremains library-side; inspect payloads remain metric-free.Exact-head merge authority
Only the eventual surviving #416/successor exact head counts after the fold. Child-head checks/reviews do not transfer. Reacquire all required workflows and qualifying independent review on the eventual surviving head. Preserve this Draft while #416 moves; once the foundation vehicle reaches a stable exact head, integrate this child's unique delta through an ordinary conflict-resolving non-force merge/restack and verify every source/test/doctoring/ADR item survived before any successor-based Close. No self-approval, force push, destructive rebase, routine admin bypass, or child-head evidence transfer.