Loading...
Loading...
Evaluate technical options with scoring matrix, trigger Gate 4 for significant decisions
npx skill4agent add wellapp-ai/well tech-divergence| Dimension | 0 (Low Risk) | 1 (Checkpoint) |
|---|---|---|
| Pattern | Exists in codebase | New pattern required |
| Scope | Single domain | Cross-domain impact |
| Data Model | Add field to existing | New entity/table |
| Dependencies | Use existing libs | New dependency |
| API Surface | Internal only | Public/breaking change |
| Reversibility | Easy to undo | Requires migration |
| Security | Non-sensitive data | Auth/permissions |
| Performance | Simple CRUD | Cache/queue/optimization |
API-query-database:
database_id: "[PATTERN_LIBRARY_DB_ID]"
filter:
property: "Domain"
select:
equals: "[current domain]"SemanticSearch: "How is [similar feature] implemented?"
Grep: "[pattern name]" in relevant directoriesContext7 MCP:
1. resolve-library-id: libraryName = "[library]"
2. get-library-docs: topic = "best practices", mode = "info"## Technical Divergence Score
| Dimension | Score | Rationale |
|-----------|-------|-----------|
| Pattern | 0/1 | [Exists/New] |
| Scope | 0/1 | [Single/Cross-domain] |
| Data Model | 0/1 | [Field/Entity] |
| Dependencies | 0/1 | [Existing/New] |
| API Surface | 0/1 | [Internal/Public] |
| Reversibility | 0/1 | [Easy/Migration] |
| Security | 0/1 | [Non-sensitive/Auth] |
| Performance | 0/1 | [CRUD/Optimization] |
| **TOTAL** | [0-8] | |## Technical Approach: Auto-Proceed
**Score:** [N]/8 (below threshold)
**Selected Approach:** [Describe the approach]
**Rationale:**
- Pattern exists: [reference]
- Low cross-domain impact
- Easy to reverse if needed
Proceeding to Commit Plan...## Gate 4: Technical Approach Selection
**Score:** [N]/8 (threshold reached)
**Why human input needed:**
- [List dimensions that scored 1]
### Option A: [Name] (Conservative)
**Approach:** [Description]
**Effort:** S
**Risk:** Low
**Trade-off:** [What you give up]
### Option B: [Name] (Balanced)
**Approach:** [Description]
**Effort:** M
**Risk:** Medium
**Trade-off:** [What you give up]
### Option C: [Name] (Bold)
**Approach:** [Description]
**Effort:** L
**Risk:** Higher
**Trade-off:** [What you give up]
---
**Which approach would you like to proceed with?** (A / B / C)
*If you reject an option, I'll invoke decision-capture to record why.*decision-capturePlan Mode Flow:
Phase 1: APPETITE →
Phase 2: TECHNICAL DIVERGE (this skill) →
If score < 4: Auto-proceed
If score >= 4: Gate 4 → Human selects
Phase 3: COMMIT PLAN| Tool | Purpose |
|---|---|
| Notion MCP | Query Pattern Library database |
| Context7 MCP | Get library best practices |
| SemanticSearch | Find existing codebase patterns |
| Grep | Search for specific implementations |
| Dimension | Score | Rationale |
|---|---|---|
| Pattern | 0 | Column additions done before |
| Scope | 0 | Single domain (tables) |
| Data Model | 0 | Adding field, not entity |
| Dependencies | 0 | Using existing libs |
| API Surface | 0 | Internal only |
| Reversibility | 0 | Easy migration |
| Security | 0 | Non-sensitive data |
| Performance | 0 | Simple CRUD |
| TOTAL | 0 | Auto-proceed |
| Dimension | Score | Rationale |
|---|---|---|
| Pattern | 1 | No WebSocket patterns yet |
| Scope | 1 | Affects auth, tables, workflows |
| Data Model | 1 | New presence entity |
| Dependencies | 1 | Need socket.io |
| API Surface | 1 | New WS endpoints |
| Reversibility | 1 | Would need cleanup migration |
| Security | 1 | User session handling |
| Performance | 1 | Needs connection pooling |
| TOTAL | 8 | Gate 4 required |