test(telemetry): the outage state, which is the one that was wrong #585
No reviewers
Labels
No labels
move-to-repo
coilyco-bridge-deploy
move-to-repo
coilyco-flight-deck-agent-compose
move-to-repo
coilyco-gaming-eco-app
move-to-repo
coilysiren-inbox
move-to-repo
unknown
🔒⚠️📦⚠️🔒 SANDBOXED 🔒⚠️📦⚠️🔒
autonomy
async-consult
autonomy
epic
autonomy
headless
autonomy
live-collab
c#
priority
P0
priority
P1
priority
P2
priority
P3
priority
P4
role/ai
role/creator
role/design
role/director
role/engineer
role/exec
role/human
role/ops
role/qa
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
coilyco-gaming/sirens-echo!585
Loading…
Reference in a new issue
No description provided.
Delete branch "qa/pin-the-outage-state"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The guard I shipped in #541 asserts a listing against a cache hit. #540 was neither — a failed connect spends a round trip and completes no listing, and it reported as a hit.
The fix added
mcp.tools.reachedand derivedcachedfrom it instead of fromlisted. That is the field carrying the correctness of the whole thing, and nothing asserted it.Three states, one table
A field is only worth anything if the cases it separates actually report differently, so all three go in one test rather than three green tests that could each pass while the field said the same thing.
One helper change
listingSpanAttributesno longer callst.FatalfwhenOpenerrors. An unreachable roster is one of the states under test rather than a broken fixture, and the span is written before the all-unavailable guard returns — which is precisely why the wrong value was observable in the first place.Mutation checked four ways
Each fails naming the state that broke:
The first is #540 exactly — revert the one-line derivation and this test names the regression and the map that proves it.
What this does not cover
#533. These attributes are correct and, on
sirens-echo, they are correct on a parentless single-span trace that no turn can reach. A right answer in an unreachable place is still the open half.Test-only. No production change.
Refs #540