91650ec65f
fix: deploy frontend to coolify ( #779 )
...
* Ignore act secrets
* Deploy frontend container to ECR
* Use published image
* Remove ecr workflows
* Trigger coolify deployment
* Deploy on release please pr merge
* Upgrade nextjs
* Update secrets example
2025-12-10 13:35:53 +01:00
Igor Monadical
61f0e29d4c
feat: llm retries ( #739 )
...
* llm retries no-mistakes
* self-review (no-mistakes)
* self-review (no-mistakes)
* bigger retry intervals by default
* tests and dry
* restore to main state
* parse retries
* json retries (no-mistakes)
* json retries (no-mistakes)
* json retries (no-mistakes)
* json retries (no-mistakes) self-review
* additional network retry test
* more lindt
---------
Co-authored-by: Igor Loskutov <igor.loskutoff@gmail.com >
2025-12-05 12:08:21 -05:00
Igor Monadical
ec17ed7b58
fix: celery inspect bug sidestep in restart script ( #766 )
...
* celery bug sidestep
* Update server/reflector/services/transcript_process.py
Co-authored-by: pr-agent-monadical[bot] <198624643+pr-agent-monadical[bot]@users.noreply.github.com>
---------
Co-authored-by: Igor Loskutov <igor.loskutoff@gmail.com >
Co-authored-by: pr-agent-monadical[bot] <198624643+pr-agent-monadical[bot]@users.noreply.github.com>
2025-12-04 09:22:51 -05:00
Igor Monadical
00549f153a
feat: dockerhub ci ( #772 )
...
* dockerhub ci
* ci test
---------
Co-authored-by: Igor Loskutov <igor.loskutoff@gmail.com >
2025-12-03 13:26:08 -05:00
3ad78be762
fix: hide rooms settings instead of disabling ( #763 )
...
* Hide rooms settings instead of disabling
* Reset recording trigger
2025-12-03 16:49:17 +01:00
d3a5cd12d2
fix: return participant emails from transcript endpoint ( #769 )
...
* Return participant emails from transcript endpoint
* Fix broken test
2025-12-03 16:47:56 +01:00
af921ce927
chore(main): release 0.22.4 ( #765 )
v0.22.4
2025-12-02 17:11:48 -05:00
Igor Monadical
bd5df1ce2e
fix: Multitrack mixdown optimisation 2 ( #764 )
...
* Revert "fix: Skip mixdown for multitrack (#760 )"
This reverts commit b51b7aa917 .
* multitrack mixdown optimisation
* return the "good" ui part of "skip mixdown"
---------
Co-authored-by: Igor Loskutov <igor.loskutoff@gmail.com >
2025-12-02 17:10:06 -05:00
c8024484b3
chore(main): release 0.22.3 ( #761 )
v0.22.3
2025-12-02 09:08:22 +01:00
28f87c09dc
fix: align daily room settings ( #759 )
...
* Switch platform ui
* Update room settings based on platform
* Add local and none recording options to daily
* Don't create tokens for unauthentikated users
* Enable knocking for private rooms
* Create new meeting on room settings change
* Always use 2-200 option for daily
* Show recording start trigger for daily
* Fix broken test
2025-12-02 09:06:36 +01:00
dabf7251db
chore(main): release 0.22.2 ( #756 )
v0.22.2
2025-12-01 23:39:32 -05:00
Igor Monadical
b51b7aa917
fix: Skip mixdown for multitrack ( #760 )
...
* multitrack mixdown optimisation
* skip mixdown for multitrack
* skip mixdown for multitrack
---------
Co-authored-by: Igor Loskutov <igor.loskutoff@gmail.com >
2025-12-01 23:35:12 -05:00
Igor Monadical
a8983b4e7e
daily auth hotfix ( #757 )
...
Co-authored-by: Igor Loskutov <igor.loskutoff@gmail.com >
2025-11-28 14:52:59 -05:00
Igor Monadical
fe47c46489
fix: daily auto refresh fix ( #755 )
...
* daily auto refresh fix
* Update www/app/lib/AuthProvider.tsx
Co-authored-by: pr-agent-monadical[bot] <198624643+pr-agent-monadical[bot]@users.noreply.github.com>
* Update www/app/[roomName]/components/DailyRoom.tsx
Co-authored-by: pr-agent-monadical[bot] <198624643+pr-agent-monadical[bot]@users.noreply.github.com>
* fix bot lint
---------
Co-authored-by: Igor Loskutov <igor.loskutoff@gmail.com >
Co-authored-by: pr-agent-monadical[bot] <198624643+pr-agent-monadical[bot]@users.noreply.github.com>
2025-11-27 18:31:03 -05:00
a2bb6a27d6
chore(main): release 0.22.1 ( #750 )
v0.22.1
2025-11-27 16:55:08 +01:00
7f0b728991
fix: participants update from daily ( #749 )
...
* Fix participants update from daily
* Use track keys from params
2025-11-27 16:53:26 +01:00
692895c859
chore(main): release 0.22.0 ( #748 )
v0.22.0
2025-11-26 16:53:27 -05:00
Igor Monadical
d63040e2fd
feat: Multitrack segmentation ( #747 )
...
* segmentation multitrack (no-mistakes)
* segmentation multitrack (no-mistakes)
* self review
* self review
* recording poll daily doc
* filter cam_audio tracks to remove screensharing from daily processing
* pr review
---------
Co-authored-by: Igor Loskutov <igor.loskutoff@gmail.com >
2025-11-26 16:21:32 -05:00
8d696aa775
chore(main): release 0.21.0 ( #746 )
v0.21.0
2025-11-26 19:12:02 +01:00
f6ca07505f
feat: add transcript format parameter to GET endpoint ( #709 )
...
* feat: add transcript format parameter to GET endpoint
Add transcript_format query parameter to /v1/transcripts/{id} endpoint
with support for multiple output formats using discriminated unions.
Formats supported:
- text: Plain speaker dialogue (default)
- text-timestamped: Dialogue with [MM:SS] timestamps
- webvtt-named: WebVTT subtitles with participant names
- json: Structured segments with full metadata
Response models use Pydantic discriminated unions with transcript_format
as discriminator field. POST/PATCH endpoints return GetTranscriptWithParticipants
for minimal responses. GET endpoint returns format-specific models.
* Copy transcript format
* Regenerate types
* Fix transcript formats
* Don't throw inside try
* Remove any type
* Toast share copy errors
* transcript_format exhaustiveness and python idiomatic assert_never
* format_timestamp_mmss clear type definition
* Rename seconds_to_timestamp
* Test transcript format with overlapping speakers
* exact match for vtt multispeaker test
---------
Co-authored-by: Sergey Mankovsky <sergey@monadical.com >
Co-authored-by: Igor Loskutov <igor.loskutoff@gmail.com >
2025-11-26 18:51:14 +01:00
Igor Monadical
3aef926203
room creatio hotfix ( #744 )
...
Co-authored-by: Igor Loskutov <igor.loskutoff@gmail.com >
2025-11-25 22:42:09 -05:00
Igor Monadical
0b2c82227d
is_owner pass for dailyco ( #745 )
...
Co-authored-by: Igor Loskutov <igor.loskutoff@gmail.com >
2025-11-25 22:41:54 -05:00
Igor Monadical
689c8075cc
transcription reprocess doc ( #743 )
...
Co-authored-by: Igor Loskutov <igor.loskutoff@gmail.com >
2025-11-25 17:05:46 -05:00
201671368a
chore(main): release 0.20.0 ( #740 )
v0.20.0
2025-11-25 16:32:49 -05:00
Igor Monadical
86d5e26224
feat: transcript restart script ( #742 )
...
* transcript restart script
* fix tests?
* remove useless comment
---------
Co-authored-by: Igor Loskutov <igor.loskutoff@gmail.com >
2025-11-25 16:28:43 -05:00
9bec39808f
feat: link transcript participants ( #737 )
...
* Sync authentik users
* Migrate user_id from uid to id
* Fix auth user id
* Fix ci migration test
* Fix meeting token creation
* Move user id migration to a script
* Add user on first login
* Fix migration chain
* Rename uid column to authentik_uid
* Fix broken ws test
2025-11-25 19:13:19 +01:00
86ac23868b
chore(main): release 0.19.0 ( #727 )
v0.19.0
2025-11-25 12:02:33 -05:00
Igor Monadical
c442a62787
fix: default platform fix ( #736 )
...
* default platform fix
* default platform fix
* default platform fix
* Update server/reflector/db/rooms.py
Co-authored-by: pr-agent-monadical[bot] <198624643+pr-agent-monadical[bot]@users.noreply.github.com>
* default platform fix
---------
Co-authored-by: Igor Loskutov <igor.loskutoff@gmail.com >
Co-authored-by: pr-agent-monadical[bot] <198624643+pr-agent-monadical[bot]@users.noreply.github.com>
2025-11-24 23:10:34 -05:00
Igor Monadical
8e438ca285
feat: dailyco poll ( #730 )
...
* dailyco api module (no-mistakes)
* daily co library self-review
* uncurse
* self-review: daily resource leak, uniform types, enable_recording bomb, daily custom error, video_platforms/daily typing, daily timestamp dry
* dailyco docs parser
* phase 1-2 of daily poll
* dailyco poll (no-mistakes)
* poll docs
* fix tests
* forgotten utils file
* remove generated daily docs
* pr comments
* dailyco poll pr review and self-review
* daily recording poll api fix
* daily recording poll api fix
* review
* review
* fix tests
---------
Co-authored-by: Igor Loskutov <igor.loskutoff@gmail.com >
2025-11-24 22:24:03 -05:00
Igor Monadical
11731c9d38
feat: multitrack cli ( #735 )
...
* multitrack cli prd
* prd/todo (no-mistakes)
* multitrack cli (no-mistakes)
* multitrack cli (no-mistakes)
* multitrack cli (no-mistakes)
* multitrack cli (no-mistakes)
* remove multitrack tests most worthless
* useless comments away
* useless comments away
---------
Co-authored-by: Igor Loskutov <igor.loskutoff@gmail.com >
2025-11-24 10:35:06 -05:00
Igor Monadical
4287f8b8ae
feat: dailyco api module ( #725 )
...
* dailyco api module (no-mistakes)
* daily co library self-review
* uncurse
* self-review: daily resource leak, uniform types, enable_recording bomb, daily custom error, video_platforms/daily typing, daily timestamp dry
* dailyco docs parser
* remove generated daily docs
---------
Co-authored-by: Igor Loskutov <igor.loskutoff@gmail.com >
2025-11-21 10:24:04 -05:00
3e47c2c057
fix: start raw tracks recording ( #729 )
...
* Start raw tracks recording
* Bring back recording properties
2025-11-18 21:04:32 +01:00
Igor Monadical
616092a9bb
keep only debug log for tracks with no words ( #724 )
...
Co-authored-by: Igor Loskutov <igor.loskutoff@gmail.com >
2025-11-18 10:40:46 -05:00
18ed713369
fix: parakeet vad not getting the end timestamp ( #728 )
2025-11-18 09:15:29 -06:00
2801ab3643
chore(main): release 0.18.0 ( #722 )
v0.18.0
2025-11-14 16:10:26 -05:00
Igor Monadical
b20cad76e6
feat: daily QOL: participants dictionary ( #721 )
...
* daily QOL: participants dictionary
* meeting deactivation fix
* meeting deactivation fix
---------
Co-authored-by: Igor Loskutov <igor.loskutoff@gmail.com >
2025-11-14 14:31:52 -05:00
28a7258e45
fix: add proccessing page to file upload and reprocessing ( #650 )
2025-11-14 14:28:39 +01:00
a9a4f32324
fix: copy transcript ( #674 )
...
* Copy transcript
* Fix share copy transcript
* Move copy button above transcript
2025-11-14 13:36:25 +01:00
Igor Monadical
857e035562
fix whereby reprocess logic branch ( #720 )
...
Co-authored-by: Igor Loskutov <igor.loskutoff@gmail.com >
2025-11-13 11:35:29 -05:00
34a3f5618c
chore(main): release 0.17.0 ( #717 )
v0.17.0
2025-11-12 21:25:59 -05:00
Igor Monadical
1473fd82dc
feat: daily.co support as alternative to whereby ( #691 )
...
* llm instructions
* vibe dailyco
* vibe dailyco
* doc update (vibe)
* dont show recording ui on call
* stub processor (vibe)
* stub processor (vibe) self-review
* stub processor (vibe) self-review
* chore(main): release 0.14.0 (#670 )
* Add multitrack pipeline
* Mixdown audio tracks
* Mixdown with pyav filter graph
* Trigger multitrack processing for daily recordings
* apply platform from envs in priority: non-dry
* Use explicit track keys for processing
* Align tracks of a multitrack recording
* Generate waveforms for the mixed audio
* Emit multriack pipeline events
* Fix multitrack pipeline track alignment
* dailico docs
* Enable multitrack reprocessing
* modal temp files uniform names, cleanup. remove llm temporary docs
* docs cleanup
* dont proceed with raw recordings if any of the downloads fail
* dry transcription pipelines
* remove is_miltitrack
* comments
* explicit dailyco room name
* docs
* remove stub data/method
* frontend daily/whereby code self-review (no-mistake)
* frontend daily/whereby code self-review (no-mistakes)
* frontend daily/whereby code self-review (no-mistakes)
* consent cleanup for multitrack (no-mistakes)
* llm fun
* remove extra comments
* fix tests
* merge migrations
* Store participant names
* Get participants by meeting session id
* pop back main branch migration
* s3 paddington (no-mistakes)
* comment
* pr comments
* pr comments
* pr comments
* platform / meeting cleanup
* Use participant names in summary generation
* platform assignment to meeting at controller level
* pr comment
* room playform properly default none
* room playform properly default none
* restore migration lost
* streaming WIP
* extract storage / use common storage / proper env vars for storage
* fix mocks tests
* remove fall back
* streaming for multifile
* cenrtal storage abstraction (no-mistakes)
* remove dead code / vars
* Set participant user id for authenticated users
* whereby recording name parsing fix
* whereby recording name parsing fix
* more file stream
* storage dry + tests
* remove homemade boto3 streaming and use proper boto
* update migration guide
* webhook creation script - print uuid
---------
Co-authored-by: Igor Loskutov <igor.loskutoff@gmail.com >
Co-authored-by: Mathieu Virbel <mat@meltingrocks.com >
Co-authored-by: Sergey Mankovsky <sergey@monadical.com >
2025-11-12 21:21:16 -05:00
372202b0e1
feat: add API key management UI ( #716 )
...
* feat: add API key management UI
- Created settings page for users to create, view, and delete API keys
- Added Settings link to app navigation header
- Fixed delete operation return value handling in backend to properly handle asyncpg's None response
* feat: replace browser confirm with dialog for API key deletion
- Added Chakra UI Dialog component for better UX when confirming API key deletion
- Implemented proper focus management with cancelRef for accessibility
- Replaced native browser confirm() with controlled dialog state
* style: format API keys page with consistent line breaks
* feat: auto-select API key text for easier copying
- Added automatic text selection after API key creation to streamline the copy workflow
- Applied className to Code component for DOM targeting
* feat: improve API keys page layout and responsiveness
- Reduced max width from 1200px to 800px for better readability
- Added explicit width constraint to ensure consistent sizing across viewports
* refactor: remove redundant comments from API keys page
2025-11-10 18:25:08 -05:00
Igor Monadical
d20aac66c4
ui search pagination 2+page re-search fix ( #714 )
...
Co-authored-by: Igor Loskutov <igor.loskutoff@gmail.com >
2025-11-10 14:18:41 -05:00
dc4b737daa
chore(main): release 0.16.0 ( #711 )
v0.16.0
2025-10-24 16:18:49 -06:00
Igor Monadical
0baff7abf7
transcript ui copy button placement ( #712 )
...
Co-authored-by: Igor Loskutov <igor.loskutoff@gmail.com >
2025-10-24 16:52:02 -04:00
Igor Monadical
962c40e2b6
feat: search date filter ( #710 )
...
* search date filter
* search date filter
* search date filter
* search date filter
* pr comment
---------
Co-authored-by: Igor Loskutov <igor.loskutoff@gmail.com >
2025-10-23 20:16:43 -04:00
Igor Monadical
3c4b9f2103
chore: error reporting and naming ( #708 )
...
* chore: error reporting and naming
* chore: error reporting and naming
---------
Co-authored-by: Igor Loskutov <igor.loskutoff@gmail.com >
2025-10-22 13:45:08 -04:00
Igor Monadical
c6c035aacf
removal of email-verified from /me ( #707 )
...
Co-authored-by: Igor Loskutov <igor.loskutoff@gmail.com >
2025-10-21 14:49:33 -04:00
c086b91445
chore(main): release 0.15.0 ( #706 )
v0.15.0
2025-10-21 08:30:22 -06:00
Igor Monadical
9a258abc02
feat: api tokens ( #705 )
...
* feat: api tokens (vibe)
* self-review
* remove token terminology + pr comments (vibe)
* return email_verified
---------
Co-authored-by: Igor Loskutov <igor.loskutoff@gmail.com >
2025-10-20 12:55:25 -04:00