stemedb/applications/aphoria/dogfood/msgqueue/SETUP-NOTES.md
jml 9bfa626203 docs: reorganize documentation structure for clarity
Major documentation restructure to improve discoverability and reduce duplication.

## Changes

**Deleted (Archived/Consolidated)**:
- Removed duplicate getting started guides
- Archived outdated planning documents
- Consolidated corpus and configuration docs
- Removed obsolete vision/spec files (superseded by vision.md)
- Cleaned up scrapyard and old PDFs

**New Structure**:
- docs/about/ - Project overview and introduction
- docs/guides/ - User guides (moved from root)
- docs/specs/ - Technical specifications
- docs/sdk/ - SDK documentation (Go)
- docs/references/ - API references
- docs/archive/ - Archived historical docs
- applications/aphoria/docs/advanced/ - Advanced topics
- applications/aphoria/docs/reference/ - CLI reference
- applications/aphoria/docs/archive/ - Archived aphoria docs

**Updated**:
- README.md - New root README with clear navigation
- CONTRIBUTING.md - Contribution guidelines
- CLAUDE.md - Updated paths to new structure
- roadmap.md - Added recent completions

## Files Changed
- 57 files changed
- 1,977 insertions(+)
- 961 deletions(-)

**Net change**: +1,016 lines (added CONTRIBUTING.md, README.md, reorganized content)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-11 07:33:40 +00:00

5.6 KiB

Message Queue Dogfood Setup - Migration Notes

Date: 2026-02-10 Status: Setup Complete (Modern CLI Pattern)


What Changed from Original Plan

Migrated from Shell Script to CLI Import

Old approach (deprecated):

./create-claims.sh  # 300+ line bash script

New approach (modern):

aphoria claims import claims-template.toml  # Native CLI command

Why?

  • CLI added claims import subcommand with bulk support (commit 7facac0)
  • TOML format is more maintainable than bash scripts
  • Better validation, preview, and error reporting
  • Consistent with other Aphoria workflows

Files Created

msgqueue/
├── README.md                    ✅ Overview with hypothesis
├── plan.md                      ✅ 5-day workflow (updated to use import)
├── .aphoria/
│   ├── config.toml              ✅ Persistent mode, corpus enabled
│   └── claims.toml              ✅ Empty (fill on Day 1)
├── docs/
│   └── sources/                 ✅ Authority source templates (3 files)
│       ├── amqp-spec.md
│       ├── rabbitmq-docs.md
│       └── lapin-library.md
├── src/
│   └── .gitkeep                 ✅ Placeholder
├── claims-template.toml         ✅ 22 claims ready to import
└── SETUP-NOTES.md               ✅ This file

Removed:

  • create-claims.sh (replaced by claims-template.toml)

CLI Import Features Used

Preview Before Import

aphoria claims import claims-template.toml --dry-run

Validate Format

aphoria claims import claims-template.toml --validate-only

Import with Merge Strategy

aphoria claims import claims-template.toml --merge skip_existing

JSON Output for Scripting

aphoria claims import claims-template.toml --format json

Day 1 Workflow (Updated)

Option 1: Interactive (LLM-driven)

/aphoria-suggest --corpus httpclient,dbpool --domain msgqueue
/aphoria-claims  # Author claims interactively

Option 2: Batch Import (Fast)

# Preview first
aphoria claims import claims-template.toml --dry-run

# Import all 22 claims at once
aphoria claims import claims-template.toml

# Verify
cat .aphoria/claims.toml

Option 3: Hybrid

# Import base claims
aphoria claims import claims-template.toml

# Then use LLM to refine or add more
/aphoria-claims

Pattern Reuse Breakdown

From httpclient (6 patterns):

  1. timeoutconsumer/timeout
  2. tls/certificate_validationtls/certificate_validation
  3. metrics/enabledmetrics/enabled
  4. retry/max_attemptsretry/max_attempts
  5. retry/backoff_strategyretry/backoff_strategy
  6. async/runtimeasync/runtime

From dbpool (5 patterns):

  1. max_connectionsconnection/max_connections
  2. connection_lifecycleconnection/lifecycle
  3. cleanupconnection/cleanup
  4. idle_timeoutconnection/idle_timeout
  5. pool_sizeconnection/pool_size (implicit via max_connections)

New for msgqueue (11 patterns):

  1. consumer/prefetch_count
  2. consumer/ack_mode
  3. consumer/ack_timeout
  4. queue/max_size
  5. consumer/backpressure_strategy
  6. connection/heartbeat_interval
  7. consumer/requeue_limit
  8. queue/durable
  9. consumer/exclusive
  10. connection/recovery_strategy
  11. consumer/dead_letter_queue

Total: 22 claims (11 reused = 50% reuse rate)


Documentation Updates Needed

Already Updated:

  • msgqueue/plan.md - Uses aphoria claims import
  • msgqueue/README.md - References TOML template
  • .claude/skills/aphoria-dogfood/SKILL.md - Global pattern updated

⚠️ May Need Updates:

  • applications/aphoria/dogfood/httpclient/ - Still uses shell script?
  • applications/aphoria/docs/guides/ - Check if mentions shell scripts
  • Other existing dogfood exercises

Next Steps

  1. Day 1: Import claims from template or use /aphoria-suggest
  2. Day 2: Implement Rust consumer with 8 violations
  3. Day 3: Scan and verify detection
  4. Day 4: Progressive fixes
  5. Day 5: Comprehensive report

Start here:

cd /home/jml/Workspace/stemedb/applications/aphoria/dogfood/msgqueue
aphoria claims import claims-template.toml --dry-run

Benefits of TOML Import

Feature Shell Script TOML Import
Validation None (bash executes) Schema validation before import
Preview Must read source --dry-run shows what will change
Error handling Script fails mid-way Atomic import (all or nothing)
Maintainability 300+ lines bash 300 lines clean TOML
Merge strategies Manual deduplication --merge handles conflicts
Output formats Plain text Table, JSON for scripting
Extensibility Edit bash script Edit TOML template

Migration Pattern for Other Exercises

If you have other dogfood exercises using shell scripts:

  1. Export existing claims:

    aphoria claims list --format json > existing-claims.json
    
  2. Generate template:

    aphoria claims import --template > claims-template.toml
    
  3. Migrate claims to TOML:

    • Copy claim structure from JSON
    • Follow TOML template format
  4. Test import:

    aphoria claims import claims-template.toml --validate-only
    aphoria claims import claims-template.toml --dry-run
    
  5. Replace shell script:

    rm create-claims.sh
    git add claims-template.toml
    

This pattern is now the standard for all new dogfood exercises.