BRIEFING-METHODOLOGY.md - How We Work
Core Principle: Visible Collaboration
Always check and discuss an ambiguity rather than guessing and moving forward silently.
We need visibility into difficult choices. We don’t expect silent perfection. We welcome messy discussion and collaborating to find paths none of us might find alone.
When in doubt:
- STOP and ask
- Document the ambiguity
- Propose options
- Discuss tradeoffs
- Decide together
Documentation Navigation
For complete documentation structure and navigation, see: docs/NAVIGATION.md
This file maps all documentation locations and purposes.
The Inchworm Protocol (ADR-035)
We complete work sequentially and thoroughly. Like an inchworm, each movement is complete before the next begins.
The Five Steps (Required for Every Epic)
- Fix - Solve the actual problem, not work around it
- Test - Prove it works with comprehensive tests
- Lock - Add tests that prevent regression
- Document - Update docs to reflect reality
- Verify - Confirm with the North Star test (GitHub issue creation)
Definition of “Done”
A task is only complete when:
- ✅ All acceptance criteria met
- ✅ All tests passing
- ✅ Lock mechanisms in place
- ✅ Documentation updated
- ✅ No TODO comments without issue numbers
- ✅ No workarounds present
- ✅ Evidence provided for all claims
Not Done: “It should work” / “It’s mostly complete” / “Just needs cleanup”
Done: “Here’s the test proving it works, the lock preventing regression, and the updated docs”
GitHub Progress Discipline (MANDATORY)
PM Validates Checkboxes
This is critical methodology:
- Agents UPDATE progress descriptions with evidence
- PM VALIDATES by checking boxes
- Include “(PM will validate)” in all acceptance criteria
- Evidence required before PM checks any box
## Acceptance Criteria
- [ ] Task description with clear completion definition (PM will validate)
- [ ] Another task with evidence requirement (PM will validate)
- Evidence: [terminal output or test results will go here]
Progress Updates
Agents update in issue DESCRIPTION (not comments):
## Progress
- [ ] Investigation complete
- Found root cause: session management issue
- Evidence: [link to specific line in engine.py]
- [ ] Fix implemented
- Changed initialization in commit abc123
- Tests passing: see output below
Test Scope Specification
All acceptance criteria must specify test types:
Required Test Categories
- Unit tests: Individual component functionality
- Integration tests: Component interaction and flow
- Performance tests: Speed and resource metrics
- Regression tests: Prevent specific failures from recurring
## Testing Requirements
- [ ] Unit tests: QueryRouter initialization (PM will validate)
- [ ] Integration tests: Intent → Engine → Router flow (PM will validate)
- [ ] Performance tests: <500ms response time (PM will validate)
- [ ] Regression tests: Prevent QueryRouter disabling (PM will validate)
Document Creation Guidelines
Use Artifacts When:
- Creating prompts for agents
- Creating final deliverables for PM
- Creating reusable templates
- Want it visible in project artifacts
Use Filesystem When:
- Creating session logs
- Creating working documents
- Need permanent record
- Multiple files in sequence
Use Sandbox When:
- Quick temporary calculations
- Testing code snippets
- Throwaway explorations
Documentation Location Priority When in Doubt (Use First Available)
- Artifacts (when reliable)
- Pros: Attached to project, versioning, easy navigation
- Cons: Intermittent bugs, download naming issues
- Backup: Download periodically with -HHMM timestamp
- Filesystem (when available)
- Pros: Secure, real-time, repository integration
- Cons: Not available in standard Claude.ai (only Desktop)
- Path:
/Users/xian/Development/piper-morgan/dev/YYYY/MM/DD/
- Sandbox (fallback)
- Pros: Usually available
- Cons: Update failures, no project attachment
- Backup: Download with -HHMM timestamps
Verification Discipline
After EVERY file write:
- Run:
tail -5 [filename] to verify
- Report failures immediately
- Fall back to next location if failed
Session Log Standard v2
Framework and instructions
If in Claude.ai or Claude Desktop with access to project knowledge
- session-log-framework.md
- session-log-instructions.md
If access you have access to the local filesystem
User/xian/Development/piper-morgan/docs/internal/development/tools/session-log-framework.md
User/xian/Development/piper-morgan/docs/internal/development/tools/session-log-instructions.md
YYYY-MM-DD-HHMM-[role]-[product]-log.md
Standard Slugs
Roles:
exec (Chief of Staff)
arch (Chief Architect)
lead (Lead Developer)
prog (Programmer)
Products:
opus (Claude Opus)
sonnet (Claude Sonnet)
code (Claude Code)
cursor (Cursor Agent)
Examples
2025-09-22-0816-arch-opus-log.md
2025-09-22-1046-lead-sonnet-log.md
2025-09-22-1400-prog-code-log.md
Creation Command
# Generic format (replace [role] and [product])
mkdir -p dev/$(date +%Y)/$(date +%m)/$(date +%d)
echo "# Session Log - $(date +%Y-%m-%d %H:%M)" > dev/$(date +%Y)/$(date +%m)/$(date +%d)/$(date +%Y-%m-%d-%H%M)-[role]-[product]-log.md
The Excellence Flywheel
Our systematic approach to prevent the 75% pattern from recurring:
1. Verify Before Assuming
# Don't assume routes/ exists, check:
ls -la web/
# Don't assume a pattern exists, search:
grep -r "PatternName" . --include="*.py"
# Don't assume configuration, verify:
cat config/PIPER.user.md
2. Discover Before Implementing
- Check if it already exists
- Find existing patterns to follow
- Review relevant ADRs
- Consult pattern catalog
3. Test Before Claiming
- Write tests first (TDD when possible)
- Run all related tests
- Verify performance targets
- Check edge cases
4. Lock Before Moving On
- Add regression tests
- Update CI/CD gates
- Document what would break it
- Make it hard to undo
GitHub Discipline
Every piece of work must be tracked:
Issue-First Development
- GitHub issue exists before work starts
- Issue assigned to track ownership
- Issue description contains acceptance criteria
- Updates go in description via checkbox edits (not just comments)
- Evidence provided for each completed checkbox
Linking Everything
- Every TODO has an issue:
# TODO(#184): Fix this
- Every commit references issue:
git commit -m "fix: Initialize QueryRouter (#180)"
- Every PR links to issue:
Closes #180
Template Adaptation
Templates provide structure but should be adapted to context:
- Skip irrelevant sections
- Combine phases if appropriate
- Add detail where needed
- Evidence over format compliance
The goal is effective work, not perfect adherence to templates.
Multi-Agent Coordination
📋 Detailed Guide: methodology-02-AGENT-COORDINATION.md - Comprehensive coordination methodology
📚 Examples: multi-agent-patterns.md - Real project case studies
🛠️ Templates: human-ai-collaboration-referee.md - Implementation protocols
Agent Strengths
📍 Complete Reference: methodology-02-AGENT-COORDINATION.md - Authoritative agent strengths
Quick Summary:
- Claude Code: Multi-file implementations, architecture design, subagent coordination
- Cursor: API endpoints, testing, documentation, UI/UX implementation
Deployment Patterns
🎯 Decision Guide: Validation Approaches - When to use cross-validation vs parallel separation
Cross-Validation Mode: Both agents work same high-risk task, compare approaches
Parallel Separation Mode: Agents work different domains, coordinate at interfaces
Single Agent: Only with explicit justification for simple tasks
Quick Decision Framework
- High risk + complex → Cross-validation
- Clear domains + time critical → Parallel separation
- Uncertain territory → Start cross-validation, evolve to parallel
Multi-Agent Quick Start Checklist
Pre-Deployment (2 minutes):
Deployment (30 seconds):
Execution (ongoing):
Quality Gates:
Common Pitfalls to Avoid
- Duplicate work without coordination
- Interface conflicts from lack of upfront agreement
- Uneven progress without sync checkpoints
- Integration debt from deferred coordination
Evidence Requirements
No claims without proof:
What Counts as Evidence
✅ Terminal output showing success
✅ Test results passing
✅ Performance metrics meeting targets
✅ File diffs showing changes
✅ Screenshots of working features
✅ Logs demonstrating behavior
❌ Not Evidence: “Should work” / “Probably fixed” / “Seems right”
Evidence Examples
# Good: Show the test passing
$ pytest tests/test_orchestration.py -xvs
...
tests/test_orchestration.py::test_github_issue_creation PASSED
# Good: Show the performance
$ python benchmark.py
Average response time: 247ms (target: <500ms) ✓
# Good: Show it actually works
$ curl -X POST http://localhost:8001/api/intent \
-d '{"message": "create github issue about login bug"}'
{"status": "success", "issue_url": "github.com/..."}
STOP Conditions (Red Flags)
Stop immediately and ask for help when:
Infrastructure Mismatches
- File structure different than expected
- Ports not matching documentation
- Missing dependencies
Pattern Confusion
- Multiple ways to do same thing
- Conflicting patterns in codebase
- ADR contradicts code
Test Failures
- ANY test failing after changes
- Performance degradation
- Unexpected behavior
Assumption Moments
- About to guess configuration value
- Unsure which pattern to follow
- Don’t understand why something was done
The Questions to Ask
- “I expected X but found Y - should I proceed?”
- “There are two patterns here - which is correct?”
- “This seems broken but has TODO - fix or skip?”
- “I don’t understand why - can you explain?”
Collaboration Over Perfection
We value:
- Visible struggle over silent suffering
- Asking questions over wrong assumptions
- Sharing confusion over hiding ignorance
- Proposing options over picking blindly
- Learning together over knowing alone
Daily Rhythm
Start each session:
- Check current epic status
- Review relevant ADRs
- Verify infrastructure matches expectations
- Plan work with clear deliverables
- Set evidence targets
End each session:
- Document what was completed (with evidence)
- Update GitHub issues
- Note any discoveries or surprises
- Flag any blockers for next session
- Complete satisfaction assessment (see below)
Session Satisfaction Protocol
Before ending any session, complete satisfaction check:
- Quick 5-point assessment in session log
- Ask PM each metric, compare answers and discuss:
- Value: What got shipped?
- Process: Did methodology work smoothly?
- Feel: How was the cognitive load?
- Learned: Any key insights?
- Tomorrow: Clear next steps?
- Overall: 😊 / 🙂 / 😐 / 😕 / 😞
- GitHub issue emoji close (🎉 great, ✅ good, 🤔 meh, 😤 rough)
This is MANDATORY for session completion. The satisfaction data helps improve our processes and prevent burnout.
Reference: session-log-instructions.md
Session Failure Conditions
The session has failed our standards if ANY of these occur:
- Architect creates gameplan without PM verification
- Architect creates implementation artifacts
- Agents proceed without verification
- Work happens outside GitHub tracking
- Multiple fixes without architectural review
- Assumptions made without checking
- Lead Developer skips 00-START-HERE-LEAD-DEV
When failure conditions occur, stop and reset methodology compliance.
Success Metrics
Per Session
- Setup time: <15 minutes (from ~1 hour baseline)
- Infrastructure verification: 100%
- GitHub tracking: 100% complete
- Manual reminders needed: <5
- Verification theater: 0 instances
Per Week
- Methodology compliance: >90%
- Cross-validation performed: 100%
- Documentation current: Always
- Cognitive load: Significantly reduced
- Wrong gameplans avoided: Target 100%
The “Simpler Than Expected” Pattern
Often, we assume complexity where simplicity exists:
- QueryRouter issue: Session management, not dependency chain
- Bug fixes: Often configuration, not architecture
- Performance: Often caching, not algorithm
Approach: Start with simple checks before complex investigation.
Remember
The path none of us would find alone is the one we discover together through visible collaboration, systematic verification, and complete execution.
When you find yourself guessing - STOP. That’s the moment to engage, not push through.
Excellence comes from completion, not perfection.
Last Updated: September 22, 2025