-
Notifications
You must be signed in to change notification settings - Fork 131
Expand file tree
/
Copy path.fernignore
More file actions
136 lines (119 loc) · 6.75 KB
/
.fernignore
File metadata and controls
136 lines (119 loc) · 6.75 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
# Custom client implementation extending BaseClient with additional features:
# - access_token parameter support (Bearer token authentication)
# - Automatic session ID generation and header injection (x-deepgram-session-id)
# This file is manually maintained and should not be regenerated
src/deepgram/client.py
# WebSocket socket clients:
# - except Exception broad catch (supports custom transports, generator narrows to WebSocketException)
# - _sanitize_numeric_types in agent socket client (float→int for API)
# - optional message param on control send_ methods (send_keep_alive, send_close_stream, etc.)
# so users don't need to instantiate the type themselves for no-payload control messages
# - listen/v2 send_configure: typing.Any / raw _send shim (generator's ListenV2Configure model
# and ListenV2ConfigureSuccess not used)
# [temporarily frozen — manual patches listed above]
src/deepgram/agent/v1/socket_client.py
src/deepgram/listen/v1/socket_client.py
src/deepgram/listen/v2/socket_client.py
src/deepgram/speak/v1/socket_client.py
# Backward-compat patch: AgentV1SettingsAgentContext schema restructure as of
# 2026-05-05. The new schema nests messages under .context.messages; this file
# carries a model_validator(mode='before') that accepts the legacy `messages=`
# kwarg and remaps it to `context={"messages": ...}` so existing callers keep
# producing the correct wire payload, plus a read-side `.messages` property so
# existing attribute access keeps working.
src/deepgram/agent/v1/types/agent_v1settings_agent_context.py
src/deepgram/agent/v1/types/agent_v1settings_agent.py
src/deepgram/agent/v1/types/agent_v1settings.py
src/deepgram/agent/v1/types/agent_v1settings_audio_output.py
src/deepgram/agent/v1/requests/agent_v1settings_agent_context.py
src/deepgram/agent/v1/requests/agent_v1settings_agent.py
src/deepgram/agent/v1/requests/agent_v1settings.py
# Backward-compatibility alias shims for renamed generated public types/params.
# These are hand-written wrappers around the current generated names and must not be regenerated.
src/deepgram/agent/v1/types/agent_v1history_content.py
src/deepgram/agent/v1/types/agent_v1history_function_calls.py
src/deepgram/agent/v1/types/agent_v1settings_agent_context_messages_item.py
src/deepgram/agent/v1/types/agent_v1settings_agent_context_messages_item_content.py
src/deepgram/agent/v1/types/agent_v1settings_agent_context_messages_item_content_role.py
src/deepgram/agent/v1/types/agent_v1settings_agent_context_messages_item_function_calls.py
src/deepgram/agent/v1/types/agent_v1settings_agent_context_messages_item_function_calls_function_calls_item.py
src/deepgram/agent/v1/requests/agent_v1history_content.py
src/deepgram/agent/v1/requests/agent_v1history_function_calls.py
src/deepgram/agent/v1/requests/agent_v1settings_agent_context_messages_item.py
src/deepgram/agent/v1/requests/agent_v1settings_agent_context_messages_item_content.py
src/deepgram/agent/v1/requests/agent_v1settings_agent_context_messages_item_function_calls.py
src/deepgram/agent/v1/requests/agent_v1settings_agent_context_messages_item_function_calls_function_calls_item.py
src/deepgram/types/create_key_v1request_one.py
src/deepgram/requests/create_key_v1request_one.py
# Backward-compatibility alias shims for the 2026-05-14 listen-provider rename.
# The spec deduplicated AgentV1SettingsAgent[Context]ListenProviderV1/V2/V2LanguageHint
# into a single top-level DeepgramListenProvider* type. These hand-written aliases
# preserve the old public import paths so existing callers keep working.
src/deepgram/agent/v1/types/agent_v1settings_agent_context_listen_provider_v1.py
src/deepgram/agent/v1/types/agent_v1settings_agent_context_listen_provider_v2.py
src/deepgram/agent/v1/types/agent_v1settings_agent_context_listen_provider_v2language_hint.py
src/deepgram/agent/v1/types/agent_v1settings_agent_listen_provider_v1.py
src/deepgram/agent/v1/types/agent_v1settings_agent_listen_provider_v2.py
src/deepgram/agent/v1/requests/agent_v1settings_agent_context_listen_provider_v1.py
src/deepgram/agent/v1/requests/agent_v1settings_agent_context_listen_provider_v2.py
src/deepgram/agent/v1/requests/agent_v1settings_agent_context_listen_provider_v2language_hint.py
src/deepgram/agent/v1/requests/agent_v1settings_agent_listen_provider_v1.py
src/deepgram/agent/v1/requests/agent_v1settings_agent_listen_provider_v2.py
# Package __init__.py files that carry hand-applied legacy alias re-exports for the
# above shims. Fern would otherwise regenerate these and strip the legacy entries on
# every regen. Frozen to preserve the public-import surface for renamed types/params.
# Re-apply genuine new generator additions to these files manually after each regen.
src/deepgram/__init__.py
src/deepgram/agent/__init__.py
src/deepgram/agent/v1/__init__.py
src/deepgram/agent/v1/types/__init__.py
src/deepgram/agent/v1/requests/__init__.py
src/deepgram/types/__init__.py
src/deepgram/requests/__init__.py
# Coerces Python bools to lowercase "true"/"false" before urlencode, which
# otherwise stringifies via str() and produces "True"/"False" — rejected by
# Deepgram's websocket query strings. HTTP raw_clients hand params to httpx
# directly and are unaffected; httpx accepts the pre-stringified values fine.
# [temporarily frozen — manual patches listed above]
src/deepgram/core/query_encoder.py
# Hand-written custom tests
tests/custom/test_agent_history.py
tests/custom/test_compat_aliases.py
tests/custom/test_query_encoder.py
tests/custom/test_text_builder.py
tests/custom/test_transport.py
tests/typecheck/compat_aliases.py
# Wire test with restored compatibility coverage for legacy create-key request alias
tests/wire/test_manage_v1_projects_keys.py
# Manual standalone tests
tests/manual
# README with custom examples, migration guide links, and contributing section
README.md
# Changelog managed by release-please
CHANGELOG.md
# Contributing guide
CONTRIBUTING.md
# Reference with Fern-generated REST API docs plus manually maintained WebSocket sections
reference.md
# TextBuilder helpers for TTS pronunciation and pause controls.
# Manually maintained — not auto-generated.
src/deepgram/helpers
# Custom WebSocket transport support:
# - transport_interface.py: Protocol definitions (SyncTransport, AsyncTransport) for
# users implementing custom transports. This is the public-facing interface file.
# - transport.py: Internal shims, install/restore helpers, and conflict guard.
# - transports/: Module stub (SageMaker transport moved to separate deepgram-sagemaker package).
# All are manually maintained and should not be regenerated.
src/deepgram/transport_interface.py
src/deepgram/transport.py
src/deepgram/transports
# Agent files (Claude Code, OpenCode, other agent tools)
# .agents/skills/ holds agent-agnostic skills discoverable via `npx skills`
CLAUDE.md
AGENTS.md
.claude
.agents
# Folders to ignore
.github
docs
examples