Skip to content

Keep original-source selection usable through long histories and refreshes - #2870

Merged
Chris0Jeky merged 4 commits into
codex/2808-overhaul-integrationfrom
codex/2808-source-interaction-followthrough
Sep 10, 2026
Merged

Keep original-source selection usable through long histories and refreshes#2870
Chris0Jeky merged 4 commits into
codex/2808-overhaul-integrationfrom
codex/2808-source-interaction-followthrough

Conversation

@Chris0Jeky

@Chris0Jeky Chris0Jeky commented Sep 10, 2026

Copy link
Copy Markdown
Owner

Private original histories stopped at an arbitrary offset, indistinguishable source buttons were difficult to use, and refresh/access transitions could discard selections or retain stale content. This continuation of #2808 removes the history cutoff with bounded pages, names original pickers by memory, retracts revoked source contents, preserves same-user token refresh, and disables retained-instruction sends while thinking or receipt recovery blocks the composer.

This PR is stacked on #2866. It adds no board mutation or external model call.

Verification: full backend solution passed 9,181 tests with 34 existing skips; full frontend passed 6,358 with three existing skips. Targeted API 27 and frontend 33, typecheck, production build, scoped ESLint, two Chromium journeys, doc links and governance passed. The SQLite regression retains 1,012 immutable originals and follows pages beyond the old cutoff. Browser evidence covers distinguishable memory choices, revoked access and recovery, four experiences and 375 px. Working database untouched.

Independent Luna review found no HIGH/CRITICAL defect. MEDIUM follow-through: deep SQL offset pagination can incur increasing scan work; keyset pagination is tracked under #2808 source scalability. The UI keeps ten-item pages. Dedicated 404 and parent retained-send integration cases are nonblocking coverage follow-through. Hosted checks remain pending on this exact head. OUTSTANDING_TASKS.md owner decisions are unchanged.

Parent audio repair is integrated at ac13824. No source-interaction logic changed during integration. Combined source/header API35 and frontend38 passed, along with docs. The parent repair also has its own production-policy/browser evidence and scoped independent review; hosted checks must qualify this merged head.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 10, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review Completed 2026-09-10T01:18:38.860100Z ac13824 New commits
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@Chris0Jeky Chris0Jeky moved this from Pending to Review in Taskdeck Execution Sep 10, 2026

Copy link
Copy Markdown
Owner Author

Exact-head validation snapshot and review entry point

Head: 3508ef0d3b8f1b0eca34125c18007efa756ab3b0.

The hosted Smart CI Self-Test passed on configured Node 24.13.1: 506 tests passed, 0 failed/skipped/cancelled, and the action-pin inventory passed 161/161 immutable references. Run: https://github.com/Chris0Jeky/Taskdeck/actions/runs/34423790161 ; job: https://github.com/Chris0Jeky/Taskdeck/actions/runs/34423790161/job/102704612600 . The actual job log was read, not inferred from local fixtures.

CI Extended also passed: https://github.com/Chris0Jeky/Taskdeck/actions/runs/34423790313 . The full CI run https://github.com/Chris0Jeky/Taskdeck/actions/runs/34423790319 is still in progress at this inspection. Its Docs Governance, release contract, architecture, paper audit and secret scan have passed; the remaining product/platform jobs are not yet a green qualification. Parent #2863's full CI passed, but parent success does not qualify this head.

Local evidence remains separate: 357 final overlay/placement regressions and an independent 309-test portable export run, zero failures/skips/cancellations. Earlier hosted and local fixture failures/corrections remain documented; no retry erased their record.

Review entry point: https://github.com/Chris0Jeky/Taskdeck/blob/3508ef0d3b8f1b0eca34125c18007efa756ab3b0/docs/ci/continuation/OPERATIONS.md
Portable guide: https://github.com/Chris0Jeky/Taskdeck/blob/3508ef0d3b8f1b0eca34125c18007efa756ab3b0/docs/ci/continuation/PORTABILITY.md

All seven current heads have passed hosted Smart CI Self-Test and CI Extended. All seven PRs remain OPEN/unmerged and require independent + maintainer review. This is a snapshot, not a promise to monitor later results. Production Taskdeck result reuse, canonical admission integration and protected execution-provenance infrastructure remain explicitly unactivated/outstanding.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ac13824640

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

<div class="original-choices">
<button v-if="!loaded || nextOffset !== null" type="button" :disabled="disabled || loading" @click="load">
<button v-if="!loaded || nextOffset !== null" type="button" :disabled="disabled || loading"
:aria-label="`${loading ? 'Checking originals' : loaded ? 'Load more originals' : 'Choose original sources'} for ${memoryTitle || 'this memory'}`" @click="load">

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Disambiguate pickers when memory titles repeat

When a board contains two memories with the same title—which the memory model permits and generated memories can produce—both controls receive the same accessible name (for example, Choose original sources for Thinking question). Screen-reader users and role-based automation therefore still cannot identify which memory each button controls, despite this change's goal of making the pickers distinguishable. Include an additional unique visible/accessibility discriminator such as the memory version or an associated memory label.

Useful? React with 👍 / 👎.

@Chris0Jeky
Chris0Jeky merged commit b262c8e into codex/2808-overhaul-integration Sep 10, 2026
35 of 37 checks passed
@github-project-automation github-project-automation Bot moved this from Review to Done in Taskdeck Execution Sep 10, 2026
@Chris0Jeky
Chris0Jeky deleted the codex/2808-source-interaction-followthrough branch September 10, 2026 02:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

1 participant