Context
Spun off from #161. Under the InfoItem-first model (#160), Archiver can add new sub_aspect bindings to an InfoItem over time. The WatchedItem detail page (introduced in #161) surfaces these as "N new sub_aspects available since last_reviewed_at" and provides a one-click Mark reviewed action.
The design (Section 5.3 of docs/plans/2026-05-15-watched-item-infoitem-first-design.md) also calls for a bulk "Add Watches for these" action that creates Watches against all new sub_aspect bindings in one operation and stamps last_reviewed_at in the same transaction.
#161 ships Mark-reviewed only; this issue tracks the bulk-add follow-up.
Scope
- Detail-page UI: per-binding checkboxes + "Add Watches for selected" button (and/or "Add Watches for all new").
- Server-side handler: bulk-creates Watch rows under the WatchedItem with sensible defaults (operator-overridable post-create on the standard Watch edit form), stamps
last_reviewed_at = now() in the same transaction.
- Audit-log entries per created Watch.
Acceptance
- Operator can select N new sub_aspect bindings and create N Watches in one action.
last_reviewed_at stamps atomically with the inserts (single transaction).
- New Watches inherit defaults from the parent WatchedItem via the existing live-inheritance chain — no per-row defaults stored at create time.
Related
Context
Spun off from #161. Under the InfoItem-first model (#160), Archiver can add new
sub_aspectbindings to an InfoItem over time. The WatchedItem detail page (introduced in #161) surfaces these as "N new sub_aspects available sincelast_reviewed_at" and provides a one-click Mark reviewed action.The design (Section 5.3 of docs/plans/2026-05-15-watched-item-infoitem-first-design.md) also calls for a bulk "Add Watches for these" action that creates Watches against all new sub_aspect bindings in one operation and stamps
last_reviewed_atin the same transaction.#161 ships Mark-reviewed only; this issue tracks the bulk-add follow-up.
Scope
last_reviewed_at = now()in the same transaction.Acceptance
last_reviewed_atstamps atomically with the inserts (single transaction).Related