Skip to content

Extend Sapat Providers in Daytona#181

Open
jjoanna2-debug wants to merge 10 commits into
daytonaio:mainfrom
jjoanna2-debug:extend-sapat-providers-daytona
Open

Extend Sapat Providers in Daytona#181
jjoanna2-debug wants to merge 10 commits into
daytonaio:mainfrom
jjoanna2-debug:extend-sapat-providers-daytona

Conversation

@jjoanna2-debug

@jjoanna2-debug jjoanna2-debug commented May 11, 2026

Copy link
Copy Markdown

Summary

  • Harden the Sapat provider guide around the highest-risk review surface: endpoint control, credential handling, generated artifact cleanup, and bounded async polling.
  • Pin the guide to the live Sapat source shape verified against nibzard/sapat main at ba900b7, including provider registry discovery, @register, ProviderConfig, TranscriptionResult, and AsyncPollProvider.
  • Add maintainer-ready proof commands and review checklists so a provider adapter can be checked without reconstructing the workspace or exposing private audio/transcripts.

Decisive review points

  • Endpoint exfiltration path closed: the guide now requires production traffic on api.assemblyai.com, rejects URL credentials/query strings/unknown hosts, and only allows localhost through an explicit test-only flag.
  • Async provider contract pinned: async_poll.py is documented as shared helper-only; concrete providers belong in their own modules and must register provider classes with @register.
  • State leakage blocked in tests: registry-mutating tests are called out to reset _registry and _discovered so provider availability does not leak between cases.
  • Webhook sprawl rejected: the provider pattern stays on bounded polling unless Sapat grows a signed webhook receiver; no public tunnels, callback URLs, or webhook secrets are introduced just for an adapter.
  • Review proof de-noised: validation commands distinguish placeholders from real credentials and check for committed .env, media, and generated transcript artifacts.

Security / privacy hardening

  • API keys stay in environment variables or workspace secrets; no keys belong in README examples, screenshots, logs, PR bodies, fixtures, or endpoint URLs.
  • Endpoint overrides must not redirect credentials or uploaded audio to arbitrary hosts. Local endpoints are test-only.
  • Live validation uses short non-sensitive clips only; private calls, unreleased demos, medical files, legal recordings, generated transcripts, and payout details stay out of commits.
  • Provider errors must not log authorization headers, raw .env values, full provider responses, provider request metadata, or full transcript text.
  • Temporary MP3 output and smoke-test .txt files are explicitly excluded from committed review artifacts.

Current validation

  • npx --yes markdownlint-cli@0.45.0 guides/20260511_extend_sapat_providers_in_daytona.md definitions/20260511_definition_transcription_provider_adapter.md authors/jean_claude_joanna.md
  • git diff --check
  • file guides/assets/20260511_extend_sapat_providers_in_daytona_img1.png and sips -g pixelWidth -g pixelHeight guides/assets/20260511_extend_sapat_providers_in_daytona_img1.png verified a valid 1600x900 PNG.
  • High-confidence token/private-key scan across changed text files returned no hits.
  • git ls-files | rg '(^|/)\.env$|\.mp3$|\.mp4$|sample\.txt$' returned no committed smoke-test artifacts.
  • git grep -nE 'Bearer [A-Za-z0-9_.-]{20,}|ASSEMBLYAI_API_KEY=' -- . | rg -v 'ASSEMBLYAI_API_KEY=your_|git grep -nE' returned no real credentials.
  • Codex Security diff preflight returned status: ready; final diff audit found no credential, private-media, generated-transcript, or executable-runtime expansion in this content-only patch.
  • Latest pushed commit: f747241031672c935c644ad9c7fc83d886b93e73; DCO is green.

/claim #13

Signed-off-by: Jean-Claude Joanna <jeanclaudejoanna@JCs-M3-MacBook-Pro.local>
@jjoanna2-debug
jjoanna2-debug force-pushed the extend-sapat-providers-daytona branch from bd00a05 to f05d014 Compare May 11, 2026 13:32
Signed-off-by: Jean-Claude Joanna <jeanclaudejoanna@JCs-M3-MacBook-Pro.local>
@jjoanna2-debug
jjoanna2-debug force-pushed the extend-sapat-providers-daytona branch from 53b9be4 to 296c99d Compare May 11, 2026 20:52
Signed-off-by: Jean-Claude Joanna <jeanclaudejoanna@JCs-M3-MacBook-Pro.local>
@jjoanna2-debug
jjoanna2-debug force-pushed the extend-sapat-providers-daytona branch from 156fb1d to 57a29c7 Compare May 13, 2026 03:11
Signed-off-by: Jean-Claude Joanna <jeanclaudejoanna@JCs-M3-MacBook-Pro.local>
@jjoanna2-debug
jjoanna2-debug force-pushed the extend-sapat-providers-daytona branch from 740e3f4 to fcaff6e Compare May 13, 2026 23:50
Jean-Claude Joanna added 2 commits May 14, 2026 23:33
Signed-off-by: Jean-Claude Joanna <jeanclaudejoanna@JCs-M3-MacBook-Pro.local>
Signed-off-by: Jean-Claude Joanna <jeanclaudejoanna@JCs-M3-MacBook-Pro.local>
@jjoanna2-debug
jjoanna2-debug force-pushed the extend-sapat-providers-daytona branch from 62a4f16 to c992ef7 Compare May 19, 2026 22:46
Signed-off-by: Jean-Claude Joanna <jeanclaudejoanna@JCs-M3-MacBook-Pro.local>
@jjoanna2-debug
jjoanna2-debug force-pushed the extend-sapat-providers-daytona branch from 864830e to 88cd1ca Compare May 30, 2026 21:43
Signed-off-by: Jean-Claude Joanna <273834277+jjoanna2-debug@users.noreply.github.com>
@jjoanna2-debug
jjoanna2-debug force-pushed the extend-sapat-providers-daytona branch from dd7b357 to 0710f5a Compare May 30, 2026 22:08
@jjoanna2-debug
jjoanna2-debug force-pushed the extend-sapat-providers-daytona branch 2 times, most recently from dc766aa to 520c2d8 Compare June 19, 2026 23:48
Signed-off-by: Jean-Claude Joanna <273834277+jjoanna2-debug@users.noreply.github.com>
@jjoanna2-debug
jjoanna2-debug force-pushed the extend-sapat-providers-daytona branch from 520c2d8 to a0fda00 Compare June 19, 2026 23:50
Signed-off-by: Jean-Claude Joanna <273834277+jjoanna2-debug@users.noreply.github.com>
@jjoanna2-debug
jjoanna2-debug force-pushed the extend-sapat-providers-daytona branch from ffc18ca to f747241 Compare July 8, 2026 09:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant