PosterChan for Android

Every published version, newest first. Each file is served by its sha256: the bytes behind a link can never change.

1.0.2693
2026-11-11 14:11 UTC · built from dfcd47b19304
## 1.0.2693

- Sw.js CACHE pc-nostr-v2740 (round 1118h)
- Stage 1118h (master red): Social's post box fits at most once per 120 ms with a
- Concord: a hold on a song you just sent opens its Save / Copy URL menu -- the
- Stage 1118h (master red): Netrunner rereads its sessions after sign-in
- Stage 1118h: Send keeps 6 px from the icon beside it on a phone (3 px gaps + 3 px
- Sw.js CACHE pc-nostr-v2738 (round 1118h)
- Masterred (1118h): Communities' phone composer keeps its hint whole at 1.3x text on a
- Monero: a busy wallet RPC is 503 + Retry-After (or the last good answer, marked stale)
- Netrunner: the rejection loop (a rejected action proposed again gets no card
- Dms: a DM announces only if it is fresh when it lands -- a background-thawed page
- Netrunner local engine: the server's H5/H7/L2 rules ported (parity)
- Netrunner gaps: the sweep's deep states show the new rows (Running on the server

_Built from `dfcd47b19`._
1.0.2692
2026-11-10 22:46 UTC · built from a704c15203f7
## 1.0.2692

- Airwaves: the phone's announcement box height wins over .input's (Cancel was still 5 px
- Stage 1118g: Netrunner's prompt hint fits a phone at 1.3x (short
- Composer: one window listener for the toolbar pref
- Stage 1118g: Netrunner passes its own rules; the camera-first composer row
- Revert "Reapply "Merge branch 'w1118-perfpaint' (round 1118f)""
- Revert "Merge branch 'w1118-chessbot' (round 1118g)"
- Revert "Merge branch 'w1118-rinroom' (round 1118g)"
- Revert "Reapply "Merge branch 'w1118-perfbg' (round 1118f)""
- Revert "Merge branch 'w1118-perfbg' (round 1118g)"
- Revert "Reapply "Merge branch 'w1118-cordscale' (round 1118f)""
- Stage 1118g: what the merges broke between branches
- Sw.js CACHE pc-nostr-v2735 (round 1118g on 1118f live 130fd3cce)

_Built from `a704c1520`._
1.0.2691
2026-11-10 20:23 UTC · built from 130fd3cce46c
## 1.0.2691

- Sw.js CACHE pc-nostr-v2734 (round 1118f on 1118e live 8d412abe3)
- Revert "Merge branch 'w1118-gatefixes2' (round 1118f)"
- Revert "Merge branch 'w1118-streamstutter' (round 1118f)"
- Revert "Merge branch 'w1118-gitsettings' (round 1118f)"
- Revert "Merge branch 'w1118-cordfastrail' (round 1118f)"
- Revert "git: a repo opened from Messages clears the feed's full-height view class
- Revert "Merge branch 'w1118-holocard' (round 1118f)"
- Revert "Merge branch 'w1118-perfboot' (round 1118f)"
- Revert "Merge branch 'w1118-perfpaint' (round 1118f)"
- Revert "Merge branch 'w1118-perfbg' (round 1118f)"
- Revert "Merge branch 'w1118-cordscale' (round 1118f)"
- Revert "round 1118f: perfboot's on-demand module loads inside the window ✨ panel

_Built from `130fd3cce`._
1.0.2690
2026-11-10 07:36 UTC · built from 8d412abe3c2f
## 1.0.2690

- Sw.js CACHE pc-nostr-v2730 (round 1118e on 1118d live 1a3e97452)
- Sw.js CACHE pc-nostr-v2729 (round 1118e on 1118d live 1a3e97452)
- Ccviews: concord-views.js is awaited with onload/onerror and a waiters list (the
- Sw.js CACHE pc-nostr-v2728 (round 1118e on 1118d live 1a3e97452)
- Revert "Merge branch 'w1118-perfbg' (round 1118e)"
- Revert "Merge branch 'w1118-musicplayer' (round 1118e)"
- Revert "Merge branch 'w1118-perfbg' (round 1118e, suite fixes)"
- Revert "Merge branch 'w1118-perfboot' (round 1118e)"
- Revert "Merge branch 'w1118-perfpaint' (round 1118e)"
- Rooms: airwaves' _MODULE_NEEDS entry after Concord's (the Concord route and desktop
- Rooms: airwaves.css is bundled (desktop + APK) and precached like concord.css
- Perfbg: the away badge reads this node's relay through Concord's relay door

_Built from `8d412abe3`._
1.0.2689
2026-11-10 02:30 UTC · built from 1a3e97452909
## 1.0.2689

- Sw.js CACHE pc-nostr-v2724 (round 1118d on 1118c live a9350ec79)
- Codelogo: on a phone, Code leaves room for the bottom nav (its working-directory line
- Sw.js CACHE pc-nostr-v2723 (round 1118d on 1118c: caldel, parentpull, notifact
- Codelogo: in a desktop window, Code's line/column readout keeps clear of the frame's
- 1118d stage: restore webpush's sw.js change (b4bb394
- Cordlock: the private channel's lock badge reads the theme's --cct-side (it read
- Image gen: the first pipeline of a process was pinned in VRAM by xformers' kept import
- Unified taskbar: every window on every workspace and monitor, a click goes there
- PosterChan Code wears the PosterChan logo
- Calendar: a deleted event's dialog closes (windowed desktop)
- Ff09dd5: Settings -> Social gets 'Your Filters' -- a searchable window of the words you
- Abb433d: a video opened from Files streams -- the first frame no longer waits for the

_Built from `1a3e97452`._
1.0.2688
2026-11-10 00:41 UTC · built from a9350ec79b04
## 1.0.2688

- Sw.js CACHE pc-nostr-v2723 + boot budget re-baselined (round 1118c on 1118b
- Sw.js CACHE pc-nostr-v2722 (round 1118c on 1118b: fwlogs, ngitsites, issuefreeze
- 63ab238 (not reproduced): device test -- publishing a git issue in the APK
- 00434ef: no menu item's name ends in an ellipsis -- every menu in the client
- PosterChanOS: say 'sign out to finish the update' when the session's compositor runs an
- 2d6e6cf: the music mini-player pill is one fixed size
- Telegram: the reaction picker opens at the ☺ that was pressed
- Profile search: a screenful per pause, not 200 cards per letter (7ed7e88)
- Sw.js CACHE pc-nostr-v2721 (w1118-ccthreadcut: thread hint fits, 1a93276)
- Communities: the thread composer's hint is never cut in half on a phone (1a93276)
- Messages: every song, video and file in a conversation has a Save button (issue 9002d37)
- Files -> Music: the share icon copies a link to the song

_Built from `a9350ec79`._
1.0.2687
2026-11-09 19:13 UTC · built from c85cd4e1d658
## 1.0.2687

- Sw.js CACHE pc-nostr-v2718 (round 1118a: ccpreview, camicon, extsignin, ap402)
- Sw.js CACHE pc-nostr-v2715 (Concord preview: channel count only, loads or says so)
- Extension 1.4.21: a pairing that cannot sign says so
- Activitypub: a server refusing our signed requests is left alone -- fsebugoutzone.org
- Concord community preview: the channel COUNT only (a46c45c)
- APK: the PosterChan Camera drawer icon is one of the phone shell's group

_Built from `c85cd4e1d`._
1.0.2686
2026-11-08 22:04 UTC · built from 731b6d54f7af
## 1.0.2686

- Sw.js: CACHE v2717 (Blossom folders survive a full local storage (0faaaf3))
- 0faaaf3: sw.js CACHE pc-nostr-v2716
- 0faaaf3 Blossom folders all missing on the phone

_Built from `731b6d54f`._
1.0.2685
2026-11-08 16:34 UTC · built from 4acefc4cfa63
## 1.0.2685

- 1116 merge: sw.js CACHE pc-nostr-v2715 (one above the highest in play, v2714)
- 1116 merge: triage -- My circle's close button (w1115-circle
- Sw.js: CACHE v2713 (the shared red close X)
- Sw.js CACHE v2712 (PBS output/frame fallback, Screen Recorder encoder fallback)
- Screen Recorder records on the Windows desktop app
- PBS: a black broadcast on Windows and PosterChanOS -- the worker's output frames were
- Sw.js: CACHE v2713 (Router restyle)
- Sw.js CACHE v2713 (repost icon alignment / Router app stylesheet scope)
- Repost icon rode ~12px above the action bar after the Router app opened
- Router app: Overview cards only for apps with a section, proxy Check message
- Router app: readable firewall log (words + kind chips + grouped repeats)
- Every modal's close X is the one filled red .modal-x -- the Badges sheet drew an

_Built from `4acefc4cf`._
1.0.2684
2026-11-08 07:49 UTC · built from 73c03718b1d9
## 1.0.2684

- 1115 merge: sw.js CACHE pc-nostr-v2714 (one above the round's highest, v2713)
- Desktop VPN, native: WireGuard built into the Windows/Linux app
- Sw.js: CACHE v2713 (terminal reconnect)
- The terminal reconnects by itself: it never gives up while visible
- Sw.js: CACHE v2712 (Make my circle)
- Make my circle: the PosterChan cyber look, and avatars that arrive after the first paint
- Make my circle: own profile ⋯ draws the people you interact with most around you (Post
- Sw.js: bump CACHE for own-relays direct routing
- Own relays: the concord.js doors ask cordDirect() through typeof (node harnesses lift
- Settings: Save is the accent fill again (owner 2026-11-07: "settings -> fediverse
- "Use my own relays" = direct, everywhere: Concord the normal Armada/CORD way
- Concord spec sync: custom roles editor (CORD-04 published)

_Built from `73c03718b`._
1.0.2683
2026-11-08 05:01 UTC · built from 30e7129b0c97
## 1.0.2683

- 1114 merge: triage -- concord.css window twins regenerated (a 1114 @media had none)
- 1114 merge: full-gate triage fixes -- Concord's jump to a message corrects for the
- Concord: a thread reply pings only who it answers or names
- Communities and Notes follow their desktop WINDOW's width, not the monitor's
- Router: runs anywhere and the instance carries it
- Back hold: convert zoomed rect distances to scrollTop (desktop body zoom)
- Profile: a fast fling shows posts, and Back draws nothing again (ee07e47 follow-up)
- Communities: a jump to a message (notification / search / pin) scrolls only the room's
- Revert "merge w1114-desktopvpn into the router integration"
- Layout sweep, round 2: windowed desktop + classic desktop + all phones
- 1114 merge: sw.js precaches the Router app (router.js + its VPN/DNS/DHCP/firewall/proxy
- 1114 merge: sw.js v2712

_Built from `30e7129b0`._
1.0.2682
2026-11-08 02:28 UTC · built from 5d7b428d3b56
## 1.0.2682

- Revert "1113 merge: w1113-fling"
- 1113 merge: full-suite triage fixes -- shared test code moved into helpers (no new
- Camera Share works on Android: one Web Share door (PCPreview)
- 1113 merge: sw.js v2711
- Concord Discover scrolls without freezing
- Concord: the composer placeholder is just 'Message' (the #channel was cut off)
- Concord: drop jskitty.com and asia.vectorapp.io from every default relay list
- Photos has Delete: a synced (camera-roll) picture's viewer menu ends in Delete
- Concord: register a community's newest epoch first
- Concord: an unstarred channel stays unstarred (stale copy never saved as the newest
- Git: invited maintainers can Accept / Decline
- GIF picker folders (c7e0c96): Saved folders + "My folders" from Files

_Built from `5d7b428d3`._
1.0.2681
2026-11-08 00:04 UTC · built from 18258688e180
## 1.0.2681

- 1112 merge: the Camera window gets its own AI buttons
- 1112 merge: full-suite triage fixes (each failed on the stage alone, passes on master)
- Camera: Set as profile picture and Trim work -- the picture goes to the kind-0
- 1112 merge: the camera follows two whole-tree rules the gate checks
- 1112 merge: the layout sweep is green on all four phones
- 1112 merge: drop the 096b0fd register lines justyn-c carried twice (its older ccscroll
- 1112 merge: sw.js v2710; camera.js + gifenc.js precached
- Tests: the layout sweep -- every view and overlay of the shipped client at four phone
- File Manager picker from New post fits a phone: two-row header
- Follower count: recounted at every launch, across more relays
- Opening a thread at a reply keeps it where the cache-first paint showed it
- Back to a profile holds the post while the page settles (ee07e47 follow-up)

_Built from `18258688e`._
1.0.2680
2026-11-07 19:45 UTC · built from c4b8cde00066
## 1.0.2680

- Concord.css: the Concord git composer's drop outline uses the theme's accent
- Sw.js: v2709 (round 1111)
- 1111 merge: videoprep's browser test runs green -- the XHR shim reports the shrink
- Concord Discover listings open a preview before joining (dec7a32/8a7d52e)
- Back from a post returns to the post you were on (ee07e47)
- Dbfc273: the video "make it smaller" step shows progress, has an end
- Concord Discover: Armada's announcements
- Dbfc273: tapping a search result opens it and stays open -- the search box searches
- E4beba9: mail server names are trimmed, and an account the node cannot reach says why
- The timeline's new-post box mounts the post window's composer (0b362b6)
- Badges: tell a member once per batch -- "You earned N new badges -- review" -> the
- Concord git: comments and New issue attach with the Git view's attacher (no copy)

_Built from `c4b8cde00`._
1.0.2679
2026-11-07 14:57 UTC · built from db5fb1f05748
## 1.0.2679

- Monero wallet: a member's busy wallet says busy on Refresh
- Upload.js: say why Saved GIFs need no sign-in reread (read per Saved-tab open
- Security H2: sign-in proofs name this instance, their action, and are used once
- GRASP federation: no Concord-style storms -- breaker, budget, single flight
- Admin -> Git federation works on a git PROXY node (2026-11-06)
- Waifus player posts every session (owner 2026-11-06)
- 1110 merge: sw.js v2708; boot payload budget measured on the 1110 merge
- Settings (a0f4df4): the Android-only 'Stay connected' row is really hidden off Android
- IOS push (a0f4df4): never end a WebKit push silently (shown quietly + closed when the
- Phone: dim the Cyberpunk skyline behind the post column (6d5f015)
- IPhone feed: timeline cards are never content-visibility-skipped on iOS WebKit (6d5f015)
- GIF picker: one button, Trending | Nostr | Saved, in posts, DMs and Concord (c7e0c96)

_Built from `db5fb1f05`._
1.0.2678
2026-11-07 05:07 UTC · built from e01b9c960d2b
## 1.0.2678

- 1109 gate triage: the 13 stage-only failures of the d36e2773 full suite
- Text fields: one focus rule for the whole client -- no outline rectangle around a
- 1109 merge: pregate pass 3 fixes
- Taskbar lightning lives INSIDE the taskbar
- Time format: the merged branches' own clock times go through PCTime
- Emoji app: the PosterChan pack is every account's starter pack
- 1109 merge: pregate fixes for what the merged branches broke in each other's tests
- Concord on a phone: the layer runs under the curved bottom nav
- Phone search bar: no hairline of the feed between the held bar and the stuck timeline
- The phone's floating + is hidden only by a scroll the person makes (c70622d)
- DMs: an encrypted Armada file that is not a picture is read and saved, never a blob
- Git README reads like a forge README: nested block parser

_Built from `e01b9c960`._
1.0.2677
2026-11-06 22:30 UTC · built from f945186bb940
## 1.0.2677

- Recovery's snapshot: a re-armed timer, not a visibilitychange listener inside startApp
- Recovery's boot snapshot waits for a visible page
- 1108 gate: Recovery is a private window for the AI panel
- 1108 merge fixes: recovery.js says why it needs no reread and escapes its jump selector
- PBS: Firefox/Safari send a lone screen as itself (30 fps busy or hidden)
- Daily Block Bulletin on Pleroma: the welcome bot's paper
- Stage 1108: SW cache v2705; boot budget measured on the 1108 merge
- The Daily Block Bulletin: block report, block alerts and Nostr welcomes as a paginated
- Desktop: optional taskbar lightning (on by default) -- neon arcs along the taskbar's
- Sites builder: a file picked From my files is published WITH X-Keep (never reused
- Sites builder: attachments in a post -- an Attachments/files block, an Audio block
- Admin → Bots: the master switch and the shared bot settings, plain and phone-friendly

_Built from `f945186bb`._
1.0.2676
2026-11-06 15:51 UTC · built from 1c9d78b0ae52
## 1.0.2676

- Maintenance build — no user-facing changes since the last release.

_Built from ``._
1.0.2675
2026-11-06 10:26 UTC · built from b712bbcdae71
## 1.0.2675

- Maintenance build — no user-facing changes since the last release.

_Built from ``._
1.0.2674
2026-11-05 23:49 UTC · built from 30ef6d60aeff
## 1.0.2674

- Maintenance build — no user-facing changes since the last release.

_Built from ``._
1.0.2673
2026-11-05 18:16 UTC · built from 593f2c38f1a0
## 1.0.2673

- Maintenance build — no user-facing changes since the last release.

_Built from ``._