Commit Graph
8 Commits
Author SHA1 Message Date
govandClaude Opus 5.5 1a08d2efda build: release a static image with scripts/release.sh
The image now packages a cross-compiled musl binary on distroless instead of
compiling inside Docker. The script builds it, pushes :<version> and :latest
to git.cosocial.info, and tags the commit.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 15:18:01 -05:00
govandClaude Opus 5.5 9384e2bcea fix: refresh the session before the access token expires
jacquard 0.12.2 only refreshes on a 401, but the PDS reports expiry as a 400
ExpiredToken, so DM polling failed after about two hours.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 15:18:01 -05:00
govandClaude Opus 5.5 edf19507b4 fix: close dropped subscriber sockets and ping idle ones
stream_labels only noticed a disconnect on its next send, so with few labels
closed subscribers piled up in CLOSE-WAIT until the server ran out of file
descriptors. It now watches the socket and pings every 30s.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 15:18:01 -05:00
govandClaude Opus 5.5 b4ac30c010 feat: add setup did command to publish labeler identity
`cargo run --bin setup -- did` adds #atproto_label and #atproto_labeler to the
DID document via the PDS-signed PLC flow, prompting for the main password and
the emailed code. Splits setup into declare/did modules.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 15:18:00 -05:00
gov 3c0d56cdaf chore: docker 2026-11-04 16:58:55 -05:00
govandClaude Opus 5.5 049a198b1c feat: add setup command to publish the labeler declaration
`cargo run --bin setup -- declare` writes app.bsky.labeler.service/self with
one inform-severity label per city and opts out of reports.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-04 16:39:19 -05:00
govandClaude Opus 5.5 d1b01e180d refactor: move modules into a library crate
Lets additional binaries share the labeler code. Adds a shared login()
helper and Cities::iter/is_empty for use outside the crate.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-04 16:39:17 -05:00
govandClaude Opus 5.5 a7d410fd6d Canadian cities labeler over Bluesky DMs
Users DM @cities.pds.cosocial.ca their city and get a signed account label.
Serves com.atproto.label.queryLabels and subscribeLabels, built on jacquard.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-04 16:33:19 -05:00