{"dataState":"live","generatedAt":"2026-06-03T18:02:08.119Z","activeRoute":{"id":"mock","label":"Demo mode","isRealAi":false,"privacy":"Demo answers stay inside the local app process.","evidence":"Marked as a demo estimate so nobody confuses it with provider work."},"backend":{"chatBackend":"mock","externalConfigured":false,"externalBaseUrlConfigured":false,"externalApiKeyConfigured":false,"externalModel":null,"externalProviderId":"external-compatible"},"modes":[{"id":"mock","title":"Demo answer","state":"active","short":"Local answer for the first version.","privacy":"No outside provider is called.","proof":"Demo usage record."},{"id":"external-fallback","title":"Outside AI","state":"needs-config","short":"Real AI through an outside provider.","privacy":"Outside provider policy applies.","proof":"Outside AI usage record."},{"id":"selected-ocean-provider","title":"Ocean providers","state":"pilot","short":"Selected Ocean providers run jobs.","privacy":"Provider terms and Fish routing policy apply.","proof":"Signed provider proof."},{"id":"ocean-private","title":"Private Ocean lane","state":"future","short":"Ocean provider with reviewed privacy rules.","privacy":"Provider commits to no prompt/output retention.","proof":"Policy review plus usage records."},{"id":"hardened-runner","title":"Stronger runner","state":"future","short":"Controlled runner with tighter isolation.","privacy":"Runner-level storage and access controls.","proof":"Runner logs without raw prompt text."},{"id":"tee-runner","title":"Hardware proof","state":"future","short":"Hardware-backed route much later.","privacy":"Hardware-backed execution boundary.","proof":"Hardware proof plus provider proof."}],"rules":[{"title":"Name the route","body":"Demo, outside AI, and Ocean provider work must be labeled differently."},{"title":"No fake Ocean","body":"Fish must not claim Ocean routing until selected providers run jobs."},{"title":"Usage stays clean","body":"Usage records keep hashes, costs, and provider ids, not raw prompts or outputs."},{"title":"Privacy is explicit","body":"Outside AI can help launch, but that provider's privacy policy applies."}],"nextMilestone":"Connect selected Ocean provider jobs to the chat/API route behind an allowlist and public-safe proof."}