Merge origin/main (0e2bd6a: 0.4.9 quality telemetry, Keymail sign-in, rastrillo fb806a2) into fix/mac-icon-and-mini-centre
AGENTS.md+16 −2Makefile+1 −0PRODUCT.md+26 −2callscore/report.go+175 −0callscore/report_test.go+204 −0callscore/room.go+7 −0cmd/calls/main.go+60 −20cmd/calls/shutdown_test.go+403 −0cmd/quality-summary/main.go+485 −0cmd/quality-summary/main_test.go+74 −0docs/operations/quality.md+103 −0docs/superpowers/specs/2026-09-07-meet-design.md+190 −0go.mod+3 −1go.sum+6 −2internal/calls/app.go+71 −7internal/calls/app_relay_test.go+4 −1internal/calls/auth.go+173 −44internal/calls/auth_test.go+1 −1internal/calls/config.go+14 −1internal/calls/credits/notices.json+12 −1internal/calls/handlers_room.go+5 −0internal/calls/home.go+1 −1internal/calls/home_router_test.go+55 −8internal/calls/home_security_test.go+12 −2internal/calls/hub/hub.go+18 −1internal/calls/hub/relay.go+3 −1internal/calls/hub/report.go+159 −0internal/calls/hub/report_test.go+82 −0internal/calls/keymail_signin_test.go+313 −0internal/calls/keymailtest/keymailtest.go+190 −0internal/calls/quality.go+477 −0internal/calls/ratelimit.go+6 −0internal/calls/render.go+4 −0internal/calls/serving.go+70 −0internal/calls/signin_equal_work_test.go+149 −0internal/calls/signin_mail.go+304 −0internal/calls/signin_mail_test.go+370 −0internal/calls/signin_timing_test.go+94 −0internal/calls/static/calls-shell.css+4 −0internal/calls/static/calls.css+56 −0internal/calls/static/report.js+355 −0internal/calls/static/room.js+726 −13internal/calls/static/select.js+1085 −256internal/calls/static/tokens.css+653 −65internal/calls/stream.go+2 −2internal/calls/templates/join.html+10 −0internal/calls/templates/partials/report.html+48 −0internal/calls/templates/room.html+11 −0internal/calls/templates/signin.html+20 −2internal/callstest/browser_test.go+223 −2internal/callstest/config_test.go+9 −3internal/callstest/confirm_test.go+205 −0internal/callstest/harness_test.go+81 −5internal/callstest/join_test.go+44 −10internal/callstest/main_test.go+49 −0internal/callstest/native_browser_test.go+43 −1internal/callstest/quality_test.go+603 −0internal/callstest/schema_test.go+3 −1internal/callstest/signin_test.go+17 −4native/README.md+22 −0native/apple/Sources/CallsInterop/Interop.swift+5 −0native/apple/Sources/CallsKit/Audio.swift+15 −0native/apple/Sources/CallsKit/AudioDevices.swift+2 −0native/apple/Sources/CallsKit/Call.swift+281 −7native/apple/Sources/CallsKit/CallChrome.swift+20 −6native/apple/Sources/CallsKit/CallsLobby.swift+23 −0native/apple/Sources/CallsKit/CallsSettingsView.swift+1 −0native/apple/Sources/CallsKit/DevicePanel.swift+18 −0native/apple/Sources/CallsKit/MacCallView.swift+19 −3native/apple/Sources/CallsKit/Media.swift+16 −0native/apple/Sources/CallsKit/QualityReport.swift+781 −0native/apple/Sources/CallsKit/ReportProblem.swift+270 −0native/apple/Sources/CallsKit/ServerSettings.swift+23 −0native/apple/Sources/CallsMac/CallsMac.swift+4 −0native/apple/Tests/CallsKitTests/QualityReportTests.swift+450 −0native/bridge/bridge.go+39 −0native/bridge/bridge_test.go+77 −0native/ios/Sources/CallsPhone.swift+2 −0native/ios/Sources/PhoneFullScreenCall.swift+5 −1native/ios/UITests/CallsPhoneUITests.swift+42 −0native/ios/project.yml+1 −1protocol/messages.go+4 −0protocol/quality.go+191 −0test/browser/call.mjs+158 −0test/browser/native-auth.mjs+3 −0test/browser/room-quality.test.mjs+381 −0
AGENTS.mdLoading diff…
MakefileLoading diff…
PRODUCT.mdLoading diff…
callscore/report.goLoading diff…
callscore/report_test.goLoading diff…
callscore/room.goLoading diff…
cmd/calls/main.goLoading diff…
cmd/calls/shutdown_test.goLoading diff…
cmd/quality-summary/main.goLoading diff…
cmd/quality-summary/main_test.goLoading diff…
docs/operations/quality.mdLoading diff…
docs/superpowers/specs/2026-09-07-meet-design.mdLoading diff…
go.modLoading diff…
go.sumLoading diff…
internal/calls/app.goLoading diff…
internal/calls/app_relay_test.goLoading diff…
internal/calls/auth.goLoading diff…
internal/calls/auth_test.goLoading diff…
internal/calls/config.goLoading diff…
internal/calls/credits/notices.jsonLoading diff…
internal/calls/handlers_room.goLoading diff…
internal/calls/home.goLoading diff…
internal/calls/home_router_test.goLoading diff…
internal/calls/home_security_test.goLoading diff…
internal/calls/hub/hub.goLoading diff…
internal/calls/hub/relay.goLoading diff…
internal/calls/hub/report.goLoading diff…
internal/calls/hub/report_test.goLoading diff…
internal/calls/keymail_signin_test.goLoading diff…
internal/calls/keymailtest/keymailtest.goLoading diff…
internal/calls/quality.goLoading diff…
internal/calls/ratelimit.goLoading diff…
internal/calls/render.goLoading diff…
internal/calls/serving.goLoading diff…
internal/calls/signin_equal_work_test.goLoading diff…
internal/calls/signin_mail.goLoading diff…
internal/calls/signin_mail_test.goLoading diff…
internal/calls/signin_timing_test.goLoading diff…
internal/calls/static/calls-shell.cssLoading diff…
internal/calls/static/calls.cssLoading diff…
internal/calls/static/report.jsLoading diff…
internal/calls/static/room.jsLoading diff…
internal/calls/static/select.jsLoading diff…
internal/calls/static/tokens.cssLoading diff…
internal/calls/stream.goLoading diff…
internal/calls/templates/join.htmlLoading diff…
internal/calls/templates/partials/report.htmlLoading diff…
internal/calls/templates/room.htmlLoading diff…
internal/calls/templates/signin.htmlLoading diff…
internal/callstest/browser_test.goLoading diff…
internal/callstest/config_test.goLoading diff…
internal/callstest/confirm_test.goLoading diff…
internal/callstest/harness_test.goLoading diff…
internal/callstest/join_test.goLoading diff…
internal/callstest/main_test.goLoading diff…
internal/callstest/native_browser_test.goLoading diff…
internal/callstest/quality_test.goLoading diff…
internal/callstest/schema_test.goLoading diff…
internal/callstest/signin_test.goLoading diff…
native/README.mdLoading diff…
native/apple/Sources/CallsInterop/Interop.swiftLoading diff…
native/apple/Sources/CallsKit/Audio.swiftLoading diff…
native/apple/Sources/CallsKit/AudioDevices.swiftLoading diff…
native/apple/Sources/CallsKit/Call.swiftLoading diff…
native/apple/Sources/CallsKit/CallChrome.swiftLoading diff…
native/apple/Sources/CallsKit/CallsLobby.swiftLoading diff…
native/apple/Sources/CallsKit/CallsSettingsView.swiftLoading diff…
native/apple/Sources/CallsKit/DevicePanel.swiftLoading diff…
native/apple/Sources/CallsKit/MacCallView.swiftLoading diff…
native/apple/Sources/CallsKit/Media.swiftLoading diff…
native/apple/Sources/CallsKit/QualityReport.swiftLoading diff…
native/apple/Sources/CallsKit/ReportProblem.swiftLoading diff…
native/apple/Sources/CallsKit/ServerSettings.swiftLoading diff…
native/apple/Sources/CallsMac/CallsMac.swiftLoading diff…
native/apple/Tests/CallsKitTests/QualityReportTests.swiftLoading diff…
native/bridge/bridge.goLoading diff…
native/bridge/bridge_test.goLoading diff…
native/ios/Sources/CallsPhone.swiftLoading diff…
native/ios/Sources/PhoneFullScreenCall.swiftLoading diff…
native/ios/UITests/CallsPhoneUITests.swiftLoading diff…
native/ios/project.ymlLoading diff…
protocol/messages.goLoading diff…
protocol/quality.goLoading diff…
test/browser/call.mjsLoading diff…
test/browser/native-auth.mjsLoading diff…
test/browser/room-quality.test.mjsLoading diff…