oficina / meet Public

Merge origin/main (0e2bd6a: 0.4.9 quality telemetry, Keymail sign-in, rastrillo fb806a2) into fix/mac-icon-and-mini-centre

claude agent, operated by paul@keymail.dev 8c0c6a52086d7478259bbd05e35b58a5c21d6b86 parent e616f90parent 0e2bd6a
86 files changed, +11440 −477
  • AGENTS.md +16 −2
  • Makefile +1 −0
  • PRODUCT.md +26 −2
  • callscore/report.go +175 −0
  • callscore/report_test.go +204 −0
  • callscore/room.go +7 −0
  • cmd/calls/main.go +60 −20
  • cmd/calls/shutdown_test.go +403 −0
  • cmd/quality-summary/main.go +485 −0
  • cmd/quality-summary/main_test.go +74 −0
  • docs/operations/quality.md +103 −0
  • docs/superpowers/specs/2026-09-07-meet-design.md +190 −0
  • go.mod +3 −1
  • go.sum +6 −2
  • internal/calls/app.go +71 −7
  • internal/calls/app_relay_test.go +4 −1
  • internal/calls/auth.go +173 −44
  • internal/calls/auth_test.go +1 −1
  • internal/calls/config.go +14 −1
  • internal/calls/credits/notices.json +12 −1
  • internal/calls/handlers_room.go +5 −0
  • internal/calls/home.go +1 −1
  • internal/calls/home_router_test.go +55 −8
  • internal/calls/home_security_test.go +12 −2
  • internal/calls/hub/hub.go +18 −1
  • internal/calls/hub/relay.go +3 −1
  • internal/calls/hub/report.go +159 −0
  • internal/calls/hub/report_test.go +82 −0
  • internal/calls/keymail_signin_test.go +313 −0
  • internal/calls/keymailtest/keymailtest.go +190 −0
  • internal/calls/quality.go +477 −0
  • internal/calls/ratelimit.go +6 −0
  • internal/calls/render.go +4 −0
  • internal/calls/serving.go +70 −0
  • internal/calls/signin_equal_work_test.go +149 −0
  • internal/calls/signin_mail.go +304 −0
  • internal/calls/signin_mail_test.go +370 −0
  • internal/calls/signin_timing_test.go +94 −0
  • internal/calls/static/calls-shell.css +4 −0
  • internal/calls/static/calls.css +56 −0
  • internal/calls/static/report.js +355 −0
  • internal/calls/static/room.js +726 −13
  • internal/calls/static/select.js +1085 −256
  • internal/calls/static/tokens.css +653 −65
  • internal/calls/stream.go +2 −2
  • internal/calls/templates/join.html +10 −0
  • internal/calls/templates/partials/report.html +48 −0
  • internal/calls/templates/room.html +11 −0
  • internal/calls/templates/signin.html +20 −2
  • internal/callstest/browser_test.go +223 −2
  • internal/callstest/config_test.go +9 −3
  • internal/callstest/confirm_test.go +205 −0
  • internal/callstest/harness_test.go +81 −5
  • internal/callstest/join_test.go +44 −10
  • internal/callstest/main_test.go +49 −0
  • internal/callstest/native_browser_test.go +43 −1
  • internal/callstest/quality_test.go +603 −0
  • internal/callstest/schema_test.go +3 −1
  • internal/callstest/signin_test.go +17 −4
  • native/README.md +22 −0
  • native/apple/Sources/CallsInterop/Interop.swift +5 −0
  • native/apple/Sources/CallsKit/Audio.swift +15 −0
  • native/apple/Sources/CallsKit/AudioDevices.swift +2 −0
  • native/apple/Sources/CallsKit/Call.swift +281 −7
  • native/apple/Sources/CallsKit/CallChrome.swift +20 −6
  • native/apple/Sources/CallsKit/CallsLobby.swift +23 −0
  • native/apple/Sources/CallsKit/CallsSettingsView.swift +1 −0
  • native/apple/Sources/CallsKit/DevicePanel.swift +18 −0
  • native/apple/Sources/CallsKit/MacCallView.swift +19 −3
  • native/apple/Sources/CallsKit/Media.swift +16 −0
  • native/apple/Sources/CallsKit/QualityReport.swift +781 −0
  • native/apple/Sources/CallsKit/ReportProblem.swift +270 −0
  • native/apple/Sources/CallsKit/ServerSettings.swift +23 −0
  • native/apple/Sources/CallsMac/CallsMac.swift +4 −0
  • native/apple/Tests/CallsKitTests/QualityReportTests.swift +450 −0
  • native/bridge/bridge.go +39 −0
  • native/bridge/bridge_test.go +77 −0
  • native/ios/Sources/CallsPhone.swift +2 −0
  • native/ios/Sources/PhoneFullScreenCall.swift +5 −1
  • native/ios/UITests/CallsPhoneUITests.swift +42 −0
  • native/ios/project.yml +1 −1
  • protocol/messages.go +4 −0
  • protocol/quality.go +191 −0
  • test/browser/call.mjs +158 −0
  • test/browser/native-auth.mjs +3 −0
  • test/browser/room-quality.test.mjs +381 −0
