|
1 | 1 | <!-- Sync Impact Report |
| 2 | + Version change: 1.2.0 → 1.2.1 |
| 3 | + Modified sections: |
| 4 | + - Technology Constraints > AI orchestration: added a carve-out |
| 5 | + permitting non-agent single-turn inference (classification, |
| 6 | + embedding, summarisation) through a dedicated client adaptor |
| 7 | + under `src/ai/` using the raw Anthropic or Bedrock SDKs. |
| 8 | + Multi-turn tool-using flows remain exclusively on |
| 9 | + `@anthropic-ai/claude-agent-sdk`. Enforcement is triple-gated: |
| 10 | + spec contract, runtime guards in the adaptor, and fail-fast |
| 11 | + config validation. |
| 12 | + Rationale: unblocks the dispatch-triage feature |
| 13 | + (specs/20260415-000159-triage-dispatch-modes). The triage call |
| 14 | + is a single-turn, no-tool classification; the prior blanket ban |
| 15 | + was intended to prevent agent-loop bypasses, not pure |
| 16 | + inference. The carve-out is guarded by the circuit-breaker, |
| 17 | + latency, and cost requirements in FR-020, SC-003, and SC-005 |
| 18 | + of that spec. PATCH-level per §Amendment Procedure — existing |
| 19 | + guidance is clarified, no principle removed or redefined. |
| 20 | + Added sections: None |
| 21 | + Removed sections: None |
| 22 | + Templates requiring updates: |
| 23 | + - .specify/templates/plan-template.md ✅ no changes needed |
| 24 | + - .specify/templates/spec-template.md ✅ no changes needed |
| 25 | + - .specify/templates/tasks-template.md ✅ no changes needed |
| 26 | + Follow-up TODOs: None |
| 27 | +--> |
| 28 | + |
| 29 | +<!-- Sync Impact Report (historical) |
2 | 30 | Version change: 1.1.0 → 1.2.0 |
3 | 31 | Modified sections: |
4 | 32 | - Architecture Constraints > Single Server Model: added daemon |
@@ -238,8 +266,17 @@ documentation drift from becoming systemic. |
238 | 266 | - **HTTP framework**: `octokit` App class for webhook handling. No |
239 | 267 | additional HTTP frameworks (Express, Fastify, Hono) MUST be added |
240 | 268 | without a constitution amendment. |
241 | | -- **AI orchestration**: `@anthropic-ai/claude-agent-sdk`. Direct LLM |
242 | | - API calls outside the agent SDK are forbidden. |
| 269 | +- **AI orchestration**: `@anthropic-ai/claude-agent-sdk` for all |
| 270 | + multi-turn, tool-using agent flows. Non-agent single-turn |
| 271 | + inference (classification, embedding, summarisation) MAY use the |
| 272 | + raw Anthropic or Bedrock SDKs via a dedicated client adaptor |
| 273 | + module under `src/ai/`, provided **all three** of the following |
| 274 | + hold: (a) the calling feature's spec documents the circuit-breaker, |
| 275 | + latency cap, and cost-budget requirements; (b) the adaptor or call |
| 276 | + site enforces those guards at runtime (not merely at review time); |
| 277 | + and (c) any credentials, model IDs, and budget / timeout knobs are |
| 278 | + validated fail-fast at startup via the Zod config schema. Multi-turn |
| 279 | + tool-using flows MUST continue to use `@anthropic-ai/claude-agent-sdk`. |
243 | 280 | - **MCP**: `@modelcontextprotocol/sdk` for tool server |
244 | 281 | implementations. |
245 | 282 | - **Git hooks**: Husky + lint-staged. Lefthook or other hook managers |
@@ -377,4 +414,4 @@ If a spec, plan, or task contradicts this constitution, the |
377 | 414 | constitution takes precedence. The conflicting artifact MUST be |
378 | 415 | amended to align. |
379 | 416 |
|
380 | | -**Version**: 1.2.0 | **Ratified**: 2026-04-09 | **Last Amended**: 2026-04-13 |
| 417 | +**Version**: 1.2.1 | **Ratified**: 2026-04-09 | **Last Amended**: 2026-04-15 |
0 commit comments