test(deploy): add deploy targets e2e gate#470
Conversation
|
[PHASE: IMPL] [VERDICT: LANDED] #394 implementation landed on stacked branch Slice
Commits
Gate Evidence
Credential SplitThe green core uses Deno Deploy |
|
@openhands-agent model=openrouter/qwen/qwen3.7-max output=pr-comment use harness You are the IMPL-EVAL evaluator (separate session from the generator) for PR #470 SKILL
EvaluateRead the run artifacts ( Key scrutiny points (adversarial):
Write the verdict into |
OpenHands Agent — CompletedModel: openrouter/qwen/qwen3.7-max IMPL-EVAL #470 SummarySummaryConducted independent IMPL-EVAL evaluation of PR #470 ( ChangesArtifacts written:
Evaluated implementation (PR #470 commits):
ValidationIndependent re-run of acceptance gate: $ deno task e2e:cli run deploy.targets --cleanup --format pretty
> preflight.deno: Deno CLI is available
PASSED 8ms
> scaffold.init: Scaffold generated project
PASSED 519ms
> deploy.deno-deploy.plan: Preflight generated project for Deno Deploy
PASSED 1714ms
> deploy.compose-resolution: Resolve Docker and Compose deploy target routers
PASSED 568ms
> cleanup.userland-smoke-root: Remove deploy target smoke project
PASSED 190ms
Summary: passed=5 failed=0Exit code: 0 ✓ Unit tests: $ deno test --unstable-kv packages/cli/src/kernel/domain/deploy/deploy-target-port_test.ts packages/cli/src/kernel/domain/deploy/deno-deploy-target_test.ts packages/cli/src/public/features/deploy/target/target-deploy-command_test.ts
ok | 23 passed | 0 failed (178ms)Suite registration:
Lock churn: Verdict: PASSRationale:
Adversarial Scrutiny Points1. Coverage Authenticity: REAL Acceptance, Not Rubber Stamp
This exercises a non-trivial slice of the production deploy path. NOT a help-text dump.
Issue #394 ask: "at least one deploy target has real acceptance coverage." Met honestly: Deno Deploy plan is real. Compose/docker is resolution-level (documented limitation). 2. Credential Split DocumentedPlan §Non-Scope: "No credentialed Deno Deploy push/delete/status/logs; the PR documents this split." Not silently narrowing — explicitly documented as credential-free constraint. 3. Suite Registration HygieneConsistent with existing scaffold suite architecture:
4. Cleanup & Global State
5. Cast Budget & Lock Churn
6. Issue #394 Gate BoxesPer close-gate rule 12: boxes may only be checked for gates that RAN green. Evidence: gate:e2e ran green with exit code 0, summary passed=5/failed=0. Supervisor owns GitHub issue checkbox update per workflow. Remaining Risks
Process NoteHarness V3 protocol requires separate PLAN-EVAL before implementation. Drift.md documents this run proceeded as combined implementation-lane run (#393 + #394) without separate PLAN-EVAL session. This evaluation is the IMPL-EVAL pass against the committed state. RecommendationMerge PR #470 — all applicable gates pass, coverage authentic, no doctrine violations, cast budget honored, no lock churn. Credential-free deploy target acceptance is real and documented. Run: https://github.com/rickylabs/netscript/actions/runs/28742316883 |
Co-authored-by: openhands <openhands@all-hands.dev>
# Conflicts: # .llm/runs/beta3-cut-A-deploy--impl/commits.md # .llm/runs/beta3-cut-A-deploy--impl/context-pack.md # .llm/runs/beta3-cut-A-deploy--impl/plan.md # .llm/runs/beta3-cut-A-deploy--impl/research.md # .llm/runs/beta3-cut-A-deploy--impl/worklog.md
…bs/netscript into test/deploy-e2e-gate-394
|
[PHASE: IMPL] [VERDICT: LANDED] Fixed the suite registry expectation for the new Evidence:
Commit: |
Summary
Adds a real deploy e2e lane via the new
deploy.targetssuite. The suite is credential-free: it scaffolds a local project, runs Deno Deployplanas the production-path preflight, assertscomposeanddockerdeploy target resolution, and cleans up the scratch project.Scope
fix/deploy-compose-target-393; retarget tomainafter fix(deploy): register Aspire compose targets #468 merges.Slices
c16d59fae58115f2Validation
gate:e2eacceptance:deno task e2e:cli run deploy.targets --cleanup --format pretty— PASS; raw exit code 0; passed=5 failed=0.deno task e2e:cli suites— PASS; listsdeploy.targets.deno task e2e:cli gates deploy.targets— PASS; lists preflight, scaffold, Deno Deploy plan, compose resolution, cleanup.deno run --allow-read --allow-run .llm/tools/run-deno-check.ts --root packages/cli/e2e --ext ts,tsx— PASS; 77 files selected, 1 batch, 0 diagnostics.deno run --allow-read --allow-run .llm/tools/run-deno-lint.ts --root packages/cli/e2e --ext ts,tsx— PASS; 77 files selected, 1 batch, 0 findings.deno run --allow-read --allow-run .llm/tools/run-deno-fmt.ts --root packages/cli/e2e --ext ts,tsx— PASS; 77 files selected, 1 batch, 0 findings.Credential split: the suite covers Deno Deploy
planwithout credentials. Credentialed push/delete/status/logs remain outside this PR because they need cloud credentials; the local/CI core stays green without paid cloud access.Harness
.llm/runs/beta3-cut-A-deploy--impl/implDrift / Debt
mainafter fix(deploy): register Aspire compose targets #468 merges.