Skip to content

fix(frontend): refresh feedback context when opening the link - #869

Merged
cristim merged 2 commits into
mainfrom
fix/feedback-freshness
Oct 14, 2026
Merged

cristim merged 2 commits into
mainfrom
fix/feedback-freshness

Conversation

@cristim

@cristim cristim commented Oct 14, 2026

Copy link
Copy Markdown
Member

The feedback mailto link now refreshes the current URL and date when the user interacts with it. SPA navigation and a date change no longer leave a stale page context in the email draft. Existing recipient, subject, body template, and encoding are preserved.

Independent two-pass review found no actionable findings at 42bc34b. Review covered SPA navigation, keyboard and pointer activation, date rollover, repeated setup, URL encoding, context menu, and focus.

Exact-SHA local verification on macOS: Jest 24/24, fresh production webpack build passed, and headless Chromium production-bundle browser test 1/1 with zero console, page, or network errors. Replacing the click refresh with a no-op failed all three current-URL/date activation cases. API/auth responses were mocked; no email was sent and no mail client was opened.

@coderabbitai

coderabbitai Bot commented Oct 14, 2026

Copy link
Copy Markdown
Contributor

Warning

Review limit reached

  • Run on-demand review

This review includes 3 billable files and costs up to $0.75.

  • Ask an admin to make reviews automatic

Open in CodeRabbit

Reviews can continue after your included limit without a manual trigger. An admin must approve usage-based billing.

Or wait 59 minutes for your next included review.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available. Your 63 included PR review attempts over the past 7 days set your current allowance at 1 review per hour.

Learn how review limits work.

Review configuration:

⚙️ Run configuration
  • Configuration used: Repository: LeanerCloud/cloud-commitments-platform/.coderabbit.yaml
  • Review profile: CHILL
  • Plan: Essentials
  • Run ID: 0a45c00f-530e-463f-ab60-cb4096fa8a48
📥 Commits

Reviewing files that changed from the base of the PR and between 8cfa983 and 42bc34b.

📒 Files selected for processing: 3
  • frontend/src/__tests__/app.test.ts
  • frontend/src/app.ts
  • frontend/tests-e2e/feedback-link.spec.ts
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

@cristim cristim added urgency/this-sprint Within the current sprint priority/p1 Next up; this sprint severity/medium Moderate harm impact/many Affects most users effort/s Hours type/bug Defect labels Oct 14, 2026
@cristim

cristim commented Oct 14, 2026

Copy link
Copy Markdown
Member Author

Independent cold verification, 2026-10-14. Reviewer: gpt-6.1-sol, medium.

Feedback verdict: READY for publication review at exact SHA 42bc34b. No actionable findings in two adversarial passes.
Pass 1: full base-to-head diff preserves recipient, subject, body template and encoded mailto semantics; URL/time evaluated per refresh. Event handlers do not prevent default or send email. No new auth reads, API calls or storage access.
Pass 2: attacked SPA navigation with retained document identity, focus before time advances, Enter/pointer activation after midnight, repeated setup, encoded query/hash, contextmenu and focus. Handler property replacement avoids duplicated setup listeners. Passive href remains snapshot until interaction, matching approved behavior.
Exact git-archive snapshot verification: Jest24/24; fresh production webpack build0; headless Chromium productiondist1/1 on isolated4452, strict zero console/page/network errors. Mutation replacing click refresh with no-op failed all3 current URL/date activation cases. Scratch source restored byte-identical to committed file. Source worktree remains clean at exact SHA.

Limits: auth/API responses mocked; no email or mail client opened, no production writes. Local source snapshots match the exact committed head.

@cristim

cristim commented Oct 14, 2026

Copy link
Copy Markdown
Member Author

CodeRabbit reports "Review limit reached" for this exact head and has not performed a review. The merge gate uses the independent two-pass exact-SHA review and local verification recorded above. No paid review or quota retry is requested. Required CI and normal branch protections still apply.

@cristim

cristim commented Oct 14, 2026

Copy link
Copy Markdown
Member Author

Final gate at 42bc34b: all four workflows succeeded (frontend build 38602829040, frontend E2E 38602829268, pre-commit 38602829313, build/test 38602829096). GitHub reports CLEAN and MERGEABLE, with no inline findings or review threads. CodeRabbit did not review because of its quota; the independent two-pass exact-SHA verdict and macOS fixture browser/mutation evidence above supply the review gate. The independent reviewer performed two additional bounded compatibility passes against new main 970de3d: its five ladder files match the previously reviewed selector byte-for-byte, the three-file feedback patch is unchanged, and navigation, API client, shared fixtures and dependencies are unchanged. No shared event targets or new call paths connect the two fixes. This compatibility check is source reasoning, not a new merged-bundle runtime claim. Proceeding with the owner-authorized normal exact-head squash merge; root retains the live browser recheck.

@cristim
cristim merged commit cbfa7db into main Oct 14, 2026
27 checks passed
@cristim

cristim commented Oct 14, 2026

Copy link
Copy Markdown
Member Author

Post-merge verification: normal merge commit cbfa7db has SUCCESS conclusions for all five triggered workflows: build/test 38605298691, frontend E2E 38605298722, frontend sentinel 38605298656, pre-commit 38605298769, and AWS deployment 38605298657. Each exact workflow run’s status and conclusion was read from its GraphQL CheckSuite after the REST Actions API rate limit; an independent two-pass-reviewed read-only watcher recorded the terminal conclusions. All five workflows for the preceding selector merge also succeeded. Root retains the read-only live browser recheck; fixture-based local evidence remains labelled above. No mail was sent, live configuration saved, or purchase performed. Existing source worktrees are preserved for their owner.

@cristim
cristim deleted the fix/feedback-freshness branch October 14, 2026 19:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

effort/s Hours impact/many Affects most users priority/p1 Next up; this sprint severity/medium Moderate harm type/bug Defect urgency/this-sprint Within the current sprint

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant