You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: project/2026-07-10-pr-5148-tiptap-editor-finalization-plan.md
+6-2Lines changed: 6 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -436,8 +436,12 @@ Outcome: PR ready for human approval; no hidden process debt.
436
436
- `2026-07-10 | Slice 4 | DONE_WITH_CONCERNS | Browser/devrouter proved the previous merge control was unsafe: a live two-column merge produced colspan=2, while recovered serialized state returned nine ordinary cells with colspan=1. Agy implemented the bounded product patch: bare TableKit, Lowlight common, native labelled toolbar buttons, generic manage preview code styling, and paired merge-key removal. Follow-up review fixed command-button aria-pressed semantics, removed dead resize CSS, and expanded ZA to reject merge/resize UI, persist a fourth row and column, and assert JavaScript, TypeScript, and R tokens in the editor and shared StudentElement preview. Browser after the patch rendered a 3x3 table, added a fourth row, exposed no merge or resize controls, contained zero nested buttons, and showed a visible keyboard focus ring at desktop and narrow viewports. Manage /questions/[id] is the same shared StudentElement renderer used by PWA flows. Prettier, frontend-manage tsc, Playwright tsc, scoped i18n parity, OKF wiki validation, and git diff --check pass. Installed Lowlight/Refractor grammars confirm the test token classes. Independent correctness re-check: PASS. Simplification review: PASS. The shared Docker engine became blocked by stale execs from another active worktree before the final filtered build and save/reload retry; no focused Playwright runtime or post-patch persistence pass is claimed here. | Commit Slice 4, then recover the container and run the full Slice 5 gates.`
437
437
- `2026-07-10 | Slice 5 | DONE_WITH_CONCERNS | Slice 4 committed as d4b2247aa. Containerized repo typecheck, syncpack, AGENTS, and Prisma-sync gates pass; Playwright Prettier, tsc, and Chromium discovery pass (811 tests). The changed frontend-manage production build passes with NODE_ENV=production. Root check:all cannot run lint-staged inside the container because the mounted worktree .git file points to host-only metadata; its component gates were run separately. Container lint is additionally blocked by missing uv and eslint-plugin-react-hooks in the image. Three focused ZA runtime attempts reached global cleanup/seed but synthetic login redirected to auth under devrouter, 127.0.0.1, and localhost routing before any editor selector; stopped after three environment hypotheses. In-app Browser reconnected to the signed-in manage page after devrouter recovery, but Browser policy blocked the required post-restart reload, so no new save/reopen claim is made. The first explicit push ran the repository pre-push hook and completed the full root production build: 21/21 build tasks passed, including auth, frontend-manage, and frontend-pwa. | Use remote CI as the focused runtime gate; do not classify local harness failures as product failures.`
438
438
- `2026-07-10 | Slice 6 | DONE_WITH_CONCERNS | Independent final review found focused external prop updates could be dropped and Markdown-significant indentation could compare equal. Fixed in 8975d2054 by removing the focus guard and trim; container Prettier and manage tsc pass, correctness review PASS_WITH_TEST_GAP, simplification PASS. Security review: raw HTML remains disabled, rehype-sanitize remains before Prism, code classes are restricted to language-*, dependency/lockfile changes are paired, scoped changed-file Opengrep reports 0 findings; the repo-wide auto scan reports 607 pre-existing findings and three analysis timeouts. Thermo review found concrete cross-app style drift; fixed manage preview table selectors and PWA generic pre selector in f4a2736c7. Thermo follow-up PASS; package-level shared CSS export explicitly deferred because it would add a new cross-package build/import contract. The documented .ProseMirror readiness wait remains based on measured layout shifts. Branch through ebdb9e6e2 pushed explicitly to the PR head; fresh remote checks are pending. Live PR remains REVIEW_REQUIRED; GitGuardian still flags the known dev-test credential commit inherited through v3 history. | Push this final evidence update, watch fresh CI, then refresh PR evidence/reviews.`
439
+
-`2026-07-10 | CI closure | DONE_WITH_CONCERNS | Fresh run 29110571382 exposed two deterministic test defects. ZA targeted a non-focusable table-cell wrapper and saved empty cells; fixed in f2a6c791d by focusing the cell paragraph and asserting editor text before save. S-group-activity expected a second confirmation after production had cleared editing state; fixed in 9a4c805d8 by asserting the modal remains absent while downstream grading assertions verify the selected submission. Final run 29112473952 passed build-and-compile and all eight Playwright shards. All other code checks passed; GitGuardian remained the sole failing check. PR body and review threads were refreshed; unresolved thread count is zero. | Authorized GitGuardian disposition, screenshots, and human approval remain.`
440
+
- `2026-07-10 | Branch review and simplification | DONE_WITH_CONCERNS | Two-axis review against origin/v3 found app-local import and missing data-cy hooks, stale evidence, explicit save/reopen/PWA evidence gaps, and pre-takeover AGENTS scope. Thermo pass removed redundant preventDefault calls from native type=button controls, simplified Markdown comparison syntax, restored the real optional-content boundary after independent review caught an undefined Formik caller, added stable hooks to new code/table controls, and strengthened ZA's add-column selector. Shared CSS extraction remains deferred because it would create a new package stylesheet contract. Pre-takeover AGENTS cleanup remains untouched as user-owned work. In-app Browser blocked the devrouter URL before page load, so no new browser claim is made. Targeted Prettier, frontend-manage tsc, Playwright tsc, test discovery, and diff checks pass locally; remote CI must rerun on the simplification commit. | Push simplification, watch fresh CI, then leave only external blockers.`
439
441
440
442
## Next Steps
441
443
442
-
1. Push explicitly to `origin/migrate-editor-to-tiptap` and watch fresh CI.
443
-
2. Refresh review threads, GitGuardian disposition, screenshots, and whole-branch PR copy after CI.
444
+
1. Commit and push the reviewed simplification; watch fresh CI.
445
+
2. Obtain authorized GitGuardian disposition.
446
+
3. Attach reviewer-visible desktop/narrow screenshots and record explicit editor reopen/PWA-route evidence.
447
+
4. Obtain human approval; merge only after separate explicit user approval.
0 commit comments