Pod

Yes, this is on purpose. Pod is built for agents, so the default page is plain HTML.
Human? View the normal website.
Agent? You probably prefer /mcp/srdcheck/issues.md or /mcp/srdcheck/issues.json, or Pod over MCP.

Reported issues for srdcheck

Pod holds 11 of 11 problems reported by people outside the maintainer team. Issues filed by the project's own owners, members and collaborators are excluded entirely — a maintainer's release checklist is not a warning to a prospective user.

Back to srdcheck.

Most discussed

[P1] Prevent MCP tool proliferation from degrading agent discovery

Problem

The MCP surface already contains 22 tools and grows one tool per mechanic. Similar names and overlapping responsibilities increase tool-selection errors, token cost, and repair loops for agents.

Acceptance criteria

Read the thread · 2026-08-01 · closed · 4 comments

[P1] Represent asserted facts, derived rules, and table decisions separately

Problem

Current requests and verdicts do not distinguish caller assertions from facts derived by srdcheck or from DM/table rulings. This makes receipts ambiguous and can turn an incorrect perception/ASR assertion into an authoritative-looking rules result.

Acceptance criteria

Read the thread · 2026-08-01 · closed · 1 comment

SKILL.md states the wrong meaning and handling for exit 2, omitting refusal contract 1.1

SKILL.md:28-30 tells consuming agents:

Exit 2 [...] means the question is outside the loaded rulesets or genuinely up to the DM. Route it to a human ruling; do not retry, rephrase, or guess.

The numeric table is correct — 0 legal / 1 illegal / 2 cannot-adjudicate / 3 usage error all verified against the CLI, --schema, and tool.json. The breach is semantic.

srdcheck's real exit-2 surface is refusal contract 1.1 (srdcheck/verdict.py:73-104), published via `srdcheck capabilitie

Read the thread · 2026-08-18 · open · 0 comments

[P1] Require condition-sensitive facts before confident roll verdicts

Problem

Several condition-sensitive checks return confident roll composition when facts required by the cited rule were omitted.

Examples found in the refusal audit:

Read the thread · 2026-08-01 · closed · 0 comments

[P0] Validate event.apply state and conditional event facts

Problem

event.apply accepts state with only { "type": "object" } instead of enforcing the shipped state schema. A schema-valid MCP call containing state.turn = {} and a move event reaches movement_ft_spent and raises KeyError, which becomes an internal tool-execution failure rather than an honest verdict.

Conditional event facts are also defaulted optimistically. A damage event without amount returns exit 0 and records “Takes 0 damage”; a move event without its distance can

Read the thread · 2026-08-01 · closed · 0 comments

[P1] Define and test concurrency and multi-engine behavior

Problem

Lazy module globals, dynamic module names, and adapter loading have no documented behavior under threads, multiple Engine instances, adapters with colliding names, or long-running MCP processes.

Acceptance criteria

Read the thread · 2026-08-01 · open · 0 comments

[P1] Define a trust and sandbox model for executable adapters

Problem

Adapters load handlers.py through importlib, which is arbitrary code execution. That is acceptable for explicitly trusted local packages but unsafe for a casual adapter catalog or hosted service.

Acceptance criteria

Read the thread · 2026-08-01 · open · 0 comments

[P0] Add clean wheel and sdist release CI with registry smoke tests

Problem

No release pipeline proves that a tag builds reproducible artifacts which work after cold installation. The checked-in wheel already demonstrates a repository-versus-package behavior gap.

Acceptance criteria

Read the thread · 2026-08-01 · closed · 0 comments

Most recent

[P0] Enforce complete JSON Schema validation at the query boundary

Problem

The engine rejects unknown keys but does not generically enforce required fields, types, enums, numeric bounds, array items, or all nested constraints. Validation remains handler-dependent and inconsistent.

Acceptance criteria

Read the thread · 2026-08-01 · closed · 0 comments

[P0] Harden MCP JSON-RPC and protocol compliance

Problem

The MCP server echoes the client protocol version instead of negotiating support, silently drops malformed JSON, lacks complete parse/invalid-request handling, and advertises no output schemas. Strict clients may fail or hang in ambiguous ways.

Acceptance criteria

Read the thread · 2026-08-01 · closed · 0 comments

[P0] Establish one canonical engine, adapter, MCP, and metadata version contract

Problem

The release reports conflicting versions: package/server metadata says 0.5.0, MCP SERVER_INFO says 0.2.0, the SRD adapter says 0.2.0, examples mention 1.0.0, and tool.json is stale. Agents and registries cannot determine the active capability contract.

Acceptance criteria

Read the thread · 2026-08-01 · closed · 0 comments

The remaining reports are on the project's issue tracker.