🛰️ OpenAPI spec drift detected
The embedded spec scripts/syllable-cli/internal/spec/openapi.json differs from upstream:
https://raw.githubusercontent.com/asksyllable/syllable-sdk-typescript/main/openapi.json
Structural diff
## NEW PATHS (3)
+ /api/v1/bridge_phrases/
GET — List Bridge Phrases ['bridge_phrases']
POST — Create Bridge Phrases ['bridge_phrases']
PUT — Update Bridge Phrases ['bridge_phrases']
+ /api/v1/bridge_phrases/{bridge_phrases_id}
GET — Get Bridge Phrases ['bridge_phrases']
DELETE — Delete Bridge Phrases ['bridge_phrases']
+ /api/v1/sessions/timeline/{session_id}
GET — Get Session Timeline By Id ['sessions.timeline']
## NEW SCHEMAS (18)
+ BridgePhrasesAgentInfo
id: integer (required)
name: string (required)
+ BridgePhrasesConfigPayload
phrases: $ref:lib__database__dao__organization__bridge_phrases_dao__BridgePhraseMessages
tools: array
smart_turn_timeout_seconds: anyOf
randomize_bridge_phrases: boolean
+ BridgePhrasesCreateRequest
name: string (required)
description: anyOf
config: $ref:BridgePhrasesConfigPayload
+ BridgePhrasesProperties
+ BridgePhrasesResponse
name: string (required)
description: anyOf
config: $ref:BridgePhrasesConfigPayload
id: integer (required)
edit_comments: anyOf
agents_info: anyOf
updated_at: string (required)
last_updated_by: string (required)
+ BridgePhrasesUpdateRequest
name: string (required)
description: anyOf
config: $ref:BridgePhrasesConfigPayload
id: integer (required)
edit_comments: anyOf
+ FilterOp
+ ListResponse_BridgePhrasesResponse_
items: array (required)
page: integer (required)
page_size: integer (required)
total_pages: anyOf
total_count: anyOf
+ LocalizedBridgePhrases
messages: array
+ SessionTimelineResponse
session_id: string (required)
session_start: anyOf
events: array (required)
+ TargetFilterRule
field: string (required)
op: $ref:FilterOp (required)
values: array
+ TargetFilters
match: string
on_unknown: string
rules: array
+ TimelineEvent
kind: $ref:TimelineEventKind (required)
timestamp: string (required)
offset: string (required)
turn_index: anyOf
source: anyOf
text: anyOf
lang: anyOf
category: anyOf
label: anyOf
metadata: anyOf
... (4 more fields)
+ TimelineEventKind
+ ToolBridgePhraseConfig
tool_name: string (required)
phrases: $ref:lib__database__dao__organization__bridge_phrases_dao__BridgePhraseMessages (required)
+ VoicemailDetectionConfig
mode: anyOf
voicemail_detection_overall_timeout: anyOf
voicemail_detection_pre_speech_timeout: anyOf
voicemail_detection_post_speech_timeout: anyOf
voicemail_detection_speech_threshold: anyOf
+ lib__database__dao__organization__bridge_phrases_dao__BridgePhraseMessages
messages: array
localized: object
+ schemas__cortex__v1__bridge_phrases__BridgePhraseMessages
messages: array
randomize_messages: boolean
first_slow_messages: array
very_slow_messages: array
tool_responses: array
## REMOVED SCHEMAS (1)
- BridgePhraseMessages
## CHANGED SCHEMAS — field-level diffs (7)
~ AgentCreate
+ bridge_phrases_id: anyOf
~ AgentResponse
+ bridge_phrases_id: anyOf
~ AgentUpdate
+ bridge_phrases_id: anyOf
~ CommunicationRequestResult
+ enrichment: anyOf
~ OutboundCampaign
+ target_filters: anyOf
~ OutboundCampaignInput
+ target_filters: anyOf
~ SessionAction
+ duration_ms: anyOf
## CHANGED ENUMS — member diffs (7)
~ BridgePhrasesProperties
+ description
+ last_updated_by
+ name
+ updated_at
~ ChannelManagerStatus
+ DECLINED
+ SIP_DOES_NOT_EXIST_ANYWHERE
+ SIP_LOOP_DETECTED
+ SIP_NOT_FOUND
+ SIP_TEMPORARILY_UNAVAILABLE
+ UNEXPECTED_ERROR
~ FilterOp
+ eq
+ exists
+ in
+ neq
+ not_exists
+ not_in
~ TargetFilters.match
+ all
+ any
~ TargetFilters.on_unknown
+ exclude
+ include
~ TimelineEventKind
+ latency
+ tool
+ transcript
~ VoicemailDetectionConfig.mode
+ v1
+ v2
## SUMMARY
Paths: +3 added, -0 removed, ~0 changed
Schemas: +18 added, -1 removed, ~7 changed
Enums: ~7 changed (0 with removed values — breaking)
How to reconcile
Run the syllable-sync skill (or let the local syllable-spec-sync routine do it). It replaces the embedded spec and updates cmd/*.go + docs in a single atomic PR — never merge a spec-only bump, or schema get will advertise endpoints the CLI can't call.
Auto-generated by spec-drift.yml · run log. This issue is updated in place on each run and closed automatically when the spec is back in sync.
🛰️ OpenAPI spec drift detected
The embedded spec
scripts/syllable-cli/internal/spec/openapi.jsondiffers from upstream:Structural diff
How to reconcile
Run the
syllable-syncskill (or let the localsyllable-spec-syncroutine do it). It replaces the embedded spec and updatescmd/*.go+ docs in a single atomic PR — never merge a spec-only bump, orschema getwill advertise endpoints the CLI can't call.Auto-generated by spec-drift.yml · run log. This issue is updated in place on each run and closed automatically when the spec is back in sync.