Goal
Provide the shared product-owned command that deterministically regenerates a tenant workspace's canonical root uv.lock and frozen dependency export after nested workspace dependency changes.
Current Status
State: Completed on August 21, 2026.
PR #104 merged as a9e8589a822b58df9248d999d0c9ebeb36302c14 from exact reviewed head
9f0ea308da23fe7ec77e214dc335766c0a72ef88. Post-merge CI and CodeQL each
passed 2/2 jobs, local main was fast-forwarded cleanly, and the merged task
worktree and local branch were removed.
The product-owned platform dependencies normalize command is now available on
main. It normalizes in the staged tenant/shared-addon workspace, pins uv
resolution to the manifest Python version, preserves strict tenant CI checks,
emits source/tool/artifact provenance, rolls back the tenant lock on failure,
and is byte-idempotent. Exact-head Opus and Gemini reviews approved the change.
This issue no longer blocks cbusillo/odoo-tenant-opw#113. The next work belongs
in that repository's trusted write-back workflow; no additional devkit change is
required before starting it.
Finish Line
A deterministic product-owned command regenerates canonical tenant lock/export artifacts, reports provenance, passes strict post-checks, and is idempotent.
Acceptance Criteria
- Reuse the tracked workspace manifest and existing dependency-workspace inspection contract.
- Regenerate the canonical root
uv.lock without broad dependency upgrades.
- Produce the same frozen export shape used by tenant CI.
- Emit machine-readable source/tool/artifact provenance without secrets or private topology.
- Preserve measured no-change as a successful idempotent result.
- Fail before publishing when normalization or the strict post-check fails.
- Add focused unit/integration tests and update shared docs and
.github/github.json when command metadata changes.
Relationships
- Parent:
cbusillo/launchplane#1935.
- Blocks the OPW trusted write-back workflow leaf.
- Related dependency-health contract:
cbusillo/launchplane#1932.
Next Action
Implement the command against the current manifest/dependency workspace abstractions and prove it on a temporary nested workspace fixture before wiring any write-capable workflow.
Goal
Provide the shared product-owned command that deterministically regenerates a tenant workspace's canonical root
uv.lockand frozen dependency export after nested workspace dependency changes.Current Status
State: Completed on August 21, 2026.
PR #104 merged as
a9e8589a822b58df9248d999d0c9ebeb36302c14from exact reviewed head9f0ea308da23fe7ec77e214dc335766c0a72ef88. Post-merge CI and CodeQL eachpassed 2/2 jobs, local
mainwas fast-forwarded cleanly, and the merged taskworktree and local branch were removed.
The product-owned
platform dependencies normalizecommand is now available onmain. It normalizes in the staged tenant/shared-addon workspace, pins uvresolution to the manifest Python version, preserves strict tenant CI checks,
emits source/tool/artifact provenance, rolls back the tenant lock on failure,
and is byte-idempotent. Exact-head Opus and Gemini reviews approved the change.
This issue no longer blocks
cbusillo/odoo-tenant-opw#113. The next work belongsin that repository's trusted write-back workflow; no additional devkit change is
required before starting it.
Finish Line
A deterministic product-owned command regenerates canonical tenant lock/export artifacts, reports provenance, passes strict post-checks, and is idempotent.
Acceptance Criteria
uv.lockwithout broad dependency upgrades..github/github.jsonwhen command metadata changes.Relationships
cbusillo/launchplane#1935.cbusillo/launchplane#1932.Next Action
Implement the command against the current manifest/dependency workspace abstractions and prove it on a temporary nested workspace fixture before wiring any write-capable workflow.