DEVX-182: feat(molecule): log lease owner and UTC expiry on emission
Post-merge / detect-and-configure (push) Successful in 1m58s
Post-merge / release-and-maintain (push) Successful in 2m45s

This commit was merged in pull request #356.
This commit is contained in:
2026-09-30 16:15:40 +00:00
parent 02a977c53f
commit e47778473c
3 changed files with 60 additions and 4 deletions
+49
View File
@@ -0,0 +1,49 @@
# DEVX-182: feat(molecule): release lease emission (ships DEVX-181)
- Task: DEVX-182
- Status: draft
## Problem
DEVX-181 landed on master but was never released: the squash subject
came out `DEVX-181: ci: retrigger validation` because the branch's last
commit was an empty `ci:` retrigger. git-cliff found no bump-worthy
commit, so `v0.55.5` is still latest and the S08 lease producer is
unshipped. A `feat:` merge is needed to cut the release — and while
shipping, the emission log line is upgraded from a bare count to the
actual lease owner and UTC expiry, which is what an operator needs when
debugging a cleanup race.
## Approach
REQ-1: `start_docker.main()` computes `lease_env()` once and logs
`owner=` + ISO-8601 `until=` alongside the export confirmation. The
single call also removes a latent second-boundary inconsistency where
`emit_github_env` and the count message each re-derived `now`.
REQ-2: Merge squash commit carries `feat(molecule):` so git-cliff cuts
the next minor release containing DEVX-181's emitter and this change.
## Test Plan
- Update `test_emits_lease_on_success` + `test_prints_and_exports` for
the new log format; keep 100 % coverage.
- `make pre-push` — full devx suite green.
- Post-merge: verify a `v*` tag > v0.55.5 exists and
`pip index versions devx` (Gitea PyPI) lists it.
## Deploy Plan
- Auto-merge; post-merge release job tags + publishes.
- Infra (OBL-INFRA-658) and GRM (GRM-174) consume the new pin.
## Rollback Plan
- Revert merge; the unreleased module remains dormant regardless.
## Acceptance Criteria
- [x] REQ-1: emission log includes owner and ISO-8601 expiry; lease env
computed once — covered by updated unit tests.
- [x] REQ-2: merge commit uses `feat(molecule):` so the release job
cuts a version bump.