AGENTS.md

Loading diff…

Makefile

Loading diff…

PRODUCT.md

Loading diff…

callscore/report.go

Loading diff…

callscore/report_test.go

Loading diff…

callscore/room.go

Loading diff…

cmd/calls/main.go

Loading diff…

cmd/calls/shutdown_test.go

Loading diff…

cmd/quality-summary/main.go

Loading diff…

cmd/quality-summary/main_test.go

Loading diff…

docs/operations/quality.md

Loading diff…

docs/superpowers/specs/2026-09-07-meet-design.md

Loading diff…

go.mod

Loading diff…

go.sum

Loading diff…

internal/calls/app.go

Loading diff…

internal/calls/app_relay_test.go

Loading diff…

internal/calls/auth.go

Loading diff…

internal/calls/auth_test.go

Loading diff…

internal/calls/config.go

Loading diff…

internal/calls/credits/notices.json

Loading diff…

internal/calls/handlers_room.go

Loading diff…

internal/calls/home.go

Loading diff…

internal/calls/home_router_test.go

Loading diff…

internal/calls/home_security_test.go

Loading diff…

internal/calls/hub/hub.go

Loading diff…

internal/calls/hub/relay.go

Loading diff…

internal/calls/hub/report.go

Loading diff…

internal/calls/hub/report_test.go

Loading diff…

internal/calls/keymail_signin_test.go

Loading diff…

internal/calls/keymailtest/keymailtest.go

Loading diff…

internal/calls/quality.go

Loading diff…

internal/calls/ratelimit.go

Loading diff…

internal/calls/render.go

Loading diff…

internal/calls/serving.go

Loading diff…

internal/calls/signin_equal_work_test.go

Loading diff…

internal/calls/signin_mail.go

Loading diff…

internal/calls/signin_mail_test.go

Loading diff…

internal/calls/signin_timing_test.go

Loading diff…

internal/calls/static/calls-shell.css

Loading diff…

internal/calls/static/calls.css

Loading diff…

internal/calls/static/report.js

Loading diff…

internal/calls/static/room.js

Loading diff…

internal/calls/static/select.js

Loading diff…

internal/calls/static/tokens.css

Loading diff…

internal/calls/stream.go

Loading diff…

internal/calls/templates/join.html

Loading diff…

internal/calls/templates/partials/report.html

Loading diff…

internal/calls/templates/room.html

Loading diff…

internal/calls/templates/signin.html

Loading diff…

internal/callstest/browser_test.go

Loading diff…

internal/callstest/config_test.go

Loading diff…

internal/callstest/confirm_test.go

Loading diff…

internal/callstest/harness_test.go

Loading diff…

internal/callstest/join_test.go

Loading diff…

internal/callstest/main_test.go

Loading diff…

internal/callstest/native_browser_test.go

Loading diff…

internal/callstest/quality_test.go

Loading diff…

internal/callstest/schema_test.go

Loading diff…

internal/callstest/signin_test.go

Loading diff…

native/README.md

Loading diff…

native/apple/Sources/CallsInterop/Interop.swift

Loading diff…

native/apple/Sources/CallsKit/Audio.swift

Loading diff…

native/apple/Sources/CallsKit/AudioDevices.swift

Loading diff…

native/apple/Sources/CallsKit/Call.swift

Loading diff…

native/apple/Sources/CallsKit/CallChrome.swift

Loading diff…

native/apple/Sources/CallsKit/CallsLobby.swift

Loading diff…

native/apple/Sources/CallsKit/CallsSettingsView.swift

Loading diff…

native/apple/Sources/CallsKit/DevicePanel.swift

Loading diff…

native/apple/Sources/CallsKit/MacCallView.swift

Loading diff…

native/apple/Sources/CallsKit/Media.swift

Loading diff…

native/apple/Sources/CallsKit/QualityReport.swift

Loading diff…

native/apple/Sources/CallsKit/ReportProblem.swift

Loading diff…

native/apple/Sources/CallsKit/ServerSettings.swift

Loading diff…

native/apple/Sources/CallsMac/CallsMac.swift

Loading diff…

native/apple/Tests/CallsKitTests/QualityReportTests.swift

Loading diff…

native/bridge/bridge.go

Loading diff…

native/bridge/bridge_test.go

Loading diff…

native/ios/Sources/CallsPhone.swift

Loading diff…

native/ios/Sources/PhoneFullScreenCall.swift

Loading diff…

native/ios/UITests/CallsPhoneUITests.swift

Loading diff…

native/ios/project.yml

Loading diff…

protocol/messages.go

Loading diff…

protocol/quality.go

Loading diff…

test/browser/call.mjs

Loading diff…

test/browser/native-auth.mjs

Loading diff…

test/browser/room-quality.test.mjs

Loading diff…