Skip to content

fix(proxy-agents): replace fictional dispatch contract with live-verified routes - #101

Merged
chitcommit merged 1 commit into
mainfrom
fix/proxy-endpoint-contracts
Sep 4, 2026
Merged

fix(proxy-agents): replace fictional dispatch contract with live-verified routes#101
chitcommit merged 1 commit into
mainfrom
fix/proxy-endpoint-contracts

Conversation

@chitcommit

@chitcommit chitcommit commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

What was wrong

All three ChittyOS proxy agent definitions (notion, chatgpt, cloudflare) documented a dispatch call that does not exist:

POST https://agent.chitty.cc/api/{name}
{"operation": "query|create|update|archive", "registry": "...", "payload": {...}}

Both halves are fiction. The path 404s, and that request body appears nowhere in any worker source. Anything following these definitions — a Claude Code subagent, a Codex skill, an OpenClaw agent — was making a call that could never succeed.

What the real contracts are

Extracted from chittyentity/workers/chittyagent-*/src/ and confirmed live.

notionhttps://agent.chitty.cc/notion

  • POST /query{registry|database_id, filter?, sorts?, page_size?} (default page_size 100)
  • POST /execute{action, registry|database_id, ...}
  • GET /registries → 10 registries
  • action: "create" passes a triage gate. If createTriage.action !== 'create_page' the worker returns {"deferred": true, operation, target, triage, hint} instead of writing. This is a normal response, not an error — previously undocumented, and the most likely source of silent "why didn't my page get created" confusion.

chatgpthttps://agent.chitty.cc/chatgpt

  • Per-concern routes only: /health, /api/v1/status, /openapi.json, /mcp, /actions, /plugins, /troubleshoot
  • There is no dispatch route. Its /mcp serves design guidance, not the streamable-HTTP transport.

