fix: notification accessibility, locale-aware timestamps, release checklist (P2-5, P2-6) #100

Closed
starsetbyte wants to merge 0 commits from fix/p2-ui-polish into main
Owner

Fixes P2-5, P2-6 from the 2026-07-11 adversarial delta review, and ticks the review's release checklist delta now that all P1/P2 branches are complete.

P2-5 — notification unread state is accessible

  • The unread indicator on notification rows now exposes a stateDescription for accessibility services, in addition to the existing visual dot. Verified manually (no JVM Compose-semantics harness exists to assert this automatically).

P2-6 — timestamp formatters resolve the current locale

  • TimeFormat.kt's formatters now resolve per current locale/configuration instead of being constructed once at process start (ConstantLocale lint warnings cleared).

Checklist + deviations doc

  • Ticks all 11 boxes in docs/reviews/2026-07-11-adversarial-delta-review.md's release checklist delta and records every accepted deviation from the plan's literal text across all four branches, per the plan's Task 13 Step 2.

Gate: ./gradlew testDebugUnitTest lintDebug — 0 failures, 0 lint errors. (2 pre-existing skips in AtProtoOAuthClientTest remain on this branch, same as branches B/C — resolves once branch A merges first.)

Merge order: this is branch D of four, last in merge order (A → B → C → D).

Fixes P2-5, P2-6 from the [2026-07-11 adversarial delta review](https://durandal.exe.xyz/starsetbyte/peregrine/src/branch/main/docs/reviews/2026-07-11-adversarial-delta-review.md), and ticks the review's release checklist delta now that all P1/P2 branches are complete. ## P2-5 — notification unread state is accessible - The unread indicator on notification rows now exposes a `stateDescription` for accessibility services, in addition to the existing visual dot. Verified manually (no JVM Compose-semantics harness exists to assert this automatically). ## P2-6 — timestamp formatters resolve the current locale - `TimeFormat.kt`'s formatters now resolve per current locale/configuration instead of being constructed once at process start (`ConstantLocale` lint warnings cleared). ## Checklist + deviations doc - Ticks all 11 boxes in `docs/reviews/2026-07-11-adversarial-delta-review.md`'s release checklist delta and records every accepted deviation from the plan's literal text across all four branches, per the plan's Task 13 Step 2. **Gate:** `./gradlew testDebugUnitTest lintDebug` — 0 failures, 0 lint errors. (2 pre-existing skips in `AtProtoOAuthClientTest` remain on this branch, same as branches B/C — resolves once branch A merges first.) **Merge order:** this is branch **D** of four, last in merge order (A → B → C → D).
docs: tick release checklist delta, record accepted deviations (Task 13)
All checks were successful
peregrine-ci / assembleDebug Build succeeded (47s)
Peregrine CI / Build & Test (JDK 17) (pull_request) Successful in 4m56s
Peregrine CI / Signed Minified Release Build (pull_request) Successful in 4m13s
Peregrine CI / Instrumented Tests (API 29+) (pull_request) Has been skipped
ae9146730d
All P1-1..P1-6 and P2-1..P2-6 fixes from the 2026-07-11 adversarial delta
review are complete across the four fix branches. Final gate
(testDebugUnitTest lintDebug) passed clean on all four as of 2026-07-12.
Author
Owner

Review pass 1 — integration revision needed

This branch independently adds docs/reviews/2026-07-11-adversarial-delta-review.md, while PR #96 adds the same path with a different blob. A synthetic merge of #96 then this branch produces an add/add conflict on that document. Rebase on the selected documentation PR and retain one canonical copy (or drop the duplicate document) before merge.

The executable changes look directionally sound, and the targeted TimeFormatTest suite passes locally. Minor hygiene: git diff --check reports trailing whitespace in the added review Markdown.

## Review pass 1 — integration revision needed This branch independently adds `docs/reviews/2026-07-11-adversarial-delta-review.md`, while PR #96 adds the same path with a different blob. A synthetic merge of #96 then this branch produces an **add/add conflict** on that document. Rebase on the selected documentation PR and retain one canonical copy (or drop the duplicate document) before merge. The executable changes look directionally sound, and the targeted `TimeFormatTest` suite passes locally. Minor hygiene: `git diff --check` reports trailing whitespace in the added review Markdown.
starsetbyte closed this pull request 2026-07-13 12:55:32 +00:00
Author
Owner

Merged to main (87933e8)

Clean merge. TimeFormatTest passes. Trailing whitespace fixed.

## Merged to main (87933e8) Clean merge. TimeFormatTest passes. Trailing whitespace fixed.
Author
Owner

Content from fix/p2-ui-polish shipped to main via a local --no-ff merge, which is why Forgejo shows this closed-unmerged rather than merged. Reconciled in docs/reviews/2026-07-25-branch-pr-reconciliation.md, which landed on main via #103. Branch deleted as part of that reconciliation.

Content from `fix/p2-ui-polish` shipped to `main` via a local `--no-ff` merge, which is why Forgejo shows this closed-unmerged rather than merged. Reconciled in `docs/reviews/2026-07-25-branch-pr-reconciliation.md`, which landed on `main` via #103. Branch deleted as part of that reconciliation.
All checks were successful
peregrine-ci / assembleDebug Build succeeded (47s)
Required
Details
Peregrine CI / Build & Test (JDK 17) (pull_request) Successful in 4m56s
Peregrine CI / Signed Minified Release Build (pull_request) Successful in 4m13s
Peregrine CI / Instrumented Tests (API 29+) (pull_request) Has been skipped

Pull request closed

Sign in to join this conversation.
No description provided.