Objective
Confirm every preview-enabled product is enrolled in Launchplane-owned desired-state, inventory, lifecycle planning, and orphan cleanup backstop behavior.
Finish Line
SYO, VeriReel, and Odoo CM have Launchplane-managed preview lifecycle backstop coverage; OPW and discord-blue are explicitly preview-disabled until a preview plan exists.
Current Status
State: SYO and Odoo CM lifecycle backstop coverage is now live and verified. #563 deployed the profile-driven /v1/previews/lifecycle-sweep route. #568 fixed the deploy workflow parser limit from #567 and deployed the missing sweep grants. Report-only run 25632665732 succeeded with two profiles: Odoo CM clean and SYO orphaned pr-99; apply run 25632675019 destroyed SYO pr-99; post-cleanup report-only run 25632685375 reported SYO actual_count=0 and orphaned_slugs=[].
Next action: Enroll or repair VeriReel so the lifecycle sweep includes verireel / verireel-testing, then rerun report-only and capture clean/cleanup evidence for all preview-enabled products.
Blocked by: none known.
Last verified: 2026-05-10; Preview Lifecycle run 25632685375 returned only odoo-tenant-cm / cm and sellyouroutboard / sellyouroutboard. VeriReel grants exist in deploy bootstrap, but the live profile sweep did not include a VeriReel profile, so #508 remains open.
Scope
- SYO preview lifecycle backstop enrollment.
- VeriReel preview lifecycle backstop enrollment.
- Odoo CM preview lifecycle backstop enrollment.
- OPW explicit non-preview-enabled status until a preview plan exists.
- Discord-blue explicit preview-disabled status.
- Report-only cleanup before destructive cleanup.
- Relationship to old product repo cleanup/teardown workflows.
Acceptance Criteria
- Latest desired-state and inventory scan can be produced for each preview-enabled product/context.
- Lifecycle plan distinguishes keep, missing, and orphaned preview slugs.
- Cleanup defaults to report-only and requires explicit apply for destructive provider cleanup.
- Destroy actions refuse to delete provider state without matching Launchplane preview records.
- Product docs/issues state whether each product is enrolled, deferred, or not preview-enabled.
- VeriReel appears in live Preview Lifecycle report-only output when preview-enabled.
Relationships
Validation
- Run report-only lifecycle workflow for preview-enabled contexts.
- Inspect recorded desired-state, inventory, plan, and cleanup records.
- Destructive cleanup smoke only on a disposable/orphaned preview with explicit operator approval.
Decisions
- Launchplane owns recurring preview lifecycle cleanup.
- Product repos should not carry long-term repo-local preview janitors.
preview.enabled=false is the right product-profile state for products where previews are intentionally not applicable, instead of a separate preview_not_applicable model.
- Cleanup should be automatic for products where
preview.enabled=true; there should not be a separate cleanup knob.
Open Questions
- Is VeriReel absent from the live sweep because its product profile is missing, preview-disabled, or because its preview profile shape is still legacy-only?
Objective
Confirm every preview-enabled product is enrolled in Launchplane-owned desired-state, inventory, lifecycle planning, and orphan cleanup backstop behavior.
Finish Line
SYO, VeriReel, and Odoo CM have Launchplane-managed preview lifecycle backstop coverage; OPW and discord-blue are explicitly preview-disabled until a preview plan exists.
Current Status
State: SYO and Odoo CM lifecycle backstop coverage is now live and verified. #563 deployed the profile-driven
/v1/previews/lifecycle-sweeproute. #568 fixed the deploy workflow parser limit from #567 and deployed the missing sweep grants. Report-only run 25632665732 succeeded with two profiles: Odoo CM clean and SYO orphanedpr-99; apply run 25632675019 destroyed SYOpr-99; post-cleanup report-only run 25632685375 reported SYOactual_count=0andorphaned_slugs=[].Next action: Enroll or repair VeriReel so the lifecycle sweep includes
verireel / verireel-testing, then rerun report-only and capture clean/cleanup evidence for all preview-enabled products.Blocked by: none known.
Last verified: 2026-05-10; Preview Lifecycle run 25632685375 returned only
odoo-tenant-cm / cmandsellyouroutboard / sellyouroutboard. VeriReel grants exist in deploy bootstrap, but the live profile sweep did not include a VeriReel profile, so #508 remains open.Scope
Acceptance Criteria
Relationships
Validation
Decisions
preview.enabled=falseis the right product-profile state for products where previews are intentionally not applicable, instead of a separatepreview_not_applicablemodel.preview.enabled=true; there should not be a separate cleanup knob.Open Questions