test(#030): generalize the alias-slot disjointness guard + open #081#1215
Conversation
The existing contracts pin the admission/discharge pair by name, so a future multi-slot case -- or a widening of a different alias tier -- could reintroduce the #30 defect without any test going red. Drive both invariants off the real eval cases instead: no expectation of a multi-slot case may share alias values with another slot of the same case, and no single document may satisfy every slot of any multi-slot case. The second holds independently of the alias tables, so it stays meaningful if the tables are widened again. RAG impact: no retrieval behaviour change -- test-only. Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>
PR #1196 re-adds two admission-to-discharge titles to the wide-tier AdmissionCommunityPts list, which would revert the #30 tightening. Its other conflicts include protected RAG surfaces, so record how to reconcile it rather than leaving that in chat context. Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
|
This pull request has been ignored for the connected project Preview Branches by Supabase. |
|
Warning Review limit reached
Next review available in: 5 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (2)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks 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 |
…jointness-guard-6273 Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>
…uard-6273' into cursor/alias-slot-disjointness-guard-6273 Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>
…jointness-guard-6273 Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>
…uard-6273' into cursor/alias-slot-disjointness-guard-6273 Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>
…ng check (#1229) * docs(ledger): record prlanded outcomes for PRs #1204, #1215, #1220 Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com> * docs(prlanded): compare trees against the squash commit, not three-dot main Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com> --------- Co-authored-by: Cursor Agent <cursoragent@cursor.com> Co-authored-by: BigSimmo <BigSimmo@users.noreply.github.com>
Summary
Follow-up to #1204. The #30 contracts that landed there pin the admission/discharge pair by name, so the defect could return through a different alias tier or a future multi-slot case with nothing going red. Open PR #1196 is a live example: it re-adds "Admission to Discharge for Community Mental Health" and "Referral Admission and Discharge Mental Health Hospital in the Home" to wide-tier
AdmissionCommunityPts, where both already sit on the Discharge tier.ragEvalCases+answerQualityEvalCases, not hardcoded names: no expectation of a multi-slot case may share alias values with another slot of the same case. New multi-slot cases are covered automatically.docs/outstanding-issues.mdrecording how to reconcile fix: remediate P2 audit findings (Phases 1 and 2) #1196: take main's admission-only list foreval-document-matching.ts, and treat its protected-RAG-surface conflicts (semantic-rerank.ts,rag/rag.ts,rag-route-budget.ts,scripts/eval-retrieval.ts) through the RAG flagging path rather than a mechanical rebase.RAG impact: no retrieval behaviour change — test-only plus a ledger entry; no source file changes at all.
Verification
npm run verify:cheap— pass (3405 passed, 5 skipped)tests/eval-document-matching.test.ts,tests/rag-eval-cases.test.tskeeps the alias values of every multi-slot case's expectations pairwise disjoint) alongside the existing named oneexpectedFileCoverageto pre-Potential fix for code scanning alert no. 1: Workflow does not contain permissions #30 matching fails the new structural contract (never lets a single document satisfy every slot of a multi-slot case) alongside the two behavioural onesRisk and rollout
784a1420.Notes