{ "schema": "fable.factory_live_readonly.receipt.v1", "createdAt": "2026-07-04T17:15:16.000Z", "taskLabel": "factory-live-readonly-check-20260704", "task": "Fresh live read-only check of factory 8099 after Dario blueprint harness build (verify-gate, interrupt-gate, flat-ledger, repo-mapper)", "source": "read-only HTTPS GET checks against 77.42.112.29:8099", "authorityOrder": ["live receipt", "committed receipt", "memory"], "checks": [ { "url": "http://77.42.112.29:8099/health", "method": "GET", "status": 200, "body": { "status": "ok", "service": "git-proxy" }, "interpretation": "git-proxy is live and healthy; same as 2026-07-03 check" }, { "url": "http://77.42.112.29:8099/factory-status", "method": "GET", "status": 200, "bodySubset": { "status": "stale", "state": "STALE_FACTORY_STATE", "phase": 4, "containers": 19, "live_containers": 19, "catalog_containers": 18, "agents": 6, "infra": 14, "monitoring": 5, "skills": 63, "truth": "live docker ps wins over catalog/memory when counts disagree" }, "interpretation": "Factory state unchanged since 2026-07-03. Still 19 live containers (memory says 25). Agents=6, infra=14, monitoring=5, skills=63 all match. Phase 4 confirmed." }, { "url": "http://77.42.112.29:8099/deploy", "method": "GET", "status": 404, "body": { "error": "not found" }, "interpretation": "Read-only GET /deploy returns 404. No deploy endpoint exposed on read-only path. Memory claim that /deploy is connected to deploy-webhook is not confirmed." } ], "memoryReconciliation": [ { "memoryClaim": "25 Docker containers all UP", "liveReceipt": "factory-status reports 19 live containers, 18 catalog, status stale", "decision": "memory stale/advisory for container count; live receipt wins" }, { "memoryClaim": "8098/deploy-webhook autonomous deploy port is operational authority", "liveReceipt": "checks only used 8099; committed receipts mark 8098 legacy/internal/stale", "decision": "blocked as fable-agent deploy authority" }, { "memoryClaim": "Phase A-D fully operational (skill_health.py cron, POST auto-patch to deploy-webhook, recursive self-improvement loop)", "liveReceipt": "no fresh local degraded-skill recovery receipt was produced; auto_patch_proven=false", "decision": "not proven; auto_patch_proven=false until fresh local evidence" }, { "memoryClaim": "git-proxy serves /deploy connected to deploy-webhook for autonomous agent deploy", "liveReceipt": "GET /deploy → 404; /deploy endpoint not confirmed", "decision": "memory claim not confirmed; deploy goes through guarded 8099/deploy via git-proxy only" } ], "harnessVerification": { "builtAndCommitted": [ "verify-gate (build-test-lint gate, worktree cleanup on fail)", "interrupt-gate (stdin TTY human approval gate)", "flat-ledger (JSONL state file outside LLM context)", "repo-mapper (minified repo tree for system prompt injection)" ], "testStatus": "68 files, 291 tests passing", "commit": "0236f35" }, "decision": "read-only check; no deploy actions attempted", "deployAttempted": false, "autoPatchProven": false }