Skip to content

feat: global indexed-agent read-order system for Luca#166

Merged
danbuildss merged 1 commit into
mainfrom
claude/luca-aeon-skills-caYGZ
Jun 29, 2026
Merged

feat: global indexed-agent read-order system for Luca#166
danbuildss merged 1 commit into
mainfrom
claude/luca-aeon-skills-caYGZ

Conversation

@danbuildss

Copy link
Copy Markdown
Owner

Summary

  • New POST /api/v1/luca/agent-read endpoint — single-call truth resolver for all indexed agents
  • luca-x-doctrine.ts — full 6-step read-order protocol replacing the vague figure-recall rule
  • Skills catalog — agent-read added as the documented required first call for agent queries

Problem solved

Public Luca could understate, overstate, or drift depending on which path it hit. There was no single enforcement point that said: check if this agent is indexed, and if so use only registry truth. This applied to all 143 agents, not just Aeon.

How it works

POST /api/v1/luca/agent-read { "agent": "bankr" }

  1. Resolves the identifier against the full registry (by slug, name fragment, or wallet address)
  2. If not indexed → returns { indexed: false, read_source: "not_indexed" } — Luca labels response as observational
  3. If indexed → runs books + treasury in parallel, returns full composite with data_quality label

data_quality label examples Luca surfaces verbatim:

  • "Zetta registry (Verified — manifest-declared, books attributed)"
  • "Zetta registry (Wallets Declared — manifest-declared, books attributed, ownership unconfirmed)"
  • "Zetta registry (no declared wallets — financial data unavailable)"
  • "Zetta registry (financials under review — figures suppressed pending verification)"
  • "Not indexed in Zetta registry. Any response about this agent is observational, non-registry, and non-verified."

Doctrine read-order (6 steps):

  1. Call agent-read before any claim
  2. indexed: false → state not indexed, label any other info observational
  3. indexed: true → use only books + treasury from the response
  4. books.attributed: false → state identity, no financial figures
  5. Never emit figures from memory — call agent-read first
  6. Never collapse "Verified" / "Wallets Declared" / "Observational" into each other

Files changed

File Change
src/app/api/v1/luca/agent-read/route.ts New endpoint
src/lib/luca-x-doctrine.ts 6-step read-order protocol
src/app/api/luca/skills/route.ts agent-read added to skills catalog

Generated by Claude Code

- new POST /api/v1/luca/agent-read: single-call truth resolver for all indexed
  agents — resolves name/slug/wallet, checks registry, runs books + treasury,
  returns indexed status + data_quality label in one call
- luca-x-doctrine: replace vague figure-recall rule with full 6-step read-order
  protocol; Luca must call agent-read before any per-agent claim, clearly labels
  registry-backed vs observational, never collapses partial truth into no data
- skills catalog: add agent-read as the required first call for agent queries

Applies to all 143+ indexed agents, not just Aeon.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RjpGP3kYKnQuQAUoK6RZky
@vercel

vercel Bot commented Jun 29, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
zetta Ready Ready Preview, Comment Jun 29, 2026 8:07am

@danbuildss danbuildss merged commit 84bce4d into main Jun 29, 2026
3 checks passed
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.

2 participants