mirror of
https://github.com/stablyai/orca.git
synced 2026-09-23 08:02:31 +00:00
* refactor(agent-status): isolate legacy status ingress * fix(agent-hooks): move advertised-capability source onto the ingest envelope ingestRemote() gained a third positional argument in this PR (advertisedAgentStatusCapabilities) to satisfy a new ratchet requiring every legacy-ingress call site to name its capability source. Both production callers pass the same constant every time, so the argument carries zero runtime information — but Vitest's toHaveBeenCalledWith matches argument count exactly, so the pre-existing SSH relay integration test (which asserts a 2-argument call) started failing even though nothing about the actual admission decision changed. Capabilities are a property of the producing peer/connection, not an orthogonal call parameter, so move the field onto the envelope object instead of adding a third positional argument: ingestRemote reads envelope.advertisedAgentStatusCapabilities (defaulting to the unadvertised-legacy-peer set), and both call sites stamp the constant onto their envelope literal. Call arity stays at two arguments, so the pre-existing evidence test needs no change. The envelope never crosses the wire in either caller: SSH rebuilds it field-by-field from the RPC params, and the WSL path copies (never mutates) the wire-deserialized notification before stamping the field on, so this is purely an internal main-process shape change. Also strengthens the ingress ratchet test that required this: it previously only checked that the capability constant's name appeared somewhere in each caller's source, which a stray unused import could satisfy. It now asserts the actual `advertisedAgentStatusCapabilities: AGENT_STATUS_LEGACY_UNADVERTISED_PEER_CAPABILITIES` key:value binding is present.
30 lines
1.0 KiB
TypeScript
30 lines
1.0 KiB
TypeScript
import { describe, expect, it } from 'vitest'
|
|
|
|
import {
|
|
AGENT_STATUS_2A_SERVING_READINESS,
|
|
agentStatusRunServingGatePasses,
|
|
advertisedAgentStatusRunCapabilities,
|
|
isAgentStatusRunServingAdvertised
|
|
} from './agent-status-serving-readiness'
|
|
|
|
describe('agent-status run serving readiness', () => {
|
|
it('keeps run serving unadvertised throughout 2A', () => {
|
|
expect(isAgentStatusRunServingAdvertised(AGENT_STATUS_2A_SERVING_READINESS)).toBe(false)
|
|
expect(advertisedAgentStatusRunCapabilities(AGENT_STATUS_2A_SERVING_READINESS)).toEqual([])
|
|
})
|
|
|
|
it('requires both serving readiness and an empty current-producer manifest', () => {
|
|
const ready = { servingReady: true }
|
|
expect(
|
|
agentStatusRunServingGatePasses({
|
|
readiness: ready,
|
|
currentProducerManifest: [{ caller: 'still-legacy' }]
|
|
})
|
|
).toBe(false)
|
|
expect(agentStatusRunServingGatePasses({ readiness: ready, currentProducerManifest: [] })).toBe(
|
|
true
|
|
)
|
|
expect(advertisedAgentStatusRunCapabilities(ready)).toEqual([])
|
|
})
|
|
})
|