{"status":"healthy","db":true,"embedder_ready":true,"signing":{"mode":"live","mode_declared":false,"citation":{"configured":true,"can_sign":true,"can_verify":true,"alg":"ed25519","kid":"fk1-215a8027abf35816","env":"CITATION_SIGNING_KEY_HEX"}},"key_registry":{"ok":true,"live_kid":"fk1-215a8027abf35816","registered":true,"state":"active","assurance":"software_key","not_before":"2026-10-01T00:00:00Z","not_after":"2036-10-01T00:00:00Z","registry_entries":1},"seed_running":null,"service":"foundrynet-forge","version":"2.0.0","build":{"commit":"590ea81cc3d0e6e16c072ae1a2971c7c343f36f2","commit_short":"590ea81","branch":"main","commit_subject":"Merge pull request #199 from FoundryNet/cleanup/retired-pricing-and-dead-kernel-server","commit_at":"2026-10-17T15:35:01-07:00","dirty":false,"modified_tracked":0,"untracked":0,"diff_shortstat":null,"note":"deploys upload a working tree, so `commit` alone does not describe what shipped; `content_hash` does","identity_source":"local_git","content_hash":"sha256:ffde38bf1be2efcaf98b5f11e8555900c493ee047206fcdc78bef557ff6fb222","file_count":573,"total_bytes":13188238,"built_at":"2026-10-17T22:41:29Z","image":"railway:railpack","stamped_by":"ryangordon"},"commit":"590ea81","content_hash":"sha256:ffde38bf1be2efcaf98b5f11e8555900c493ee047206fcdc78bef557ff6fb222","built_at":"2026-10-17T22:41:29Z","dirty":false,"image":"railway:railpack","corpus_version":"forge-prod/1.0.1-29d29e79","corpus":{"corpus_version":"forge-prod/1.0.1-29d29e79","semver":"1.0.1","engine":"forge-prod","digest":"29d29e79361cfd546a15586f78649d09d3001e88205ab0e26aa53be18d506b0b","layers":{"registry":{"sha256":"68e454f7f91b7a61a6de5700a7b8d2ee1b999f7e404ffebaf833b7d4cc863467","fields":1027,"registry_version":"1.1.0"},"packs":{"sha256":"5374110893608ed1f0ef946da42600b002b0aeba46bd36a00b9ad93e25c0e942","packs":47,"mappings":2461},"bounds":{"sha256":"fcbac61e9a64693480ca5e8f19374af39433eac84d4d865e660ea7f20e4cfc45","fields":152},"sentinels":{"sha256":"24ae08ebba8dc2e99fe50ac6dfcceee497eba154e363982d392dd8a1ec64eb1c","tokens":37},"units":{"sha256":"107d482767009926220d5477b1e847eb73d5865b67274387098f2f914633b270","conversions":364}},"state":{"release":"forge-prod/1.0.1-29d29e79","engine":"forge-prod","index":"b4f73a0d","auto_packs":null},"index_stats":{"rows":14004,"verbatim_keys":26779,"exact_keys":25394,"folded_keys":11679,"ambiguous_verbatim":0,"ambiguous_exact":79,"ambiguous_folds":209,"age_s":2512.3},"state_tier":{"version":"2.13.1","sha256":"ca485f672266810bb8de6ae933b210960c1a5ab8810e8f9c397570e5fbba980f","release":"2.13.1","corpus_version":"forge-sandbox/1.0.0-94f9133e+state/2.13.1+command/2.7.0#ceecdf351a21","source_repo":"github.com/FoundryNet/forge-federation","vendored_digest_matches":true}},"keyless_budget":{"mode":"not_yet_exercised","degraded":null,"consecutive_failures":0,"last_error":null,"note":"persisted: the budget survives restarts and deploys. in_process: it does not, and resets on every deploy — apply migrations/2026_10_06_keyless_budget_persisted.sql"},"process_state":{"single_worker_pinned":true,"state_requiring_single_worker":19,"at_risk_if_scaled":null,"note":"FORGE_SINGLE_REPLICA is set, so the budgets below are authoritative."},"proof_store":{"storing":true,"table_missing_latched":false,"note":"no write has found the table missing in this worker"},"capabilities":{"ingestion":{"http":{"available":true,"reason":null,"transport":"cloud"},"csv":{"available":true,"reason":null,"transport":"cloud"},"mqtt_sparkplug_b":{"available":true,"reason":null,"transport":"edge","limitation":"protobuf_payload_decode_not_implemented"},"modbus_tcp":{"available":true,"reason":null,"transport":"edge"},"modbus_rtu":{"available":false,"reason":"serial_transport_not_implemented","transport":"edge"},"opcua":{"available":true,"reason":null,"transport":"edge"},"snmp":{"available":false,"reason":"adapter_not_wired","transport":"edge"},"mtconnect":{"available":true,"reason":null,"transport":"edge"},"ethernet_ip":{"available":true,"reason":null,"transport":"edge"},"profinet_s7":{"available":true,"reason":null,"transport":"edge"},"bacnet_ip":{"available":true,"reason":null,"transport":"edge"},"ros2_dds":{"available":true,"reason":null,"transport":"edge"},"j1939_can":{"available":true,"reason":null,"transport":"edge"},"mavlink":{"available":true,"reason":null,"transport":"edge"},"machinemetrics_graphql":{"available":true,"reason":null,"transport":"edge"}},"prediction":["timesfm_breach","remaining_life","fleet_health"],"automation":["threshold_triggers","sustained_triggers","prediction_triggers"],"settlement":{"batch_proof":{"available":true,"reason":null},"integrity_record":{"available":true,"reason":null},"parametric_evidence":{"available":false,"reason":"not_enabled"}},"export":["webhook_push","mqtt_publish"]},"pricing":{"sandbox":"free, 3 machines","api_metered":"see /pricing"},"active_adapters":{"note":"edge-kernel reported (per core device)"},"tools":32,"tools_count":32,"protocols":["http","csv","mqtt_sparkplug_b","modbus_tcp","opcua","mtconnect","ethernet_ip","profinet_s7","bacnet_ip","ros2_dds","j1939_can","mavlink","machinemetrics_graphql"],"protocols_unavailable":{"modbus_rtu":{"available":false,"reason":"serial_transport_not_implemented","transport":"edge"},"snmp":{"available":false,"reason":"adapter_not_wired","transport":"edge"}},"normalization":{"canonical_fields":1027,"registry_version":"2.0.0","corpus_mappings":16908,"total_mappings":16908,"vendor_packs":47,"pack_mappings":2461,"verticals":20,"declared_oems":127,"embedder":"BGE-M3"},"arbitration":{"authoritative":true,"workers":1,"single_replica_declared":true,"lease_backend":"process_local","reasons":null},"audit_outbox":{"depth":0,"dropped":0,"path":"/tmp/forge-audit-outbox/guardrail_blocks.jsonl","max_rows":10000,"healthy":true},"prediction":{"model":"google/timesfm-2.5-200m-pytorch","enabled":true,"loaded":false,"backend":"cpu","error":null,"capabilities":["forecast","breach","rul","batch","fleet_health"]},"integrity":{"mode":"hash_chain","enabled":true}}