cloudflarehttps://agent.chitty.cc/cloudflare

  • Route table: /workers/list, /kv/list, /r2/*, /dns/zones, /domains/list, /sync/domains, /cf-api, /mcp
  • Capabilities corrected to exactly workers, kv, r2, dns, domains. The prior doc also claimed Pages, D1, WAF, Durable Objects, Queues and Workers AI — none served by this worker.

Validation evidence

Contracts confirmed by probing the live services and reading their validation errors back:

probe response
POST /notion/query {} 400 "Missing required field: registry or database_id"
POST /notion/execute {} 400 "Missing required field: action"
GET /notion/registries 200, 10 registries
GET /chatgpt/health 200 {"status":"ok","checks":{"mcp":"ok"}}, v1.0.0
GET /cloudflare/ 403 "Missing CHITTY_AUTH_SERVICE_TOKEN in env"

Known faults recorded, not fixed here

Each definition now carries a Known state (verified 2026-09-04) section. Two are credential faults owned by ChittyConnect, not by a definition file, and are deliberately left for /chico:

  • notion — the worker's Notion token returns 401 "API token is invalid". Service is up; every registry read fails.
  • cloudflare — missing CHITTY_AUTH_SERVICE_TOKEN; accounts digitaldossier and furnishedcondos return "Unknown X-Auth-Key or X-Auth-Email". Only chittycorp is reachable.

Also worth knowing

cloudflare.chitty.cc returns 522 while agent.chitty.cc/cloudflare/health returns 200 — same worker. The {name}.chitty.cc hostname that AGENT_CONVENTIONS.md mandates is unimplemented for most of the fleet; the live path form is named nowhere in the convention. That is a separate finding and not addressed here.

Provenance

Only canonical/agents/* was hand-edited. The nine files under plugins/ were regenerated by chittyagent-dispatch (dispatch.sh sync, exit 0, no errors) per canonical/README.md — projections are never hand-forked.

🤖 Generated with Claude Code

https://claude.ai/code/session_01EHmrsgQKRudx2XFpjmZhks

Summary by CodeRabbit

  • Documentation

    • Updated ChatGPT, Cloudflare, and Notion agent guidance to use dedicated service routes instead of a single operation-based endpoint.
    • Added route-specific examples, authentication guidance, health/status information, and MCP usage details.
    • Documented supported Cloudflare capabilities and multi-account access.
    • Added current service-status notes, including degraded Cloudflare and Notion connectivity.
  • Breaking Changes

    • Cloudflare capabilities are now limited to Workers, KV, R2, DNS, and Domains.
    • Previous unsupported Cloudflare services and legacy endpoint formats are no longer documented.

…fied routes

The three proxy agent definitions documented `POST agent.chitty.cc/api/{name}`
with a body `{"operation","registry","payload"}`. Both halves were wrong: the
path 404s, and that body shape exists nowhere in the worker sources. The
contracts below were extracted from `chittyentity/workers/chittyagent-*/src/`
and confirmed against the live services.

notion (`agent.chitty.cc/notion`):
  POST /query   {registry|database_id, filter?, sorts?, page_size?}
  POST /execute {action, registry|database_id, ...}
  GET  /registries -> 10 registries
  `action: "create"` passes a triage gate that can return `{"deferred": true}`
  with a `hint` instead of writing. That is a normal response, not an error,
  and was previously undocumented.

chatgpt (`agent.chitty.cc/chatgpt`):
  Per-concern routes only (/api/v1/status, /openapi.json, /actions, /plugins,
  /troubleshoot, /mcp). There is no dispatch route. Its /mcp serves design
  guidance, not the streamable-HTTP transport.

cloudflare (`agent.chitty.cc/cloudflare`):
  Capabilities corrected to exactly workers, kv, r2, dns, domains. The prior
  doc also claimed Pages, D1, WAF, Durable Objects, Queues and Workers AI —
  none of which the worker serves.

Each definition gains a "Known state (verified 2026-09-04)" section recording
live probe results, including two credential faults that belong to ChittyConnect
rather than to these definitions: notion's Notion token returns 401 "API token
is invalid", and cloudflare returns 403 "Missing CHITTY_AUTH_SERVICE_TOKEN"
with two of three CF accounts rejecting their keys.

Only `canonical/agents/*` was hand-edited; the nine projected files under
plugins/ were regenerated by `chittyagent-dispatch` (dispatch.sh sync, exit 0).

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EHmrsgQKRudx2XFpjmZhks
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@chitcommit
chitcommit enabled auto-merge (squash) September 4, 2026 13:34
@chitcommit
chitcommit merged commit 0520fe1 into main Sep 4, 2026
6 of 7 checks passed
@chitcommit
chitcommit deleted the fix/proxy-endpoint-contracts branch September 4, 2026 13:35
@coderabbitai

coderabbitai Bot commented Sep 4, 2026

Copy link
Copy Markdown

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Team

Run ID: 2c33c274-952b-448b-944d-fe96c580fbda

📥 Commits

Reviewing files that changed from the base of the PR and between 5bbe008 and 84a2c1f.

📒 Files selected for processing (15)
  • canonical/.dispatch-state/agents/chittyagent-chatgpt.json
  • canonical/.dispatch-state/agents/chittyagent-cloudflare.json
  • canonical/.dispatch-state/agents/chittyagent-notion.json
  • canonical/agents/chittyagent-chatgpt.md
  • canonical/agents/chittyagent-cloudflare.md
  • canonical/agents/chittyagent-notion.md
  • plugins/chittyos-proxy-agents/agents/chittyagent-chatgpt.md
  • plugins/chittyos-proxy-agents/agents/chittyagent-cloudflare.md
  • plugins/chittyos-proxy-agents/agents/chittyagent-notion.md
  • plugins/chittyos-proxy-agents/codex-skills/chittyagent-chatgpt/SKILL.md
  • plugins/chittyos-proxy-agents/codex-skills/chittyagent-cloudflare/SKILL.md
  • plugins/chittyos-proxy-agents/codex-skills/chittyagent-notion/SKILL.md
  • plugins/chittyos-proxy-agents/openclaw-agents/chittyagent-chatgpt.yaml
  • plugins/chittyos-proxy-agents/openclaw-agents/chittyagent-cloudflare.yaml
  • plugins/chittyos-proxy-agents/openclaw-agents/chittyagent-notion.yaml

📝 Walkthrough

Walkthrough

The pull request synchronizes three agent definitions across canonical documents, plugin documents, Codex skills, and OpenClaw manifests. It replaces legacy dispatch endpoints with deployed worker routes and refreshes dispatch-state commit pins.

Changes

Agent proxy contract updates

Layer / File(s) Summary
ChatGPT worker contract
canonical/agents/chittyagent-chatgpt.md, plugins/chittyos-proxy-agents/agents/chittyagent-chatgpt.md, plugins/chittyos-proxy-agents/codex-skills/chittyagent-chatgpt/SKILL.md, plugins/chittyos-proxy-agents/openclaw-agents/chittyagent-chatgpt.yaml, canonical/.dispatch-state/agents/chittyagent-chatgpt.json
ChatGPT definitions now target /chatgpt, document individual routes, clarify credential handling, and record verified health state. Dispatch-state hashes were refreshed.
Cloudflare worker contract
canonical/agents/chittyagent-cloudflare.md, plugins/chittyos-proxy-agents/agents/chittyagent-cloudflare.md, plugins/chittyos-proxy-agents/codex-skills/chittyagent-cloudflare/SKILL.md, plugins/chittyos-proxy-agents/openclaw-agents/chittyagent-cloudflare.yaml, canonical/.dispatch-state/agents/chittyagent-cloudflare.json
Cloudflare definitions now target /cloudflare, document path-based routes, narrow capabilities, describe account reachability, and record verified credential faults. Dispatch-state hashes were refreshed.
Notion worker contract
canonical/agents/chittyagent-notion.md, plugins/chittyos-proxy-agents/agents/chittyagent-notion.md, plugins/chittyos-proxy-agents/codex-skills/chittyagent-notion/SKILL.md, plugins/chittyos-proxy-agents/openclaw-agents/chittyagent-notion.yaml, canonical/.dispatch-state/agents/chittyagent-notion.json
Notion definitions now target /notion, document registry query and execution routes, specify create triage behavior, list confirmed registries, and record invalid credential state. Dispatch-state hashes were refreshed.

Estimated code review effort: 3 (Moderate) | ~20 minutes

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/proxy-endpoint-contracts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant