Skip to content

feat(pr-review): select source-backed review decisions - #5696

Closed
iscekic wants to merge 3 commits into
mobile-pr-review-context-5458-s7from
mobile-pr-review-context-5458-s8
Closed

iscekic wants to merge 3 commits into
mobile-pr-review-context-5458-s7from
mobile-pr-review-context-5458-s8

Conversation

@iscekic

@iscekic iscekic commented Aug 29, 2026 •

Copy link
Copy Markdown
Collaborator

No new behavior — The app does not yet use the new review-decision selection.


Summary

resolveContextReviewDecisions combines latestOpinionatedReviews and latestReviews into conservative reviewDecisions, retaining supported decisions and using UNKNOWN when evidence cannot support them. contextReviewsAgree compares review evidence; contextReviewEvidenceConflicts treats UNKNOWN states as unavailable evidence while still checking identity, commit, and submission time. The optional conflictingReviewIds input preserves genuine conflicts; source errors retain their metadata unless contradictions require retryable review-inconsistent results.

Files
  • apps/web/src/lib/github-pr-review/context-reviews.ts — Adds reviewer grouping by actor type and ID, with a review-ID fallback for missing actors. Keeps matching APPROVED, CHANGES_REQUESTED, and DISMISSED decisions, or decisions followed by comments whose known submission times do not contradict that order. Accepts activity-only decisions only with complete sources; omits comment-only activity and marks duplicate, pending, missing, or conflicting evidence UNKNOWN. Keeps selected timestamps, commits, and team attribution without borrowing comment metadata, ranking competing decisions by time, or inferring team approvals. Allows missing commit IDs or submission times and compares known submission instants without changing the selected timestamp text. Preserves unaffected reviewers and the original activity collection. Reports known counts, complete-only totals, partial/unknown results, page availability, and no shared cursor. Combines retry flags, merges provenance, and retains metadata from the first incomplete source, or the opinionated source when both are complete.
  • apps/web/src/lib/github-pr-review/context-reviews.test.ts — Adds synthetic source fixtures and coverage for decision combinations, identity conflicts, incomplete sources, source errors, explicit conflict IDs, timestamps, and team attribution. Checks unchanged activity and unaffected reviewers without asserting undocumented provider transitions.

Tests: 1 file added, context-reviews.test.ts (508 added lines).
Generated: 0 files changed.


Visual Changes

Visual Changes: N/A

Verification

No manual product tests ran for this level; reader integration and mobile presentation remain pending.
Live backend and iOS verification requires the completed stack tip.

The owner prohibits new end-to-end (E2E) slots and bundles.

Reviewer Notes

Human steps

  • before merge: After the owner lifts the E2E hold, complete live backend and iOS feature verification on the completed stack tip.
  • before merge: Do not ask for review or merge before the complete-stack human-ready gate.
  • after merge: No level-specific deployment, migration, or configuration step is known.

The owner retains product merge authority.

Scope and evidence

  • Repository: Kilo-Org/cloud; worktree: /Users/igor/Projects/.worktrees/mobile-pr-review-context-5458.
  • Review range: mobile-pr-review-context-5458-s7...mobile-pr-review-context-5458-s8 only.
  • All 27 pull requests (PRs) remain one incomplete stack.
  • Current-head continuous integration (CI), bot reviews, review threads, and the final description gate remain independently required.

Historical automated proof

  • The level-8 metadata-contract repair passed 179 focused tests and a fresh No findings. review before publication.
  • This refresh ran no product checks; historical proof does not close the current-head or complete-stack gates.

Notes

This level adds conservative decision selection without attaching review reads. Live backend and iOS verification will run on the completed stack tip.

Live backend and iOS feature verification remains required on the completed stack tip.

The owner currently prohibits new E2E slots and bundles; this hold does not waive runtime verification.

Levels 24 and 25 have prepared repairs and partial proof, but publication remains pending a workflow operation for an unpublished propagated baseline.

Their required three-root type checks have not passed; no failed publication proof is applied.

The owner descoped large-text/font-scaling, theme variants, contrast rendering, scaled-text layout, and screen-reader presentation.

Functional accessibility labels, roles, identifiers, selectors, default appearance flows, and all non-visual criteria remain required.

This is an interim description refresh; the complete-stack readiness gate remains open.

