Task: Re-scope podman-fleet tasks after the pivot to systemd
Table of Contents
This page documents a task in the Containerize the ORE Studio service runtime and verify it on a remote WSL host story. It captures the goal, current status, acceptance, and any notes or results.
Goal
The story's task list still had two BACKLOG tasks written against the original podman-pod/compose orchestration plan, before the story's Goal pivoted to systemd (native units locally, Quadlet units on remote/podman hosts) as the single orchestration substrate. Re-scope both so the backlog matches the current design instead of describing work that's already superseded or whose scope has narrowed:
- "Roll out per-service containers to the remaining 17 services" – its whole plan (one podman pod/compose spec running 18 containers) is now the Quadlet generator task's job, reading the same service_definition/service_dependency graph. Abandon it rather than leave a dead task in the backlog.
- "Mirror podman events into service_instance/service_event tables" – still valid, but only for remote/Quadlet-managed hosts now; local dev runs native systemd units with no podman involved at all. Narrow its description/goal accordingly and mark it blocked on the Quadlet generator task landing (nothing to watch until then).
Status
| Field | Value |
|---|---|
| State | DONE |
| Parent story | Containerize the ORE Studio service runtime and verify it on a remote WSL host |
| Now | Nothing. |
| Waiting on | Nothing. |
| Next | Nothing. |
| Last touched | 2026-07-31 |
Acceptance
- Roll out per-service containers to the remaining 17 services is marked ABANDONED, with a Notes entry explaining the supersession and linking to the Quadlet generator task.
- Mirror podman events' description/Goal is narrowed to remote/Quadlet hosts, and its #+blocked_on/Status row point at the Quadlet generator task.
- The story's
* Taskstable rows for both match the updated task docs.
Plan
(Implementation strategy. Written when work starts; key decisions
are distilled into the parent story's * Decisions at close, but the
plan itself stays — it is the historical record of what we did.)
Notes
Test Scenarios
Manual QA scenarios (scaffolded via compass add test_scenario, run
through the QA Validation Runner panel) that verify this task. Link
new ones here as they're created; the scenario doc itself links back
via its "Verifies task" field.
| Scenario | State | Notes |
|---|---|---|
PRs
| PR | Title |
|---|---|
| #1798 | [agile] Re-scope podman-fleet tasks after the pivot to systemd |
Review
| # | Comment summary | File | Decision | Notes |
|---|---|---|---|---|
| 1 | Watcher task's Goal paragraph has a dangling "own" with no subject after the edit | task_watch-podman-events-for-service-instance-tracking.org | Fixed | Reworded to "…remote/Quadlet podman hosts, where containers – not process_supervisor – own the actual process lifecycle." |
| 2 | State left BACKLOG despite setting blocked_on/blocked_since; compass.py's blocked-task detection keys off State == BLOCKED | task_watch-podman-events-for-service-instance-tracking.org | Fixed | State -> BLOCKED, matching the deferred/task_qt-composite-history-dialog.org convention; story.org's Tasks-table row synced too. |
| 3 | Acceptance section not narrowed to remote/Quadlet-only scope | task_watch-podman-events-for-service-instance-tracking.org | Fixed | Reworded acceptance bullets to remote/Quadlet hosts, added a bullet noting local dev is unaffected. |
Result
Re-scoped both podman-fleet tasks to match the story's pivot to systemd:
- "Roll out per-service containers to the remaining 17 services" marked ABANDONED, with a Notes entry pointing at the Quadlet generator task (34E28952) as its superseding replacement.
- "Mirror podman events into service_instance/service_event tables"
narrowed to remote/Quadlet hosts only (local dev now runs native
systemd units, no podman involved), and marked blocked on the
Quadlet generator task landing (
#+blocked_onset, Status row updated). - story.org's
* Taskstable rows synced for both.
No code changes – doc-only backlog housekeeping.