coldpass

mathisarends/canon

GitHub ↗ · How this check works

Per-setup public labels: Linux / Haiku: Works

Static status badge · SVG · read-only JSON. Embed with ![Coldpass status](https://coldpass.dev/badge/mathisarends--canon.svg).

asynciocode-generationdependency-injectiondishkafastapijson-rpc

Works

Only older checks are saved; no current product test.

Answers apply to each recorded setup, revision and operation. Earlier observations remain in Run details.

Tested on Linux
PlatformHaikuLuna
Linuxyes

Linux / Haiku 5.5: yes · Oct 18, 2026 · 18a56ea28764 · claude-code / 2.1.300 (Claude Code)
Recorded operation: <host-path> --app-dir examples stack_service:app · local HTTP start + response check

Needs keys or browser
None seen
Issue
none found in recorded check

Safety: no observations were recorded for the selected revision. Functional results do not establish a safety result.

Run details

Haiku 5.5

Native agent · Checked operation passed

Checked operation <host-path> --app-dir examples stack_service:app · local HTTP start + response check

Agent-reported scope: Start the composed stack example (HTTP + SSE + RPC on one Dishka container) and exercise its HTTP/SSE endpoints: POST /counter returned {"value":1}, GET /counter/events emitted a typed counter.changed SSE event.

Run details
run
mathisarends--canon-claude-haiku-5-5-1792338503531275347
date
Oct 18, 2026
time to working
not recorded
product hosting / execution
Local HTTP server in the guest
recorded operation scope
product operation
model
claude-haiku-5-5
agent / version
claude-code / 2.1.300 (Claude Code)
platform
linux
reported cost
$0.008006
Recorded source
https://github.com/mathisarends/canon
Tool transport
mcp-assigned-vm
Test version
readme-03aea4c41d53955e3723c330e9927d2a9df627f6642624cc0078a97c73a53c8a
revision
18a56ea28764cdb1efeace6738760f02aca11246
What the agent did

Start the composed stack example (HTTP + SSE + RPC on one Dishka container) and exercise its HTTP/SSE endpoints: POST /counter returned {"value":1}, GET /counter/events emitted a typed counter.changed SSE event.

cd <host-path> && ls -la && cat README.md 2>/dev/null | head -200
ls <host-path>; cat <host-path> 2>/dev/null | head -50; echo CDP=$CDP_URL $<env-var>
cd <host-path> && cat docs/contributing.md; echo ----; ls packages/*; echo ----; cat examples/*.md 2>/dev/null | head -80; ls examples/reference-service; cat .python-version; which uv python3; python3 --version
cd <host-path> && (command -v uv || (curl -LsSf https://astral.sh/uv/install.sh | sh)) 2>&1 | tail -3; export PATH=$HOME/.local/bin:$PATH; uv --version && uv sync --locked --all-packages --all-groups 2>&1 | tail -15
cd <host-path> && export PATH=$HOME/.local/bin:$PATH && (nohup uv run --locked uvicorn examples.stack_service:app --port 8765 > /tmp/stack.log 2>&1 &) ; sleep 8; curl -s -X POST localhost:8765/counter; echo; curl -s -m 3 localhost:8765/counter/events | head -5; echo; curl -s -X POST localhost:8765/rpc -H 'content-type: application/json' -d '{"jsonrpc":"2.0","id":1,"method":"counter.increment","params":{}}'; echo; tail -5 /tmp/stack.log
cd <host-path> && ls examples; ls packages/fastapi-canon/examples | head; grep -rn "stack_service" --include=*.py --include=*.md . | grep -v .venv | head
cd <host-path> && .venv/bin/python -c "import examples.stack_service as m; print(m.app)" 2>&1 | tail -8; ls -la examples/ | head; cat /tmp/stack.log | tail -20
cd <host-path> && .venv/bin/python -c "import examples; print(examples, getattr(examples,'__path__',None), getattr(examples,'__file__',None))" 2>&1; ls .venv/lib/python3.*/site-packages | grep -i example; cat .gitignore
cd <host-path> && cat examples/stack_service.py
cd <host-path> && (nohup .venv/bin/uvicorn --app-dir examples stack_service:app --port 8765 > /tmp/stack.log 2>&1 &) ; sleep 6; curl -s -X POST localhost:8765/counter; echo; curl -s -m 3 localhost:8765/counter/events | head -5; echo; curl -s -X POST localhost:8765/rpc -H 'content-type: application/json' -d '{"jsonrpc":"2.0","id":1,"method":"counter.increment","params":{}}'; echo; tail -5 /tmp/stack.log
cd <host-path> && pkill -f "uvicorn --app-dir examples" ; sleep 2; (ss -ltn | grep -E ':(8000|8765)\b' || echo "ports free"); mkdir -p .coldpass && cat > .coldpass/probe.json <<'EOF'
{"kind":"http","argv":["<host-path>","env":{}}
EOF
cat > .coldpass/report.json <<'EOF'
{"outcome":"working","operation":"Start the composed stack example (HTTP + SSE + RPC on one Dishka container) and exercise its HTTP/SSE endpoints: POST /counter returned {\"value\":1}, GET /counter/events emitted a typed counter.changed SSE event.","operation_scope":"HTTP and SSE verified. /rpc is a WebSocket route and was not exercised over WebSocket (a plain POST returned 404, as expected for a socket route). Full pytest/lint suites intentionally not run.","steps":["Read README.md and docs/contributing.md","curl -LsSf https://astral.sh/uv/install.sh | sh (uv 0.13.1 installed to ~/.local/bin)","uv sync --locked --all-packages --all-groups (succeeded)","uvicorn examples.stack_service:app (documented in docs/contributing.md) failed to import, see deviations","uvicorn --app-dir examples stack_service:app --port 8765 started; POST /counter and GET /counter/events verified; server stopped"],"deviations":["docs/contributing.md command 'uv run --locked uvicorn examples.stack_service:app' fails with ModuleNotFoundError: No module named 'examples.stack_service'. Cause: the editable package packages/fastapi-canon ships an examples/ package that shadows the root examples/ directory. Ran '.venv/bin/uvicorn --app-dir examples stack_service:app' instead (no source edits)."],"stuck_step":null,"main_blocker":null,"suggested_fix":"Rename or remove packages/fastapi-canon/examples (or give the root examples/ a distinct import name) so 'examples.stack_service' resolves to the root example; the docs command then works as written."}
EOF
<env-var>=<host-path> python3 -I <host-path> --validate
cd <host-path> && ls -la .coldpass 2>&1; pgrep -af "stack_service" | grep -v pgrep || echo "no server running"; (ss -ltn | grep -E ':(8000|8765)\b' || echo "ports free")
cd <host-path> && mkdir -p .coldpass && cat > .coldpass/probe.json <<'EOF'
{"kind":"http","argv":["<host-path>","env":{}}
EOF
cat > .coldpass/report.json <<'EOF'
{"outcome":"working","operation":"Start the composed stack example (HTTP + SSE + RPC on one Dishka container) and exercise its HTTP/SSE endpoints: POST /counter returned {\"value\":1}, GET /counter/events emitted a typed counter.changed SSE event.","operation_scope":"HTTP and SSE verified. /rpc is a WebSocket route and was not exercised over WebSocket (a plain POST returned 404, as expected for a socket route). Full pytest/lint suites intentionally not run.","steps":["Read README.md and docs/contributing.md","curl -LsSf https://astral.sh/uv/install.sh | sh (uv 0.13.1 installed to ~/.local/bin)","uv sync --locked --all-packages --all-groups (succeeded)","uv run --locked uvicorn examples.stack_service:app (documented in docs/contributing.md) failed to import, see deviations","uvicorn --app-dir examples stack_service:app --port 8765 started; POST /counter and GET /counter/events verified; server stopped"],"deviations":["docs/contributing.md command 'uv run --locked uvicorn examples.stack_service:app' fails with ModuleNotFoundError: No module named 'examples.stack_service'. Cause: the editable package packages/fastapi-canon ships an examples/ package that shadows the root examples/ directory. Ran '.venv/bin/uvicorn --app-dir examples stack_service:app' instead (no source edits)."],"stuck_step":null,"main_blocker":null,"suggested_fix":"Rename or remove packages/fastapi-canon/examples (or give the root examples/ a distinct import name) so 'examples.stack_service' resolves to the root example; the docs command then works as written."}
EOF
<env-var>=<host-path> python3 -I <host-path> --validate; echo "rc=$?"