What is broken
The reference Guardian does not implement the mandatory system/ping liveness method defined by ACS v0.1.0 §13. A valid system/ping request is currently treated as an undispatched method and returns -32011 instead of the required decision: "allow" response.
Where
reference-implementations/agt/packages/guardian/src/server.ts
What the specification says, and what happens instead
Specification requirement
ACS v0.1.0 §13 defines system/ping as the system liveness method.
The specification requires a Guardian to:
- Always return
decision: "allow" for system/ping.
- Do so regardless of policy, signature, or session state.
- Not require a signature for
system/ping.
- Not write the ping into SessionContext.
- Treat ping timeout/connection failure as a transport-level signal rather than an ACS enforcement event.
The specification also states that system/ping MUST NOT return an ACS-specific error.
Actual behavior
I reproduced this against the running reference Guardian using a valid system/ping envelope:
curl -sS http://localhost:8787/acs \
-H 'content-type: application/json' \
-d '{
"jsonrpc":"2.0",
"id":1,
"method":"system/ping",
"params":{
"acs_version":"0.1.0",
"request_id":"11111111-1111-4111-8111-111111111111",
"timestamp":"2026-09-15T12:00:00.000Z",
"metadata":{
"agent_id":"test-agent",
"session_id":"22222222-2222-4222-8222-222222222222"
},
"payload":{}
}
}'
The Guardian returned:
{
"jsonrpc":"2.0",
"id":1,
"error":{
"code":-32011,
"message":"method not dispatched by this Guardian: system/ping",
"data":{
"method":"system/ping"
}
}
}
Expected behavior
The Guardian should recognize system/ping and return a successful response containing an ACS final result with:
It should not return the Guardian's METHOD_NOT_DISPATCHED_CODE (-32011).
Cross-check
The Python Guardian implementation in PR #22 implements system/ping according to the specification and returns the required allow response.
Impact on implementers
A client using system/ping for Guardian liveness detection cannot use the reference Guardian's implementation as specified.
This affects interoperability and liveness detection rather than a policy decision itself. A conformant client may send system/ping to determine whether the Guardian is available, but the reference implementation currently reports the method as unsupported.
Because §13 defines system/ping as the mandatory liveness method and explicitly requires it to always return allow, clients cannot use the reference Guardian for the specified liveness behavior.
The impact is primarily on ACS conformance and interoperability of the reference implementation.
Current Priority Scope
Feeds the runnable Guardian reference implementation
What is broken
The reference Guardian does not implement the mandatory
system/pingliveness method defined by ACS v0.1.0 §13. A validsystem/pingrequest is currently treated as an undispatched method and returns-32011instead of the requireddecision: "allow"response.Where
reference-implementations/agt/packages/guardian/src/server.ts
What the specification says, and what happens instead
Specification requirement
ACS v0.1.0 §13 defines
system/pingas the system liveness method.The specification requires a Guardian to:
decision: "allow"forsystem/ping.system/ping.The specification also states that
system/pingMUST NOT return an ACS-specific error.Actual behavior
I reproduced this against the running reference Guardian using a valid
system/pingenvelope:The Guardian returned:
{ "jsonrpc":"2.0", "id":1, "error":{ "code":-32011, "message":"method not dispatched by this Guardian: system/ping", "data":{ "method":"system/ping" } } }Expected behavior
The Guardian should recognize
system/pingand return a successful response containing an ACS final result with:{ "decision": "allow" }It should not return the Guardian's
METHOD_NOT_DISPATCHED_CODE(-32011).Cross-check
The Python Guardian implementation in PR #22 implements
system/pingaccording to the specification and returns the requiredallowresponse.Impact on implementers
A client using
system/pingfor Guardian liveness detection cannot use the reference Guardian's implementation as specified.This affects interoperability and liveness detection rather than a policy decision itself. A conformant client may send
system/pingto determine whether the Guardian is available, but the reference implementation currently reports the method as unsupported.Because §13 defines
system/pingas the mandatory liveness method and explicitly requires it to always returnallow, clients cannot use the reference Guardian for the specified liveness behavior.The impact is primarily on ACS conformance and interoperability of the reference implementation.
Current Priority Scope
Feeds the runnable Guardian reference implementation