Claude
8171414f8a
Remove the legacy single-request video upload path
...
Multipart is now the only upload transport, so drop the legacy
`app.bsky.video.uploadVideo` request and everything that existed to
choose between the two:
- `MultipartFallbackError` is gone. A `startUpload` failure (a service
without multipart support, or with the kill switch active) now
propagates as the `MultipartUploadError` the API layer already built,
and `abortThenRethrowOrResolve` rethrows the failure that forced the
abort instead of a fallback signal - which keeps the real error class
for retry classification and telemetry.
- `getUploadErrorMessage` matches on `MultipartUploadError` where it
matched on `ServerError`, so video-service messages (upload disabled,
daily limits, oversized file) still map to their user-facing copy.
`ServerError` had no other thrower and is removed.
- With the legacy branch gone, `upload.ts` and `upload.web.ts` were
identical, so the platform split collapses into one `upload.ts`. The
web chunk reader already fetches the uri when `bytes` is missing, so
nothing depended on the legacy path's buffer fetch.
- The `did` parameter only seeded the legacy endpoint URL; it is dropped
from `uploadVideo` and `processVideo`.
- Transport reporting only existed to distinguish multipart from legacy,
so `VideoUploadTransport`, `telemetry.uploadTransport`, the
`video.upload.transport` span attribute, and the `transport` field on
the uploadCompleted/uploadFailed events are removed.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01Mn8DoxP5wQk6NbPmapWs9A
2026-08-25 01:49:12 +01:00
Claude
4bb0e1971a
Remove multipart upload and 10-minute video feature gates
...
Ship both video upload features unconditionally:
- Multipart upload is now always attempted. The MultipartFallbackError
path to the legacy single-request upload is unchanged, so a video
service without multipart support still works. This makes the plain
'legacy' upload transport unreachable, so drop it from
VideoUploadTransport and default the telemetry value to 'multipart'.
- The 10-minute duration cap now applies to everyone.
VIDEO_10_MINUTE_MAX_DURATION_MS is folded into VIDEO_MAX_DURATION_MS,
and the composer's duration error message no longer branches on the
gate.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01Mn8DoxP5wQk6NbPmapWs9A
2026-08-25 01:48:24 +01:00
Samuel Newman
cf2684b0d1
Send an integer exp for video upload service auth tokens ( #11529 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2026-08-24 17:34:16 -07:00
Tomasz Zawadzki
a892057e29
Fix "Tried to synchronously call a Remote Function" crash ( #11517 )
...
Co-authored-by: Claude Fable 5 <noreply@anthropic.com >
2026-08-20 17:56:50 +02:00
Samuel Newman
04ca3f9829
Only persist successful queries ( #11484 )
2026-08-19 06:27:41 -07:00
Samuel Newman
51381d41b0
Clear the cached initial URL after handling a deep link ( #11500 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2026-08-19 06:26:58 -07:00
Oleksii Bulenok
45aa1a67b0
Expo 57 ( #11334 )
...
Co-authored-by: Tomek Zawadzki <tomekzawadzki98@gmail.com >
Co-authored-by: vineyardbovines <spencerfpope@gmail.com >
2026-08-18 10:46:11 -04:00
Spence Pope
df3cea1c78
APP-2884: Avoid base64 reads for web videos ( #11493 )
2026-08-18 09:26:26 -04:00
Oleksii Bulenok
2d93273956
Fix metro failing to resolve @ipld/dag-cbor in dev mode ( #11467 )
2026-08-14 14:37:11 +02:00
Samuel Newman
70195d7059
Drop accidental eslint dependency ( #11460 )
2026-08-14 00:21:52 -07:00
Samuel Newman
bb33eb91cb
[SDK] Use finalised package ( #11398 )
2026-08-13 12:26:23 -07:00
Samuel Newman
b89167f07c
[SDK] Address stack review feedback ( #11389 )
...
Co-authored-by: Claude Fable 5 <noreply@anthropic.com >
2026-08-13 12:26:23 -07:00
Samuel Newman
3677c98873
[SDK] Validate and brand the persisted account did ( #11387 )
...
Co-authored-by: Claude Fable 5 <noreply@anthropic.com >
2026-08-13 12:26:22 -07:00
Samuel Newman
9fe0084874
[SDK] Remove @atproto/api ( #11386 )
...
Co-authored-by: Claude Fable 5 <noreply@anthropic.com >
2026-08-13 12:26:22 -07:00
Samuel Newman
54da80dfb0
[SDK] Delete the bridge agent and rework the session bundle onto lex clients ( #11385 )
...
Co-authored-by: Claude Fable 5 <noreply@anthropic.com >
2026-08-13 12:26:22 -07:00
Samuel Newman
59d2bf09d7
[SDK] Swap moderation to @bsky.app/sdk and move labeler config to Client statics ( #11383 )
2026-08-13 12:26:21 -07:00
Samuel Newman
dc31e7fd12
[SDK] Migrate agent sugar to @bsky.app/sdk actions ( #11382 )
2026-08-13 12:26:21 -07:00
Samuel Newman
a4f2811f39
[SDK] Add refreshSession and migrate the session-pinned infra ( #11381 )
...
Co-authored-by: Claude Fable 5 <noreply@anthropic.com >
2026-08-13 12:26:20 -07:00
Samuel Newman
0c93d1e416
[SDK] Migrate the post pipeline and blob uploads ( #11380 )
...
Co-authored-by: Claude Fable 5 <noreply@anthropic.com >
2026-08-13 12:26:20 -07:00
Samuel Newman
75e4180800
[SDK] Migrate the repo writes cluster ( #11379 )
...
Co-authored-by: Claude Fable 5 <noreply@anthropic.com >
2026-08-13 12:26:20 -07:00
Samuel Newman
ca226f589d
[SDK] Migrate the gate records to raw repo calls on the pds client ( #11378 )
...
Co-authored-by: Claude Fable 5 <noreply@anthropic.com >
2026-08-13 12:26:19 -07:00
Samuel Newman
f6a22c4f05
[SDK] Adopt @bsky.app/sdk and migrate RichText ( #11369 )
2026-08-13 12:26:18 -07:00
Samuel Newman
d991118215
[SDK] Route moderation reports through the appview client ( #11368 )
...
Co-authored-by: Claude Fable 5 <noreply@anthropic.com >
2026-08-13 12:26:18 -07:00
Samuel Newman
34d1c75756
[SDK] Migrate the account surface to the pds and service clients ( #11367 )
...
Co-authored-by: Claude Fable 5 <noreply@anthropic.com >
2026-08-13 12:26:17 -07:00
Samuel Newman
6f696e4b73
[SDK] Migrate the feed api classes to the appview client ( #11361 )
...
Co-authored-by: Claude Fable 5 <noreply@anthropic.com >
2026-08-13 12:26:17 -07:00
Samuel Newman
c52e730112
[SDK] Add pds and chat clients and the canonical client hooks ( #11350 )
...
Co-authored-by: Claude Fable 5 <noreply@anthropic.com >
2026-08-13 12:26:14 -07:00
Samuel Newman
837771a311
[SDK] Add lex client seam and typed xrpc error matching ( #11348 )
...
Co-authored-by: Claude Fable 5 <noreply@anthropic.com >
2026-08-13 12:26:13 -07:00
Samuel Newman
532681d5c0
[SDK] Add lexicon codegen pipeline (@atproto/lex) ( #11346 )
...
Co-authored-by: Claude Fable 5 <noreply@anthropic.com >
2026-08-13 12:26:12 -07:00
Samuel Newman
97b3978fb8
[SDK] Rebuild the session core on PasswordSession behind an AtpAgent compat shim ( #11343 )
...
Co-authored-by: Claude Fable 5 <noreply@anthropic.com >
2026-08-13 12:26:12 -07:00
Samuel Newman
d727be8c1a
Fix profile icon on custom feeds ( #11408 )
...
Co-authored-by: DS Boyce <260543580+ds-boyce@users.noreply.github.com >
2026-08-06 16:37:21 -07:00
DS Boyce
1c349ad7da
Add timestamp field to video report dialog ( #11339 )
2026-08-06 12:11:05 -07:00
Spence Pope
5cf6d8fa21
Use toolbox video compressor ( #11246 )
2026-08-06 08:16:18 -04:00
Spence Pope
17a8fe87c2
APP-2793: harden multipart video uploads ( #11366 )
2026-08-05 10:15:16 -04:00
Spence Pope
0ccc029716
Allow feature-gated 10-minute video uploads ( #11388 )
2026-08-05 10:15:06 -04:00
Samuel Newman
c2ceb8057f
Handle camera cancellation ( #11322 )
2026-08-03 06:25:42 -07:00
Samuel Newman
ce28129674
Add nicer loading screen while OTA is loading ( #9499 )
2026-07-31 09:39:26 -07:00
Samuel Newman
07c34a6548
Fix PR OTA deployments reverting after apply ( #11338 )
...
Co-authored-by: Claude Fable 5 <noreply@anthropic.com >
2026-07-30 23:30:42 +03:00
Samuel Newman
17c1ee4869
Handle PR OTA version mismatches and failures ( #11330 )
2026-07-30 07:40:49 -07:00
Spence Pope
a35c4ac4ba
APP-2670: add multipart video upload transport ( #11222 )
2026-07-29 12:54:03 -04:00
Samuel Newman
de348db116
Show a non-standard OTA channel notice in the drawer ( #11288 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2026-07-28 06:59:17 -07:00
Samuel Newman
0e63434bb4
Reenable wake-from-background Android OTA ( #11298 )
2026-07-27 09:20:10 -07:00
Tomasz Zawadzki
2b9deeeb6a
Migrate runOnUI/runOnJS to scheduleOnUI/scheduleOnRN ( #11249 )
2026-07-26 12:00:35 -07:00
Samuel Newman
19b0d89313
Update react-native-uitextview ( #11264 )
2026-07-24 07:40:46 -07:00
Spence Pope
325246ec6c
Stub RN codegen native component on web ( #11240 )
2026-07-23 12:52:47 -04:00
Oleksii Bulenok
8d64ab9d4b
React Native New Arch ( #10980 )
2026-07-23 18:25:40 +03:00
DS Boyce
8ca8176eb1
Update presentation of trending feeds ( #11206 )
2026-07-22 14:35:45 -07:00
DS Boyce
92ec563f9d
Restore activity notification subscriptions screen ( #11201 )
2026-07-21 05:16:22 -07:00
Samuel Newman
0fb7251c64
Add nightly Maestro E2E workflow ( #11181 )
...
Co-authored-by: Claude Fable 5 <noreply@anthropic.com >
2026-07-20 07:42:53 -07:00
Samuel Newman
007c21fa8e
Add moduleSuffixes to tsconfig ( #11146 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2026-07-16 12:47:53 -07:00
Abdelrahman Youssef
83a791d7c8
Fix invisible bidi characters copied with handles on web ( #11066 )
2026-07-15 17:56:34 -05:00