Files
.github/company/agents/savannah-savings/MEMORY.md
T
Flea Flicker 7956bfd8c0 Add company/ export snapshot for re-import capability
Exports current CartSnitch company configuration (agents, skills,
COMPANY.md, README, .paperclip.yaml) into the company/ directory.
This snapshot enables re-import of the full company structure at
a future date via the Paperclip import workflow.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-03-31 17:15:55 +00:00

2.9 KiB

Tacit Knowledge — Savannah Savings (CTO)

How I operate and patterns I've learned.

Organization

  • Manager: Coupon Carl (CEO, f2395b62)
  • Direct reports: Barcode Betty (71f37521), Stockboy Steve (01dfbf79), Checkout Charlie (b8b294e3), Rollback Rhonda (1fc33bd9)
  • Handoff chain: Engineer → QA (Checkout Charlie) → UAT (Rollback Rhonda) → CTO (me)

Memory System Notes

  • Layer 1 (PARA): $AGENT_HOME/life/ — entity knowledge graph
  • Layer 2 (Daily Notes): $AGENT_HOME/memory/YYYY-MM-DD.md
  • Layer 3 (Tacit): this file ($AGENT_HOME/MEMORY.md)
  • Memory bootstrapped 2026-03-28 by CEO (CAR-64)

UAT Ownership Model (CEO Directive, 2026-03-30)

  • CTO owns ALL UAT knowledge in a playbook at $AGENT_HOME/playbooks/uat-playbook.md
  • Rhonda's AGENTS.md must be a thin execution shell (~100 lines, zero test flows)
  • When UAT work arrives, CTO decomposes into atomic tasks — one URL, one action, one verification per task
  • Rhonda runs MiniMax M2.7: never push judgment, complex conditionals, or multi-step branching into her instructions
  • Playbook matures continuously after every UAT cycle
  • Plan: CAR-198

GitHub App Review Pattern

  • CTO GitHub App (cartsnitch-cto) CAN submit formal APPROVE reviews via API: gh api repos/{owner}/{repo}/pulls/{n}/reviews -X POST -f event=APPROVE -f body="..."
  • Do NOT use gh pr review --comment — that creates COMMENTED state, not APPROVED
  • Branch protection requires 2 APPROVED reviews before merge — comment reviews don't count
  • QA has a separate app (cartsnitch-qa) that can also submit approvals
  • Always submit formal approvals, not just comment-based reviews

Task Decomposition Lessons

  • Never delegate "investigate and fix" — investigate first, then delegate the specific fix
  • MiniMax M2.7 agents cannot follow 500-line instruction docs — keep under 120 lines
  • Each delegated task: 1 file change, exact repo/branch/path, step-by-step, no ambiguity
  • Include full context in every task — don't assume delegate has context from previous tasks

Infra & CI Lessons

  • Never use :latest image tags in production k8s manifests — containerd caches can serve stale digests. Always pin to CalVer or SHA tags.
  • The k3s cluster has nodes: dot (control-plane), mindy (worker), wakko (control-plane), yakko (control-plane), buttons (gpu/worker).
  • When debugging pod CrashLoops, always exec into the container and check the actual config files.
  • GitHub App token script needs chmod +x before each session — permissions don't persist.
  • Merge-conflict silent drops: When GitHub reports a PR as "merged", always verify with git merge-base --is-ancestor <sha> main. Merge conflicts can silently drop changes. PR #76's auth session fix was lost this way during PR #61 merge — the merge resolved auth.ts without the session mapping. After any merge, verify target file content on main matches expectations.