--- id: CE-WP-0011 type: workplan title: "Attributes guide n:m lines, title migration, Add attribute placement" domain: infotech repo: citation-evidence repo_id: a677c189-b4e2-4f2a-9e48-faa482c277e6 topic_slug: citation_evidence_mvp topic_id: cee7bedf-2b48-46ef-8601-006474f2ad7a status: finished owner: codex created: "2026-07-30" updated: "2026-07-30" depends_on_workplan: CE-WP-0010 planning_order: 11 planning_priority: high spec_refs: - workplans/CE-WP-0010-annotate-attributes-ux.md - workplans/CE-WP-0003-form-binding-visual-guide.md state_hub_workstream_id: "e88d43c4-6ad3-4144-aa13-6e33f241cd9d" --- # CE-WP-0011 — Attributes guide polish Follow-on after CE-WP-0010 manual review. CE-WP-0010 shipped layout/filters; this workplan covers residual UX and n:m visual guide behaviour. ## User requirements (locked) 1. **Caption is always Attributes** — including sessions that still have the legacy persisted title `"Demo evidence-backed form"` in capture-state. 2. **Optical links** run from the **right edge of evidence cards** to the **left edge of attribute rows** (side-by-side Capture columns). 3. **n:m visualisation** — evidence ↔ attributes is many-to-many: - Selected **evidence** → draw lines to **all** linked attributes. - Selected **attribute** → draw lines to **all** linked evidence cards. - Evidence → citation highlight remains as in CE-WP-0010. 4. **Add attribute** control sits **below** the list of captured attributes (not in the header next to the title). ## Tasks ## T01 — Migrate legacy Capture titles on load ```task id: CE-WP-0011-T01 status: done priority: high state_hub_task_id: "dd01c991-316f-4c7f-983e-c8990474fd53" ``` Normalize `formSchema.title` when loading capture-state from localStorage. ## T02 — Overlay n:m + edge anchors ```task id: CE-WP-0011-T02 status: done priority: high state_hub_task_id: "9df7737d-ba67-4659-a941-33489d47f45f" ``` Update `Overlay` to resolve all links via binding service; card right → field left. ## T03 — Move Add attribute below list ```task id: CE-WP-0011-T03 status: done priority: medium state_hub_task_id: "ed7aa3d5-255f-4b2d-9ef3-945dc7cea4a0" ``` `FormRenderer` header keeps title + filter; add button and add form at bottom. ## T04 — Tests + finish ```task id: CE-WP-0011-T04 status: done priority: medium depends_on: [T01, T02, T03] state_hub_task_id: "b596cd0d-b3cc-4f50-9242-f0c3e41e99ae" ``` Unit/DOM coverage; mark workplan finished.