Stacked PRs — merge bottom to top. Each level shows only its own diff.

Runtime verification (E2E, user advocacy, simplify) runs on the tip PR over every level.
Every level keeps its own checks, its own bot review, and its own threads; each one is answered on its own PR.
Each level is its own deliverable: it builds and passes its own checks alone.
A finding on a level is repaired on that level, then carried upward with stack.sh forward.

  1. mobile-pr-review-context-5458-s1 — ci(pr-review): enable checks for context stack bases #5679
  2. mobile-pr-review-context-5458-s2 — feat(pr-review): define source-backed context contracts #5682
  3. mobile-pr-review-context-5458-s3 — feat(pr-review): normalize optional context payloads #5684
  4. mobile-pr-review-context-5458-s4 — feat(pr-review): map available REST context metadata #5687
  5. mobile-pr-review-context-5458-s5 — feat(pr-review): isolate optional context reads #5690
  6. mobile-pr-review-context-5458-s6 — feat(pr-review): complete labels and requested people #5691
  7. mobile-pr-review-context-5458-s7 — feat(pr-review): define review source documents and normalization #5695
  8. mobile-pr-review-context-5458-s8 — feat(pr-review): select source-backed review decisions #5696 ← this PR
  9. mobile-pr-review-context-5458-s9 — feat(pr-review): integrate independent review context reads #5699
  10. mobile-pr-review-context-5458-s10 — test(pr-review): preserve review source failure coverage #5703
  11. mobile-pr-review-context-5458-s11 — feat(pr-review): define linked issue source contracts #5706
  12. mobile-pr-review-context-5458-s12 — feat(pr-review): integrate typed linked issue context #5707
  13. mobile-pr-review-context-5458-s13 — test(pr-review): cover linked issue source failures #5708
  14. mobile-pr-review-context-5458-s14 — feat(pr-review): preserve structured policy evidence #5709
  15. mobile-pr-review-context-5458-s15 — feat(pr-review): normalize applicable merge policies #5712
  16. mobile-pr-review-context-5458-s16 — feat(pr-review): read applicable merge policies #5713
  17. mobile-pr-review-context-5458-s17 — feat(pr-review): define requirement observation contracts #5720
  18. mobile-pr-review-context-5458-s18 — feat(pr-review): expand named policy requirements #5723
  19. mobile-pr-review-context-5458-s19 — feat(pr-review): evaluate evidenced check requirements #5727
  20. mobile-pr-review-context-5458-s20 — feat(pr-review): evaluate evidenced merge policies #5728
  21. mobile-pr-review-context-5458-s21 — test(pr-review): preserve check evaluation coverage #5730
  22. mobile-pr-review-context-5458-s22 — test(pr-review): preserve policy evaluation coverage #5732
  23. mobile-pr-review-context-5458-s23 — feat(pr-review): integrate requirement observation reads #5735
  24. mobile-pr-review-context-5458-s24 — test(pr-review): preserve requirement source coverage #5736
  25. mobile-pr-review-context-5458-s25 — test(pr-review): complete requirement reader coverage #5739
  26. mobile-pr-review-context-5458-s26 — feat(pr-review): preserve queue membership and position #5741
  27. mobile-pr-review-context-5458-s27 — refactor(pr-review): share mobile-safe context contracts #5744 (tip)

@kilo-code-bot

kilo-code-bot Bot commented Aug 29, 2026 •

Copy link
Copy Markdown
Contributor

Code Review Summary

Status: No Issues Found | Recommendation: Merge

Executive Summary

Reviewed the unused resolveContextReviewDecisions selector and its conservative policy tests; no high-confidence correctness, security, or runtime issues.

Files Reviewed (2 files)
  • apps/web/src/lib/github-pr-review/context-reviews.ts
  • apps/web/src/lib/github-pr-review/context-reviews.test.ts

Reviewed by grok-4.6 · Input: 280.9K · Output: 21.2K · Cached: 301.6K

Review guidance: REVIEW.md from base branch mobile-pr-review-context-5458-s7

@iscekic

iscekic commented Aug 31, 2026

Copy link
Copy Markdown
Collaborator Author

Closing: the owner stopped this workflow section. The branch is retained.

@iscekic iscekic closed this Aug 31, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant