Why: origin/main archived a task card after the combo test, and the branch has to contain that main.
Evidence: SELF make task-sync exit 0, sync_base=efa8f2b3322490c8c1a49707ed3f7a3970927cf8, changed=1, and the merge only archived a task card.
Impact: no product pin or duty code changed.
Refs: .task/feature-rdm-duty-matrix.md
Co-authored-by: Cursor <cursoragent@cursor.com>
Why: include the current integration baseline before verification.
Evidence: fetched origin/main=efa8f2b3322490c8c1a49707ed3f7a3970927cf8.
Impact: integrate upstream changes without rewriting task history.
Refs: task-sync
Why: merging origin/main changed governance tests, so the combo had to be run again.
Evidence: SELF make test and make build exited 0 on 87a4559e0f after unsetting a local telemetry variable that corrupted one receipt.
Impact: the task card stores the pass and the earlier failure; duty pins are unchanged.
Refs: .task/feature-rdm-duty-matrix.md
Co-authored-by: Cursor <cursoragent@cursor.com>
Why: origin/main moved and the duty branch has to contain it before merge.
Evidence: SELF make task-sync exit 0, sync_base=d51828a73aaebd15a52da7dc5f6b63ad7188ad9a, changed=1.
Impact: the branch includes the goal-first delivery scripts; duty pins are unchanged.
Refs: .task/feature-rdm-duty-matrix.md
Co-authored-by: Cursor <cursoragent@cursor.com>
Why: include the current integration baseline before verification.
Evidence: fetched origin/main=d51828a73aaebd15a52da7dc5f6b63ad7188ad9a.
Impact: integrate upstream changes without rewriting task history.
Refs: task-sync
Why: the combo test has to cover the frontend and documents commits that contain origin/main.
Evidence: SELF make test and make build exited 0 on 92e809c6dd.
Impact: the task card stores those receipts; product pins are unchanged.
Refs: .task/feature-rdm-duty-matrix.md
Co-authored-by: Cursor <cursoragent@cursor.com>
Why: frontend and documents were updated so their heads contain origin/main before merge.
Evidence: SELF frontend vitest 293 passed on 04269ee; both pull requests merged.
Impact: modules/frontend is 04269ee and modules/documents is 5f41149.
Refs: .task/feature-rdm-duty-matrix.md
Why: the branch must contain origin/main before it can be merged.
Evidence: SELF make task-sync exit 0, sync_base=919f75cf7b39ca357e212a08a0ba5ba3d9a79b51, tested_head=ba1bdfb3c7a8a7ddf042c5915ec4f2db685a3e95, changed=0.
Impact: the task card stores the sync receipt; product pins are unchanged.
Refs: .task/feature-rdm-duty-matrix.md
Co-authored-by: Cursor <cursoragent@cursor.com>
Why: the pin for the duty draft recovery needs evidence written by the evidence tool.
Evidence: SELF make test and make build both exited 0 on 692b7a0239.
Impact: the task card stores those receipts; product pins are unchanged.
Refs: .task/feature-rdm-duty-matrix.md
Co-authored-by: Cursor <cursoragent@cursor.com>
Why: the combo has to build the frontend that drops a dirty duty draft when a save result is unknown.
Evidence: SELF frontend vitest, tsc, knip, and Playwright passed on 985fc0f.
Impact: modules/frontend moves from 6093beb to 985fc0f.
Refs: .task/feature-rdm-duty-matrix.md
Co-authored-by: Cursor <cursoragent@cursor.com>
Why: acceptance evidence has to be produced by the evidence tool after the branch contains origin/main.
Evidence: SELF make test, make build, RDM package tests, a fresh PostgreSQL legacy migration, and three Playwright duty flows all exited 0.
Impact: the task card stores those receipts; product code is unchanged.
Refs: .task/feature-rdm-duty-matrix.md
Co-authored-by: Cursor <cursoragent@cursor.com>
Why: acceptance needs a task-sync receipt taken after origin/main is contained.
Evidence: SELF make task-sync exit 0, sync_base=919f75cf7b39ca357e212a08a0ba5ba3d9a79b51, tested_head=4163e2291818b5689afdf9ce651542e9680d973d, changed=0.
Impact: the task card stores the sync receipt; product pins are unchanged.
Refs: .task/feature-rdm-duty-matrix.md
Co-authored-by: Cursor <cursoragent@cursor.com>
Why: acceptance has to include the current main, including newer backend, core, and UI pins, while the duties page stays assignment-only.
Evidence: SELF frontend vitest 292 passed after merging the duties conflict; the earlier task-sync receipt records the submodule conflict that this commit resolves.
Impact: frontend pin is 6093beb; backend, core, and UI follow origin/main.
Refs: .task/feature-rdm-duty-matrix.md
Co-authored-by: Cursor <cursoragent@cursor.com>
Why: include the current integration baseline before verification.
Evidence: fetched origin/main=37a8791cb9f736a7f58e87a88389a55095f06e0d.
Impact: integrate upstream changes without rewriting task history.
Refs: task-sync
Why: the duties draft must stay within the frontend unused-export baseline before combination tests.
Evidence: SELF knip 43 <= 43 on the frontend commit.
Impact: Dev follows the duties page without new unused exports.
Refs: modules/frontend
Why: the duties browser scenarios changed after the first frontend pin.
Evidence: SELF playwright 3 passed; frontend commit follows 1b7ba77.
Impact: Dev follows the frontend duties page that records preview before batch save.
Refs: modules/frontend
Why: the task card, proposal index, and frontend gitlink need to name the document-duty rework instead of the superseded duties tab.
Evidence: SELF commits 034faa4 in documents and 1b7ba77 in frontend. RDM f16287f is a sibling repository, not a Dev gitlink.
Impact: the duties settings entry now comes from the three-view frontend. Deployment and live-account acceptance remain unauthorized.
Refs: modules/documents/docs/proposals/2026-10-15-rdm-duty-matrix-rework.md
Co-authored-by: Cursor <cursoragent@cursor.com>
Why: establish the authorized task workspace and its initial baseline.
Evidence: preserved precheck receipt in .task/feature-rdm-duty-matrix.md; R0=4ba5c40a609dc07deb34d05761b00c29b44f2355.
Impact: task metadata only; the feature workspace starts at 4ba5c40a60.
Refs: .task/feature-rdm-duty-matrix.md