pediatric-ai-scribe-v3/docs
Daniel f89dc01729 refactor: one place decides which bucket, on which S3, with which credentials
Three S3 configurations had grown separately — S3_* for documents,
GENERATED_IMAGES_S3_* for images, and AUDIO_BACKUPS_S3_* after them — with
different key names and their own client construction. That is why moving
storage meant hunting through several files.

src/utils/objectStorage.js now resolves settings for any purpose: its own
variables first, then the shared S3_* ones, with a per-purpose bucket name
(S3_BUCKET_AUDIO_BACKUPS). One endpoint plus three bucket names is enough
for the whole app, and a purpose that needs its own account still overrides
everything. Audio backups and documents use it; generated images keeps its
own tested storage module, whose variable names the resolver already
understands.

Nothing existing has to change: S3_ACCESS_KEY_ID, S3_SECRET_ACCESS_KEY and
the AWS_* fallbacks still resolve, and path-style addressing keeps each
purpose's previous default — off for documents, so a Backblaze endpoint
behaves as before, on where a custom endpoint implies MinIO. A _FILE
credential now always beats an inline one, so a mounted secret cannot be
shadowed by an inherited environment variable.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Dv6sqaY6Vq3ChZHMem3cnU
2026-09-10 17:09:13 +02:00
..
logic simplify speech and embeddings through litellm 2026-05-09 05:09:02 +02:00
ai-providers.md docs refresh current workflows 2026-05-09 00:40:45 +02:00
api-reference.md docs: recording, 24-hour retention, and the STT picker 2026-09-10 16:44:17 +02:00
ARCHITECTURE.md document architecture and harden rendering 2026-05-10 01:07:56 +02:00
architecture.md ci: route Android APK through Forgejo releases 2026-05-11 04:21:15 +02:00
authentication.md Fix Turnstile in the mobile app; drop it from login 2026-07-30 17:22:03 +02:00
CLINICAL_ASSISTANT.md fix: correct a false Settings claim; make every test child's stdout pure TAP 2026-09-10 15:41:44 +02:00
configuration.md docs: recording, 24-hour retention, and the STT picker 2026-09-10 16:44:17 +02:00
database.md docs align memory and audio backup behavior 2026-05-08 23:32:39 +02:00
deployment.md feat: ship reviewed prompt history, conversation limits and account protections 2026-09-07 04:01:01 +02:00
developer-guide.md feat: ship reviewed prompt history, conversation limits and account protections 2026-09-07 04:01:01 +02:00
DEVELOPMENT.md feat: ship reviewed prompt history, conversation limits and account protections 2026-09-07 04:01:01 +02:00
embeddings-setup.md simplify speech and embeddings through litellm 2026-05-09 05:09:02 +02:00
features-explained.md simplify speech and embeddings through litellm 2026-05-09 05:09:02 +02:00
global-prompt-administration.md fix: reviewer findings — mhchem macro wrapping, regenerate history dedupe, strict safe image allowlist, stale docs 2026-09-08 19:25:31 +02:00
improvements.md docs refresh current workflows 2026-05-09 00:40:45 +02:00
learning-hub.md docs: rewrite architecture, authentication, configuration, deployment, ai-providers, speech, database, learning-hub, migrations, developer-guide for public audience 2026-04-15 00:26:38 +02:00
migrations.md docs: rewrite architecture, authentication, configuration, deployment, ai-providers, speech, database, learning-hub, migrations, developer-guide for public audience 2026-04-15 00:26:38 +02:00
mobile-build.md ci: route Android APK through Forgejo releases 2026-05-11 04:21:15 +02:00
MODULE_CONVENTIONS.md document architecture and harden rendering 2026-05-10 01:07:56 +02:00
openid-setup.md feat: ED multi-stage UX, extensions polish, docs viewer + application-logic docs 2026-04-28 03:09:38 +02:00
SCALING.md document architecture and harden rendering 2026-05-10 01:07:56 +02:00
speech.md refactor: one place decides which bucket, on which S3, with which credentials 2026-09-10 17:09:13 +02:00
transcription-options.md docs: recording, 24-hour retention, and the STT picker 2026-09-10 16:44:17 +02:00