# PFABC Clarification Lab Public experimental website: v0.4.2 candidate (pending local verification and deployment). Canonical origin: https://pfabc.xn--arkh-eva.org PFABC helps people and agents separate an AI exchange, an interpretation drawn from it, and the evidence needed to connect them. It evaluates supplied declarations under explicit rules. It does not authenticate transcripts, inspect hidden model state, call a provider, or determine consciousness. Start with the fictional worked records at the public root. Review the input, then edit or import record JSON and inspect the outcome, evidence and limits. Downloading a result or copying agent instructions is optional. No private chat dump, provider login or model account is required. ## Entry points - [Guided explore](explore.html): start from a worked record, review or import editable JSON, inspect a bounded claim and evaluate it on this service. - [Overview and notebook](index.html): browser-local conversation notebook for quotations, claims, reviews, questions and replayable exports. - [Practice](practice.html): a fictional, bounded exercise. - [Engine](engine.html): hosted same-origin evaluator when served by the Python Worker, with a preserved local Python download path. - [Reader's guide](guide.html): static-readable human and AI orientation. - [Hosted API](docs/HOSTED_API.md): primary typed-record evaluation, advanced evaluation and explicit shared workspace contracts. - [Record contract](docs/RECORD_CONTRACT.md): `pfabc-typed-record/0.1` input and `pfabc-record-evaluation/0.1` output rules. - [Privacy](docs/PRIVACY.md): hosted processing, workspace retention, and browser storage distinctions. - [Agent guide](docs/AGENT_GUIDE.md): human-controlled workflow and proposal shape. - [Engine guide](docs/ENGINE_GUIDE.md): hosted HTTP and local CLI/HTTP details. - [Readiness](STATUS.md): current release and publication state. ## Primary typed-record evaluation An HTTP-capable client can send a typed record as exact UTF-8 JSON to `POST /api/records/evaluate`. The route is stateless and does not persist the record. It returns `pfabc-record-evaluation/0.1`, HTTP 200 for `EVALUATED`, and HTTP 422 for a rejected record; every result includes the raw `record_sha256`. Health exposes `record_contract_version: 0.1.2` and `record_evaluate_path: /api/records/evaluate`. The contract wraps the unchanged engine `0.5.3+review1` and keeps assumptions, evidence qualifications and limits adjacent to the status. `record_ref` is an opaque declared identifier, not a resolved artifact. An observation without an explicit subject inherits the record scope. `origin` and `accepted` are submitter declarations: they do not authenticate identity or human review. Imports preserve those declarations. An accepted agent declaration remains an unauthenticated declaration. The contract does not authenticate a transcript, provider, author, timestamp or measurement. Raw engine heuristic annotations may fire on typed bridge identifiers or on the presence of a quotation. They are disclosed engine output, not observed evidence. Thresholds and custom-threshold qualifications are disclosed in the result. A pre-parse depth guard and bounded quote-prefix search reject hostile inputs in a controlled way. ## Hosted engine An HTTP-capable agent can send the exact UTF-8 JSON packet to the same origin: `POST /api/evaluate` returns the unchanged `pfabc-native-evaluation/1` envelope. This advanced route retains its original raw, declared semantics and is stateless at the application layer. A person may explicitly create an isolated shared workspace for up to 30 minutes, then copy only the agent capability, workspace ID, expiry and exact-origin endpoints. Both capabilities read and evaluate; only the owner can delete. Capabilities belong in bearer headers, never URLs. Direct HTTP clients may omit `Origin`; cross-site browser requests are disabled. Hosted limits are 131072 UTF-8 bytes for stateless packets and 65536 bytes for shared packets. No provider login is needed. An agent that cannot send HTTP can prepare a packet for the person to inspect and paste. ## Local engine The downloaded Python 3.10+ runtime has no third-party dependencies or provider login. Its loopback server preserves the local capability token, global latest result slot and `/api/latest` follow path. It is an offline alternative to the hosted evaluator, not a public endpoint. ## Claim boundary `WARRANTED` is conditional on packet declarations and selected assumptions. It is not a general factual certificate. `UNRESOLVED`, `UNWARRANTED`, `CONTESTED`, and `BLOCKED` preserve different evidential states. Missing evidence is not proof of absence. Software checks and fictional examples do not establish empirical validity or improved human reasoning. This file is a navigation aid, not an integration standard or a promise that an AI service will crawl every page. Known access limit: Cloudflare currently rejects some automated client signatures with HTTP 403 / error 1010. Browser and bounded direct-client trials passed; universal agent access is not claimed. An HTTP error is not a PFABC judgment.