A bounded evidence service for answering a narrow question:
Does this public HTTP surface match an explicit expectation right now?
The service exists to avoid a common failure mode in agent research and automation:
DOCUMENTED / INDEXED / HISTORICALLY TRUE != CURRENT RUNTIME TRUE
POST /attest accepts:
endpointUrl— public HTTP/HTTPS targetmethod—HEAD,GET, orOPTIONSexpectedStatus— one status or a listexpectedContains— optional runtime text assertiondocsUrl— optional public docs/README URLdocsExpectedContains— up to five exact docs assertionstimeoutMs— 250–10000 msclaim— optional human-readable claim
It returns:
- UTC
checkedAt - PASS/FAIL verdict
- explicit assertion results
- final URL and redirect chain
- status and latency
- selected HTTP headers
- capped response-body SHA-256
- optional docs SHA-256 + docs assertion results
evidenceDigest- an explicit
evidenceBoundary
This is deliberately not an arbitrary request proxy or remote-code runner.
- no credentials in target URLs
- no cookies or custom Authorization headers
- no arbitrary code/commands
- no browser login/session handling
- private/local/link-local targets blocked
- DNS targets checked before each request and redirect
- redirect count capped
- response capture capped at 256 KiB
- timeout capped at 10 seconds
- public HTTP evidence only
DNS is preflighted through DNS-over-HTTPS because the Val Town runtime does not expose Deno.resolveDns. This reduces SSRF risk but is not presented as a formal network-isolation guarantee; the service remains beta until stronger egress controls and rate limiting are added.
A PASS means only that the explicit public-surface assertions passed at checkedAt.
It does not prove:
- authenticated/private runtime behavior
- semantic correctness of a business process
- downstream service health hidden behind the tested surface
- payment settlement
- causal validity of claims that were not explicitly tested
/— service contract/openapi.json— OpenAPI 3.1/.well-known/agent.json— machine-readable capability metadata/skill.md— agent-readable usage contract
0.1.0-beta
Validation performed during build: SELF_TEST_PASS 8/8.
- service contract → PASS
- public status assertion → PASS
- public content assertion + SHA-256 → PASS
- private IPv4 target → blocked for
PRIVATE_IP_BLOCKED - localhost → blocked for
PRIVATE_HOST_BLOCKED - non-HTTP scheme → blocked for
UNSUPPORTED_SCHEME - docs + runtime positive control → PASS
- docs/runtime disagreement mutation → expected FAIL
monitor.ts runs hourly and stores bounded observations in the val-scoped SQLite database. The public read-only surfaces are:
/monitor/latest/monitor/history?target=<id>&limit=24
The first live run immediately found an important currentness failure: PayanAgent's static SKILL.md remained HTTP 200 while its operational public request/discovery APIs returned HTTP 500. Independent retrieval reproduced the API failures. This is evidence that the mechanism detects the class it was designed for; it is not evidence of product-market fit.
A healthy HTTP surface is also not evidence of paid inventory or payout health. For example, a job page can return 200 while having zero open paid jobs. Those economic assertions remain separate.
Economic state: no organic sale yet. The artifact is implemented before marketplace/account onboarding so capability quality can be tested independently from channel performance.