SDLC Awareness
Synapses adapts its behavior based on where you are in the software development lifecycle. By setting the SDLC phase and quality mode, you control how context is assembled, what checks are enforced, and how detailed the analysis is.
Setting the SDLC Phase
SDLC phase is now set via session_init (the standalone set_sdlc_phase tool has been absorbed):
{ "tool": "session_init", "arguments": { "agent_id": "my-agent", "sdlc_phase": "implementation" }}Available Phases
planning
Focus on high-level structure and feasibility.
- Context packets emphasize package-level dependencies
- Impact analysis covers broader scope
- Brain (if enabled) suggests architectural considerations
- Rules are surfaced proactively
implementation
Focus on code patterns and correctness.
- Context packets include sibling functions as patterns
- Tests and interface contracts are highlighted
- Brain suggests implementation patterns from the codebase
- Rules are enforced on returned context
testing
Focus on coverage and edge cases.
- Context packets boost TESTED_BY edges
- Untested entities are flagged
- Brain suggests missing test cases
- Failure episodes are prioritized in recall
review
Focus on violations, consistency, and documentation.
- Context packets include architectural rule checks
- Violations are prominently surfaced
- Brain performs consistency analysis
- ADRs and annotations are included by default
maintenance
Focus on dependencies, staleness, and migration paths.
- Stale memory episodes are flagged
- Dependency age and update status included
- Brain identifies deprecation risks
- Cross-project drift highlighted in federation
Quality Modes
Quality modes control the depth of analysis. Set them via session_init alongside or independently of SDLC phase (the standalone set_quality_mode tool has been absorbed):
{ "tool": "session_init", "arguments": { "agent_id": "my-agent", "quality_mode": "standard" }}quick
Minimal analysis. Fast responses, less detail.
- Shallow graph traversal (1-2 hops)
- No brain analysis even if enabled
- Rules checked but not expanded
- Good for small, localized changes
standard
Balanced analysis. Default mode.
- Medium graph traversal (2-3 hops)
- Brain Tier 1 if enabled
- Full rule checking
- Good for most development work
enterprise
Maximum analysis. Thorough but slower.
- Deep graph traversal (3+ hops)
- Brain Tier 2 if enabled
- Full rule checking with path analysis
- Cross-project impact assessment
- Good for critical changes, release preparation
How Phase Affects Context Packets
The same get_context(mode="intent") call returns different results depending on the active phase:
{ "tool": "get_context", "arguments": { "mode": "intent", "task": "Update the user validation logic", "intent": "modify" }}In implementation phase:
- The validation function and its callers
- Existing validation patterns in the codebase
- The interface it implements
- Related tests
In review phase:
- The validation function and its callers
- Architectural rule violations
- Test coverage status
- Related ADRs and decision episodes
- Consistency with other validators
In testing phase:
- The validation function
- Existing tests (prominently)
- Untested code paths
- Edge cases from failure episodes
- Related test patterns
Decision Logging
During planning and review phases, Synapses automatically prompts for decision logging when significant changes are detected. The brain (Tier 2+) drafts ADR suggestions based on the context.
// Brain suggests after a get_context(mode="intent") call in planning phase:{ "suggested_adr": { "title": "Switch from regex to schema-based validation", "context": "Current regex validation is brittle and hard to maintain", "decision": "Use JSON Schema validation with ajv library", "status": "proposed" }}Accept or dismiss the suggestion:
{ "tool": "rules", "arguments": { "action": "upsert_adr", "title": "Switch from regex to schema-based validation", "status": "accepted", "context": "Current regex validation is brittle and hard to maintain", "decision": "Use JSON Schema validation with ajv library", "consequences": "Better maintainability, slight performance overhead, need to write schemas" }}Combining Phase and Quality
Phase and quality mode are independent. You can have any combination:
| Scenario | Phase | Quality |
|---|---|---|
| Quick bug fix | implementation | quick |
| Normal feature work | implementation | standard |
| Architecture review | review | enterprise |
| Release preparation | maintenance | enterprise |
| Rapid prototyping | planning | quick |
// Set both via session_init{ "tool": "session_init", "arguments": { "agent_id": "my-agent", "sdlc_phase": "review", "quality_mode": "enterprise" } }