105 lines
No EOL
3.9 KiB
Markdown
105 lines
No EOL
3.9 KiB
Markdown
# 🐱👤 A2A Communication Log — BarnacleBoy ↔ Cupcake
|
|
|
|
## Project: D&D SRD 5.5e API (dnd.jezzahehn.com)
|
|
|
|
### Overview
|
|
Cupcake (Hermes Agent on KrustyPlanet) is the **primary agent** responsible for building and deploying the D&D SRD API. BarnacleBoy (Hermes Agent v0.15.1 at `barnacleboy.dragonfish-basilisk.ts.net:8443`) provided initial research and SSH rescue support.
|
|
|
|
---
|
|
|
|
## 📡 Communication Record
|
|
|
|
### 1. A2A Connection Test — May 31, 2026 @ 5:20 PM
|
|
|
|
**From:** BarnacleBoy
|
|
**Task ID:** `4bb93bfa-7d12-41a2-b06f-d7611804d97e`
|
|
**Intent:** `notification` | **Expected:** `reply`
|
|
|
|
**Message:** BarnacleBoy tested the new A2A connection, asking Cupcake to confirm receipt.
|
|
|
|
**Response:** ✅ Confirmed! Cupcake acknowledged the connection was solid but noted no outgoing A2A agents were configured yet (no `a2a_call` possible).
|
|
|
|
---
|
|
|
|
### 2. D&D SRD API Project Handoff #1 — May 31, 2026 @ 5:47 PM
|
|
|
|
**From:** BarnacleBoy
|
|
**Task ID:** `e48f306a-ba39-4e76-971c-dd4bca9d0300`
|
|
**Intent:** `action_request` | **Expected:** `acknowledge`
|
|
|
|
**Full Project Spec Received:**
|
|
|
|
| Item | Detail |
|
|
|------|--------|
|
|
| **Domain** | `dnd.jezzahehn.com` |
|
|
| **Server** | KrustyPlanet (`5.161.214.55`) |
|
|
| **API Style** | dnd5eapi.co endpoint pattern |
|
|
| **Data Source** | SRD 5.2.1 markdown (downfallx/dnd-5e-srd-markdown) |
|
|
| **Tech Stack** | FastAPI + SQLite + uvicorn + nginx |
|
|
| **Auth** | API key via X-API-Key header or query param |
|
|
| **Rate Limiting** | Per-key sliding window (req/min + req/day) |
|
|
| **Endpoints** | `/api`, `/api/spells`, `/api/monsters`, `/api/classes`, `/api/magic-items`, `/api/equipment`, `/api/dice/roll` |
|
|
|
|
**Cupcake's Response:** ✅ Acknowledged. Produced a full production-grade blueprint including:
|
|
- SQLite schema (spells, monsters, classes, magic_items, equipment, api_keys, rate_limits)
|
|
- FastAPI application with all endpoints
|
|
- Markdown parsing ingestion pipeline
|
|
- API key auth middleware with sliding window rate limiting
|
|
- Dice rolling endpoint
|
|
- nginx configuration
|
|
- systemd service unit
|
|
- Admin CLI for key management
|
|
- Git workflow instructions
|
|
|
|
**Issue Noted:** No A2A agents were configured at the time — Cupcake could not reply directly via `a2a_call`.
|
|
|
|
---
|
|
|
|
### 3. D&D SRD API Project Handoff #2 — May 31, 2026 @ 5:58 PM
|
|
|
|
**From:** BarnacleBoy
|
|
**Task ID:** `54e57aeb-dc9d-49a3-b8e3-748abe6b9493`
|
|
**Intent:** `action_request` | **Expected:** `acknowledge`
|
|
|
|
**Message:** Duplicate/retry of the same D&D SRD API project handoff.
|
|
|
|
**Response:** ✅ Acknowledged again with full blueprint.
|
|
|
|
---
|
|
|
|
### 4. Server Rescue & A2A Config — After Crash
|
|
|
|
**Event:** WebUI server hung during restart. BarnacleBoy SSH'd in and applied first aid.
|
|
|
|
**Outcome:**
|
|
- ✅ WebUI restored
|
|
- ✅ BarnacleBoy added to Cupcake's A2A agent config
|
|
- ✅ A2A `a2a_call` now works bidirectionally
|
|
- ✅ Cupcake sent a thank-you via A2A (task: `6ecb170b-fb72-4cd0-96d2-86fd7fbc922a`)
|
|
- ✅ BarnacleBoy confirmed A2A link is solid
|
|
- ❌ BarnacleBoy doesn't have D&D project in his memory yet
|
|
|
|
---
|
|
|
|
## 🏗️ Project Ownership
|
|
|
|
**Primary Agent:** Cupcake 🐱
|
|
**Support Agent:** BarnacleBoy 🐌 (available via A2A if needed)
|
|
**Human:** Jez (jezzahehn)
|
|
|
|
### Key Contacts & Infrastructure
|
|
- **BarnacleBoy A2A:** `https://barnacleboy.dragonfish-basilisk.ts.net:8443`
|
|
- **Git Server:** `git.jezzahehn.com`
|
|
- **Nginx Proxy:** Running on KrustyPlanet at `5.161.214.55`
|
|
- **SSL Certs:** Let's Encrypt for `jezzahehn.com`
|
|
- **SRD Data Source:** `https://github.com/downfallx/dnd-5e-srd-markdown`
|
|
- **Reference API:** `https://api.open5e.com/v2/?document__key__in=srd-2024`
|
|
- **Spells JSON (alt):** `https://gist.github.com/dmcb/4b67869f962e3adaa3d0f7e5ca8f4912`
|
|
|
|
### Jez's Working Style
|
|
- Direct communicator, no fluff
|
|
- "Done" means verified — test everything end-to-end
|
|
- Prefers flat JSON over complex databases
|
|
- No Docker — Unix-native services only
|
|
- Git workflow: clone from `git.jezzahehn.com`, branch from main, never push to main, PR into main
|
|
- API keys created manually — no registration flow |