2026-09-14 - 2026-10-14
Overview
7 Releases published by 1 user
Published
v0.33.2
Published
v0.33.1
Published
v0.33.0
Published
v0.32.1
Published
v0.32.0
Published
v0.31.1
Published
v0.31.0
5 Pull requests merged by 1 user
Merged
#63 fix(uploads): bound the silence in an upload body with a re-armed read deadline (#56)
Merged
#62 feat(uploads): choose the language of a recording; Swedish default, Other = auto (#61 interim)
Merged
#58 v0.32.0: per-recording delete and nav link, cloud-served note, tracker hardening, bounded LLM reads (#37 #51 #52 #53)
Merged
#55 v0.31.1: cross-origin POST protection, ffprobe/ffmpeg limits, receive cap, SIGTERM, lint gate (#41 #47 #48 #49 #50)
Merged
#39 feat: upload audio, get a private Swedish transcript, discuss it (#33, ADR-033)
18 Issues closed from 1 user
Closed
#56 Slow-drip upload body holds a receive slot without a time bound
Closed
#59 serve exits when the OIDC issuer's discovery returns 503 at start-up
Closed
#52 Say when a recording's audio went to the cloud: label the serving endpoint, and document that an empty transcript also triggers the fallback
Closed
#37 Uploads: per-recording delete, nav link, and the unverified deploy facts (ingress body limit, spool volume)
Closed
#53 LLM client reads an unbounded response body before checking the status
Closed
#51 Progress tracker: a hung database save blocks reporting, and the heartbeat uses a different clock from the page
Closed
#50 SIGTERM is not handled: every deploy kills the process without draining or failing the running row (interim fix; the full drain is recorded as a limitation)
Closed
#47 Audio upload: cap concurrent uploads in flight, and give ffprobe its own deadline (found reviewing the production enablement, infra#520)
Closed
#48 Security: refuse cross-origin POSTs; POST /account/delete is forgeable from a sibling *.d-ma.be origin
Closed
#49 ffprobe/ffmpeg resource limits: a 900-stream file costs about 570 MB against the 512 Mi pod limit; no probe deadline; unbounded probe output
Closed
#41 Taskfile lint step can never fail: golangci-lint run || echo "not installed" swallows findings
Closed
#34 DECISION NEEDED: ffmpeg + ffprobe in the runtime image (blocks enabling audio upload)
Closed
#44 Reconcile: store every adjudicated spot, and keep saved segments in step with the merged text
Closed
#43 Upload worker logs nothing until the job ends: no start, phase, engine or adjudication lines
Closed
#33 Upload an audio recording, get a Swedish transcript, discuss it (audio-only subset of #28)
Closed
#42 Upload page: show progress, so the user can tell running from hung or crashed
Closed
#40 Add iguana/pianissimo as a second local transcription backend (middle tier, or run both)
Closed
#35 DECISION NEEDED: berget fallback for private audio — default on or off?
28 Issues created by 1 user
Opened
#33 Upload an audio recording, get a Swedish transcript, discuss it (audio-only subset of #28)
Opened
#34 DECISION NEEDED: ffmpeg + ffprobe in the runtime image (blocks enabling audio upload)
Opened
#35 DECISION NEEDED: berget fallback for private audio — default on or off?
Opened
#36 Chat over very long transcripts: per-model budgets, then retrieval (silent head truncation)
Opened
#37 Uploads: per-recording delete, nav link, and the unverified deploy facts (ingress body limit, spool volume)
Opened
#38 Unmeasured limits behind #33: >90 min, concurrent jobs, berget at length, real speech, Metal OOM
Opened
#40 Add iguana/pianissimo as a second local transcription backend (middle tier, or run both)
Opened
#41 Taskfile lint step can never fail: golangci-lint run || echo "not installed" swallows findings
Opened
#42 Upload page: show progress, so the user can tell running from hung or crashed
Opened
#43 Upload worker logs nothing until the job ends: no start, phase, engine or adjudication lines
Opened
#44 Reconcile: store every adjudicated spot, and keep saved segments in step with the merged text
Opened
#45 DECISION NEEDED: evaluate berget.ai models as the reconciler? It means sending private transcript text to a cloud API
Opened
#46 Audio upload hardening follow-ups the first adversarial review could not verify or did not fix
Opened
#47 Audio upload: cap concurrent uploads in flight, and give ffprobe its own deadline (found reviewing the production enablement, infra#520)
Opened
#48 Security: refuse cross-origin POSTs; POST /account/delete is forgeable from a sibling *.d-ma.be origin
Opened
#49 ffprobe/ffmpeg resource limits: a 900-stream file costs about 570 MB against the 512 Mi pod limit; no probe deadline; unbounded probe output
Opened
#50 SIGTERM is not handled: every deploy kills the process without draining or failing the running row (interim fix; the full drain is recorded as a limitation)
Opened
#51 Progress tracker: a hung database save blocks reporting, and the heartbeat uses a different clock from the page
Opened
#52 Say when a recording's audio went to the cloud: label the serving endpoint, and document that an empty transcript also triggers the fallback
Opened
#53 LLM client reads an unbounded response body before checking the status
Opened
#54 Sprint: audio upload follow-ups (v0.31.1 hotfix, then v0.32.0)
Opened
#56 Slow-drip upload body holds a receive slot without a time bound
Opened
#57 Shutdown: log an undrained Shutdown and let a second signal kill the process
Opened
#59 serve exits when the OIDC issuer's discovery returns 503 at start-up
Opened
#60 Per-recording choice: keep this recording on local models only (prerequisite for allowing Berget as reconciler)
Opened
#61 Uploads: choose the transcription language (Swedish / other / auto-detect), route to the right engine
Opened
#64 Upload idle bound does not enforce a minimum rate: a 1-byte-per-59-s drip still holds a receive slot
Opened
#65 test: two more tests derive their port from the PID (55000 + pid%1000) and can collide like the store test did
5 Unresolved Conversations
Open
#28
Epic: upload any video, get a transcript and key takeaways (KB-Whisper for Swedish)
Open
#31
Chore: parametrize build_page.py and prove the page generalizes (not a spike)
Open
#29
Spike B: does a new file reach a Swedish SRT unattended? (positive control, deliberate ceiling)
Open
#30
Spike A: does a locally-hosted model hold the /bygge schema? (runs today, no new file)
Open
#32
Pre-spike: does anyone re-open /bygge? (blocks #29 and #30)