From the fresh-context independent review of PR #3014, MEDIUM/P2. Documentation truthfulness in the declared Source of Truth; no executable instruction is wrong, so it is non-blocking under global law 2a.
Gap
docs/STATUS.md states, in the 2026-09-11 work-model delivery paragraph:
Assignment #2240 is NOT shipped. Its PR #2977 is open and parked on HIGH #2981 ... so nothing about multiple card assignments or explicit import mapping is delivered.
The "explicit import mapping is delivered" half of that sentence is measurably stale on main (read 2026-09-12):
POST /api/import/boards/preview (BoardImportPreviewController.cs), POST /api/import/boards and POST /api/import/boards/json (ExportController.cs) are routed and [Authorize]d.
ImportBoardCoreAsync in BoardJsonExportImportService.cs accepts sourceAssignees: [{sourceKey, displayName}] and an assigneeMappings object, rejects unknown keys, missing mappings and targets other than the importer or null, and applies the mapping through Card.ReplaceAssignments.
docs/product/CARD_ASSIGNMENTS.md documents that contract, and CardAssignmentApiTests covers it.
- The
AddCardAssignments migration is on main.
What is genuinely parked under #2240 is the wider multiple-assignments product slice (PR #2977, HIGH #2981).
PR #3014 sharpened the contradiction by adding a paragraph that records a bounded repair to that same import validator, and hedged around the stale sentence rather than editing another lane's delivery claim.
Why it matters
docs/STATUS.md is labelled "Source of Truth" and .claude/rules/docs.md tells every later session to reconcile its claims against code. An agent orienting from that sentence concludes the import mapping path does not exist, and either rebuilds it or refuses to touch it.
Suggested acceptance
No implementation claim. Related: #3014, #2980, #2240, #2977, #2981.
From the fresh-context independent review of PR #3014, MEDIUM/P2. Documentation truthfulness in the declared Source of Truth; no executable instruction is wrong, so it is non-blocking under global law 2a.
Gap
docs/STATUS.mdstates, in the 2026-09-11 work-model delivery paragraph:The "explicit import mapping is delivered" half of that sentence is measurably stale on
main(read 2026-09-12):POST /api/import/boards/preview(BoardImportPreviewController.cs),POST /api/import/boardsandPOST /api/import/boards/json(ExportController.cs) are routed and[Authorize]d.ImportBoardCoreAsyncinBoardJsonExportImportService.csacceptssourceAssignees: [{sourceKey, displayName}]and anassigneeMappingsobject, rejects unknown keys, missing mappings and targets other than the importer or null, and applies the mapping throughCard.ReplaceAssignments.docs/product/CARD_ASSIGNMENTS.mddocuments that contract, andCardAssignmentApiTestscovers it.AddCardAssignmentsmigration is on main.What is genuinely parked under #2240 is the wider multiple-assignments product slice (PR #2977, HIGH #2981).
PR #3014 sharpened the contradiction by adding a paragraph that records a bounded repair to that same import validator, and hedged around the stale sentence rather than editing another lane's delivery claim.
Why it matters
docs/STATUS.mdis labelled "Source of Truth" and.claude/rules/docs.mdtells every later session to reconcile its claims against code. An agent orienting from that sentence concludes the import mapping path does not exist, and either rebuilds it or refuses to touch it.Suggested acceptance
mainat the time of the edit rather than against this issue's snapshot.No implementation claim. Related: #3014, #2980, #2240, #2977, #2981.