Skip to content

codegen-orchestrator-1696: Apply temporary QA access without product redeploy - #836

Merged
vladmesh merged 4 commits into
mainfrom
pipeline/codegen-orchestrator-1696
Oct 18, 2026
Merged

vladmesh merged 4 commits into
mainfrom
pipeline/codegen-orchestrator-1696

Conversation

@vladmesh

Copy link
Copy Markdown
Owner

What

Temporary QA grant and revoke no longer redeploy the product. Once the deploy lock is claimed and the access metadata is validated, process_deploy_job sends a validated temporary-access operation to _run_temporary_access_operation, before any product deploy preparation. That branch:

Why

Apply temporary QA access without product redeploy

How verified

CI runs Backend Docker-in-Docker Integration Tests, Build Service Image Candidates, Build Worker Base Image Candidates, CI Contract, Detect Changed Services, Fast Checks (Unit Tests), Lint (Ruff), Publish Service Image Release, Publish Worker Base Images, Required CI Gate, Service Image Entrypoint Imports on db682f838c71; the merge waits for them to pass.

Card: codegen-orchestrator-1696

…capability

A temporary-access operation Run is handled after claim and access validation and
before product deploy preparation: it reads the recorded target's existing
allocations, proves earlier deploy workflows stopped when the cleanup is flagged,
re-reads the grant and calls only the target's grant or revoke and access readback
with the stored USERS_GRANT_CAPABILITY. No checkout, environment contract, secret
write, workflow dispatch, SSH, smoke, settings seed or deployment record follows.
…through retries

A temporary-access operation takes its Run's dispatch claim before any external
write and renews it before each workflow cancellation and the product effect, so
a withdrawal that wins ends the Run cancelled with access unchanged. Every revoke
derives the earlier-workflow stop from the grant Run in both the scheduler and
the consumer, the fence checks the deploy lock before each cancellation request,
and a present access marker key with a null value fails closed.
The deploy fence now passes a per-cancellation guard to fence_workflow, so the
test asserts the positional call and the guard instead of the exact signature.
…cord

The resolver reads the project's complete deploy Run listing and judges each
grant operation Run of the record, so replacing the record's grant Run cannot
hide an admitted predecessor whose workflow may still act. Scheduler and direct
consumer share it; an unreadable listing or a missing current Run owes the stop.
@vladmesh
vladmesh merged commit 17c014f into main Oct 18, 2026
26 checks passed
@vladmesh
vladmesh deleted the pipeline/codegen-orchestrator-1696 branch October 18, 2026 11:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant