test(stack): prove registration lease lifecycle - #6
Conversation
XnLemon
left a comment
There was a problem hiding this comment.
Re-reviewed current HEAD 200ec3d. I found no remaining required-closure issue. The acceptance proves the same exact Release advances populated -> newer empty -> newer populated, issues only one Invocation after empty convergence, distinguishes pre-transport DEPENDENCY_ERROR from post-selection AGENT_UNAVAILABLE, verifies the matching Ledger failure, and proves replacement recovery without Router restart. All required Stack CI, including backend and browser, is green.
中文
已复审当前 HEAD 200ec3d,未发现剩余的 required-closure 问题。验收证明同一精确 Release 按 populated -> 更新的 empty -> 更新的 populated 推进;empty 收敛后只发起一次 Invocation,区分 transport 前的 DEPENDENCY_ERROR 与选中实例后的 AGENT_UNAVAILABLE,验证对应 Ledger failure,并证明无需重启 Router 即可由替换实例恢复。Stack required CI(含 backend/browser)全部绿色。
Summary
populatedto a neweremptylocal revision, then require the first and only acceptance Invocation to return correlatedDEPENDENCY_ERRORwith a matching Ledger failurepopulatedrevision, and prove recovery without restarting RouterStack dependencies
codex/nacos-snapshot-refresh)a737184be63533a578355f98d1b8b94648e05910(includes the merged #106 registration lease)143685bebf3dc88819d3192e9047c1204a2f871dNo local replace, copied source, floating ref, direct Consumer-to-Provider path, Invocation retry, stale success, or alternate provider/Release is introduced.
Failure semantics
The previous backend job expected
AGENT_UNAVAILABLEafter lease removal, but current Router semantics correctly return correlatedDEPENDENCY_ERRORwhen exact-Release topology selection has no ready endpoint.AGENT_UNAVAILABLEremains the distinct post-selection transport failure. The authenticated status assertion proves Router consumedemptybefore the Invocation, so the test no longer infers watch behavior from either public error and does not retry the Invocation to obtain the expected result.Validation
go run ./cmd/manifest-validator components.jsongo build ./...go test -count=1 ./internal/manifestgo test -race ./internal/manifestgo vet ./...go test -tags=e2e -run '^$' ./tests/backendgo mod verifygo mod tidyandgit diff --checkThe GitHub backend job is the authoritative live-container acceptance.
Fallback delta: removed 0, retained 0, added 0, net +0.
Added fallback evidence: none.