yourlibrarian: MMMC Icon Reverse Colors (OTH-MMMC Icon Reverse-yourlibrarian)
[personal profile] yourlibrarian posting in [community profile] dreamwidth_meta
March Meta Matters Challenge banner by thenewbuzzwuzz


March 1 is just weeks away, so that means the kickoff to this year's March Meta Matters Challenge will be taking place soon! The challenge involves locating and copying over meta you've created to a second site in order to ensure its preservation, plus there will be some prompts for creating new meta.

Feel free to ask questions here about the challenge, locations, etc. Otherwise subscribe to [community profile] marchmetamatterschallenge and look for our opening post on March 1!
github: shadowy octopus with the head of a robot, emblazoned with the Dreamwidth swirl (Default)
[personal profile] github posting in [site community profile] changelog

Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: 472e7ca0671a6f37896549ef3e935b8cfdd52f03 https://github.com/dreamwidth/dreamwidth/commit/472e7ca0671a6f37896549ef3e935b8cfdd52f03 Author: Mark Smith mark@dreamwidth.org Date: 2026-02-16 (Mon, 16 Feb 2026)

Changed paths: M bin/worker/ses-incoming-email

Log Message:


Fix SES worker to expect S3 action notifications

The SNS notification now comes from the S3 action's topic_arn (terraform change), so receipt.action will always be type S3. Revert the non-S3 skip to a proper error since it would indicate a misconfiguration.

Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

Commit: 4895912982e33afbf41b439bc7d38d1a625b25b7 https://github.com/dreamwidth/dreamwidth/commit/4895912982e33afbf41b439bc7d38d1a625b25b7 Author: Mark Smith mark@dreamwidth.org Date: 2026-02-17 (Tue, 17 Feb 2026)

Changed paths: M bin/worker/dw-embeds M cgi-bin/DW/Task.pm M cgi-bin/DW/TaskQueue.pm M cgi-bin/DW/TaskQueue/SQS.pm M t/taskqueue-dedup.t

Log Message:


Add max_retries support to TaskQueue to avoid DLQ pileup

Failed SQS tasks that exceed the receive count threshold are now marked complete instead of being left for the dead letter queue. The SQS layer passes ApproximateReceiveCount through to tasks, and start_work checks it against a configurable max_retries option. Applied to dw-embeds where unreachable remote hosts cause repeated failures that fill the DLQ.

Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

Compare: https://github.com/dreamwidth/dreamwidth/compare/6792621c5547...4895912982e3

To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications

github: shadowy octopus with the head of a robot, emblazoned with the Dreamwidth swirl (Default)
[personal profile] github posting in [site community profile] changelog

Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: 6792621c554719720fc25eba12b4ea612264cb73 https://github.com/dreamwidth/dreamwidth/commit/6792621c554719720fc25eba12b4ea612264cb73 Author: Mark Smith mark@dreamwidth.org Date: 2026-02-16 (Mon, 16 Feb 2026)

Changed paths: M bin/worker/ses-incoming-email M cgi-bin/DW/IncomingEmail.pm

Log Message:


Fix log levels in SES incoming email pipeline

  • Skip non-S3 action notifications at info level (expected duplicate from SNS action, not an error)
  • Empty email data is warn, not error
  • No support category match is info, not error (normal for non-support mail)

Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications

github: shadowy octopus with the head of a robot, emblazoned with the Dreamwidth swirl (Default)
[personal profile] github posting in [site community profile] changelog

Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: def63d7f03f190bc1a99d4fd648fa0f1424b6960 https://github.com/dreamwidth/dreamwidth/commit/def63d7f03f190bc1a99d4fd648fa0f1424b6960 Author: Mark Smith mark@dreamwidth.org Date: 2026-02-16 (Mon, 16 Feb 2026)

Changed paths: A .github/workflows/tasks/worker-ses-incoming-email-service.json R .github/workflows/worker-build.yml R .github/workflows/worker-deploy.yml M .github/workflows/worker22-deploy.yml M config/update-workflows.py

Log Message:


Deprecate 18.04 workers

Also add deploy for new ses-incoming-email worker.

To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications

github: shadowy octopus with the head of a robot, emblazoned with the Dreamwidth swirl (Default)
[personal profile] github posting in [site community profile] changelog

Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: bba49ec2ee390e6882eda0b8004c6c57beacad9e https://github.com/dreamwidth/dreamwidth/commit/bba49ec2ee390e6882eda0b8004c6c57beacad9e Author: Mark Smith mark@dreamwidth.org Date: 2026-02-16 (Mon, 16 Feb 2026)

Changed paths: A bin/worker/ses-incoming-email A cgi-bin/DW/IncomingEmail.pm M cgi-bin/DW/Task/IncomingEmail.pm M config/workers.json A t/incoming-email.t

Log Message:


Add SES incoming email worker and shared processing pipeline

Extract email processing logic from DW::Task::IncomingEmail into DW::IncomingEmail so both the legacy TaskQueue worker and the new SES-based worker share the same pipeline. Remove obsolete spam filtering (subject heuristics, body checks, virus signatures, bounce detection) — SES handles this upstream now.

New components: - DW::IncomingEmail: shared processing (MIME parsing, hooks, post-by-email, alias forwarding with From-rewriting, support routing, multi-domain normalization via [profile] lj::INCOMING_EMAIL_DOMAINS) - bin/worker/ses-incoming-email: SQS-polling worker that receives SNS notifications from SES, fetches email from S3, checks SES spam/virus verdicts, and delegates to DW::IncomingEmail - t/incoming-email.t: tests for process flow, From-rewriting with per-sender SHA256 hash, and domain normalization

Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications

github: shadowy octopus with the head of a robot, emblazoned with the Dreamwidth swirl (Default)
[personal profile] github posting in [site community profile] changelog

Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: 09b2fa09012b1edc5f23883029cf12a5a045bcc4 https://github.com/dreamwidth/dreamwidth/commit/09b2fa09012b1edc5f23883029cf12a5a045bcc4 Author: Mark Smith mark@dreamwidth.org Date: 2026-02-16 (Mon, 16 Feb 2026)

Changed paths: M config/workers.json

Log Message:


Add SQS queue names, so we can target autoscaling to queue depth

To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications

github: shadowy octopus with the head of a robot, emblazoned with the Dreamwidth swirl (Default)
[personal profile] github posting in [site community profile] changelog

Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: e18e34f910eb489a5d0daa40f93e2024cff9bbc2 https://github.com/dreamwidth/dreamwidth/commit/e18e34f910eb489a5d0daa40f93e2024cff9bbc2 Author: Mark Smith mark@dreamwidth.org Date: 2026-02-16 (Mon, 16 Feb 2026)

Changed paths: M .github/workflows/ci.yml M t/plack-auth.t M t/plack-integration.t M t/plack-media.t M t/plack-subdomain.t M t/plack-sysban.t

Log Message:


Expand CI to run plack, cleaner, and routing tests

Rename the workflow to "CI (fast)" and add plack integration, text cleaner, and routing test steps. Fix pre-existing test failures caused by the rate-limiting middleware interfering with unrelated tests: mock DW::RateLimit, session resolution, sysban, and uniq cookie in tests that don't exercise those concerns. Fix routing mock in sysban and subdomain tests to return 0 (handled) instead of undef (which fell through to BML). Suppress 'used only once' warnings across plack test files.

Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications

github: shadowy octopus with the head of a robot, emblazoned with the Dreamwidth swirl (Default)
[personal profile] github posting in [site community profile] changelog

Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: 7f5a36ba49391219cb773eeb2ee5248be3b9ac09 https://github.com/dreamwidth/dreamwidth/commit/7f5a36ba49391219cb773eeb2ee5248be3b9ac09 Author: Mark Smith mark@dreamwidth.org Date: 2026-02-16 (Mon, 16 Feb 2026)

Changed paths: M cgi-bin/Plack/Middleware/DW/Auth.pm M t/plack-auth.t

Log Message:


Fix domain session cookie bounce not firing under Plack

When a user's domain session cookie is stale (e.g. after re-login gives them a new session ID), the Plack Auth middleware detected the mismatch and set the bounce URL but never actually redirected. The page would render as logged-out instead of bouncing through /misc/get_domain_session to refresh the cookie.

Add the redirect check to the Auth middleware's else branch so all Plack-served pages (journal views, controllers, etc.) get the bounce. Also fix pre-existing test failures in plack-auth.t where MockUser was missing the userid method needed by the RateLimit middleware.

Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications

github: shadowy octopus with the head of a robot, emblazoned with the Dreamwidth swirl (Default)
[personal profile] github posting in [site community profile] changelog

Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: 2c6ed3dd318302532b2c0133e45b97cd1c0b8a1d https://github.com/dreamwidth/dreamwidth/commit/2c6ed3dd318302532b2c0133e45b97cd1c0b8a1d Author: Mark Smith mark@dreamwidth.org Date: 2026-02-16 (Mon, 16 Feb 2026)

Changed paths: M config/workers.json

Log Message:


Update some worker knobs for autoscaling

To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications

github: shadowy octopus with the head of a robot, emblazoned with the Dreamwidth swirl (Default)
[personal profile] github posting in [site community profile] changelog

Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: 3fd45fe55656253ccaed8ddc4c334fbbe58dea9c https://github.com/dreamwidth/dreamwidth/commit/3fd45fe55656253ccaed8ddc4c334fbbe58dea9c Author: Mark Smith mark@dreamwidth.org Date: 2026-02-16 (Mon, 16 Feb 2026)

Changed paths: M .gitignore R terraform/cluster.tf R terraform/iam.tf R terraform/import.sh R terraform/load-balancing.tf R terraform/locals.tf R terraform/providers.tf R terraform/proxy.tf R terraform/security-groups.tf R terraform/web.tf R terraform/workers.tf

Log Message:


Remove terraform from repo

Moving to a private repo. This has limited utility for public viewing, and I want to import our more sensitive configurations.

To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications

github: shadowy octopus with the head of a robot, emblazoned with the Dreamwidth swirl (Default)
[personal profile] github posting in [site community profile] changelog

Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: 7fcb2afac08b97a4cb7f1905055a4fc9e7aeb7b4 https://github.com/dreamwidth/dreamwidth/commit/7fcb2afac08b97a4cb7f1905055a4fc9e7aeb7b4 Author: Mark Smith mark@dreamwidth.org Date: 2026-02-15 (Sun, 15 Feb 2026)

Changed paths: M .github/workflows/web-build.yml M .github/workflows/web22-build.yml

Log Message:


Add app.psgi to web build workflow path triggers

Changes to the Plack entrypoint weren't triggering automatic web image rebuilds.

Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications

github: shadowy octopus with the head of a robot, emblazoned with the Dreamwidth swirl (Default)
[personal profile] github posting in [site community profile] changelog

Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: 081042e7a5b88b3eae282f82dcb6bf1bfcd4fc3c https://github.com/dreamwidth/dreamwidth/commit/081042e7a5b88b3eae282f82dcb6bf1bfcd4fc3c Author: Mark Smith mark@dreamwidth.org Date: 2026-02-15 (Sun, 15 Feb 2026)

Changed paths: M app.psgi M t/plack-subdomain.t

Log Message:


Fix journal subdomain root URI showing homepage instead of journal

DW::Routing->call() in app.psgi was called without a username, so it always used the 'app' role. The homepage route (registered as app-only via /index) matched '/' on journal subdomains, returning a defined value that prevented the journal rendering block from running.

Pass the journal username (from dw.journal_user, set by SubdomainFunction middleware) to routing so it uses the 'user' role, where app-only routes like the homepage don't match.

Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications

github: shadowy octopus with the head of a robot, emblazoned with the Dreamwidth swirl (Default)
[personal profile] github posting in [site community profile] changelog

Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: ef55ebecc55780c8bda7b40475f05425fc9a3fe7 https://github.com/dreamwidth/dreamwidth/commit/ef55ebecc55780c8bda7b40475f05425fc9a3fe7 Author: Mark Smith mark@dreamwidth.org Date: 2026-02-15 (Sun, 15 Feb 2026)

Changed paths: M cgi-bin/LJ/SynSuck.pm

Log Message:


Fix double-delay causing failcount to increment twice per check

Move delay() calls after set_prop() so that if set_prop throws an exception, the exception handler in DW::Task::SynSuck is the only caller of delay(), not a second one on top of an already-completed delay().

Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications

github: shadowy octopus with the head of a robot, emblazoned with the Dreamwidth swirl (Default)
[personal profile] github posting in [site community profile] changelog

Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: 55d1983593d30fd637a0f5303249894099cc5790 https://github.com/dreamwidth/dreamwidth/commit/55d1983593d30fd637a0f5303249894099cc5790 Author: Mark Smith mark@dreamwidth.org Date: 2026-02-15 (Sun, 15 Feb 2026)

Changed paths: R bin/maint/synsuck.pl M bin/maint/taskinfo.txt M bin/upgrading/update-db-general.pl M cgi-bin/DW/Controller/Misc.pm M cgi-bin/DW/Task/SynSuck.pm M cgi-bin/LJ/Console/Command/SynEdit.pm M cgi-bin/LJ/Feed.pm M cgi-bin/LJ/SynSuck.pm

Log Message:


Add exponential backoff for dead syndicated feeds

Dead feeds (HTTP errors, DNS failures, parse errors) were polled every 1-3 hours forever with no escalation. Add a failcount column to the syndicated table and apply exponential backoff: base_delay * 2^min(failcount, 7), capped at 30 days. Dead feeds settle into ~monthly polling instead of ~2,920 wasted requests per year.

Three backoff modes: escalate (feed/account errors), reset (success or not-modified), hold (our infrastructure issues like nodb/posterror). Reset failcount on URL change (syn_edit), feed merge, and REST ping.

Also converts SynSuck verbose print statements to Log::Log4perl, removes the now-drained legacy synsuck.pl maint worker, and fixes an out-of-scope $user reference in parse_items_from_feed().

Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications

github: shadowy octopus with the head of a robot, emblazoned with the Dreamwidth swirl (Default)
[personal profile] github posting in [site community profile] changelog

Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: 591882659c62d6a2773aa4050b5ec36ee3bf84f5 https://github.com/dreamwidth/dreamwidth/commit/591882659c62d6a2773aa4050b5ec36ee3bf84f5 Author: Mark Smith mark@dreamwidth.org Date: 2026-02-15 (Sun, 15 Feb 2026)

Changed paths: R .github/workflows/tasks/worker-synsuck-service.json M .github/workflows/worker-deploy.yml M .github/workflows/worker22-deploy.yml R bin/worker/synsuck M cgi-bin/LJ/SynSuck.pm M config/workers.json

Log Message:


Remove old TheSchwartz synsuck worker (fully drained)

The SQS-based dw-synsuck worker has been running in production and the TheSchwartz queue is fully drained. Remove the old worker script, ECS task definition, deploy workflow entries, and workers.json config. Also clean up dead cond_debug calls in LJ::SynSuck.

Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications

github: shadowy octopus with the head of a robot, emblazoned with the Dreamwidth swirl (Default)
[personal profile] github posting in [site community profile] changelog

Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: 1b24c1ccf3b8b16e581c478bde4c70c0af428f01 https://github.com/dreamwidth/dreamwidth/commit/1b24c1ccf3b8b16e581c478bde4c70c0af428f01 Author: Mark Smith mark@dreamwidth.org Date: 2026-02-15 (Sun, 15 Feb 2026)

Changed paths: M cgi-bin/DW/Task/SynSuck.pm

Log Message:


Handle unhandled exceptions in SynSuck worker via delay()

When LJ::SynSuck::update_feed() dies with an unhandled exception (e.g. "Hour '24' out of range"), the normal delay() call is never reached, so checknext is never updated. The scheduler immediately re-enqueues the same feed, creating a tight infinite retry loop.

Now the worker catches the exception, calls delay() to push checknext 6 hours into the future with laststatus='exception', and returns COMPLETED. This matches how every other error path in SynSuck already works and is better than the old TheSchwartz behavior (which retried 3 times over 90 minutes then silently gave up without updating checknext or laststatus).

Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications

github: shadowy octopus with the head of a robot, emblazoned with the Dreamwidth swirl (Default)
[personal profile] github posting in [site community profile] changelog

Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: 3189782e88a86b4df420002a7b9e67cb82666cc7 https://github.com/dreamwidth/dreamwidth/commit/3189782e88a86b4df420002a7b9e67cb82666cc7 Author: Mark Smith mark@dreamwidth.org Date: 2026-02-15 (Sun, 15 Feb 2026)

Changed paths: M cgi-bin/DW/TaskQueue.pm

Log Message:


Fix dispatch() sending mixed task types to wrong SQS queue

dispatch() batched all DW::Task objects into a single send() call, but send() routes the entire batch to the queue of the first task. When a single dispatch([profile] jobs) contained both LJ::Events (converted to FiredEvent tasks) and SphinxCopier tasks, the SphinxCopier messages ended up in the ESN queue, causing "Can't locate object method work" errors in the ESN worker.

Group tasks by type before sending so each type goes to its own queue. Also croak on failed module loads in start_work() instead of silently continuing.

Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications

github: shadowy octopus with the head of a robot, emblazoned with the Dreamwidth swirl (Default)
[personal profile] github posting in [site community profile] changelog

Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: ac3bc65f616384cc864ba3fc33836ea2dac5cc1b https://github.com/dreamwidth/dreamwidth/commit/ac3bc65f616384cc864ba3fc33836ea2dac5cc1b Author: Mark Smith mark@dreamwidth.org Date: 2026-02-15 (Sun, 15 Feb 2026)

Changed paths: M .github/workflows/base-build.yml M .github/workflows/base22-build.yml M .github/workflows/devcontainer-build.yml M .github/workflows/proxy-build.yml M .github/workflows/web-build.yml M .github/workflows/web22-build.yml M .github/workflows/worker-build.yml M .github/workflows/worker22-build.yml

Log Message:


Disable Docker BuildKit provenance attestations in all build workflows

Docker 25+ enables provenance attestations by default, which creates 3 manifests per build in GHCR (image index + platform manifest + attestation). This clutters the package registry and makes dwtool's image selection UI show 3x entries per build. Since we build and deploy internally, provenance adds no value here.

Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications

github: shadowy octopus with the head of a robot, emblazoned with the Dreamwidth swirl (Default)
[personal profile] github posting in [site community profile] changelog

Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: 9e89eca48d7a4e3045f36ac48cafa09870e58306 https://github.com/dreamwidth/dreamwidth/commit/9e89eca48d7a4e3045f36ac48cafa09870e58306 Author: Mark Smith mark@dreamwidth.org Date: 2026-02-15 (Sun, 15 Feb 2026)

Changed paths: A .github/workflows/tasks/worker-dw-change-poster-id-service.json A .github/workflows/tasks/worker-dw-distribute-invites-service.json A .github/workflows/tasks/worker-dw-embeds-service.json A .github/workflows/tasks/worker-dw-import-eraser-service.json A .github/workflows/tasks/worker-dw-incoming-email-service.json A .github/workflows/tasks/worker-dw-support-notify-service.json A .github/workflows/tasks/worker-dw-xpost-service.json M .github/workflows/worker-deploy.yml M .github/workflows/worker22-deploy.yml M bin/incoming-mail-inject.pl A bin/worker/dw-change-poster-id A bin/worker/dw-distribute-invites A bin/worker/dw-embeds A bin/worker/dw-import-eraser A bin/worker/dw-incoming-email A bin/worker/dw-support-notify A bin/worker/dw-xpost M cgi-bin/DW/Controller/Admin/Invites.pm M cgi-bin/DW/Controller/Importer.pm A cgi-bin/DW/Task/ChangePosterId.pm A cgi-bin/DW/Task/DistributeInvites.pm A cgi-bin/DW/Task/EmbedWorker.pm A cgi-bin/DW/Task/ImportEraser.pm A cgi-bin/DW/Task/IncomingEmail.pm A cgi-bin/DW/Task/SupportNotify.pm A cgi-bin/DW/Task/XPost.pm M cgi-bin/DW/User/OpenID.pm M cgi-bin/LJ/EmbedModule.pm M cgi-bin/LJ/Protocol.pm M cgi-bin/LJ/Support.pm M config/workers.json

Log Message:


TheSchwartz deprecation [2 of 4]: Migrate 7 workers to SQS

Migrate the remaining application-level TheSchwartz workers to DW::TaskQueue/SQS: ChangePosterId, DistributeInvites, EmbedWorker, ImportEraser, IncomingEmail, SupportNotify, and XPost.

For each worker: - New DW::Task::* module with identical business logic - New bin/worker/dw-* script using DW::TaskQueue->start_work - ECS task definition and deploy workflow entries - Enqueue sites updated to dispatch DW::Task objects

Old TheSchwartz workers and scripts remain for draining existing jobs. Also removes stale use TheSchwartz from EmbedModule.pm and fixes a duplicate preview field in the embed dispatch payloads.

Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications

github: shadowy octopus with the head of a robot, emblazoned with the Dreamwidth swirl (Default)
[personal profile] github posting in [site community profile] changelog

Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: 1ea3fb90458e9829e0c4425f8b8fd5755bea0571 https://github.com/dreamwidth/dreamwidth/commit/1ea3fb90458e9829e0c4425f8b8fd5755bea0571 Author: Mark Smith mark@dreamwidth.org Date: 2026-02-15 (Sun, 15 Feb 2026)

Changed paths: M src/dwtool/go.mod M src/dwtool/go.sum M src/dwtool/internal/aws/ecs.go A src/dwtool/internal/aws/sqs.go M src/dwtool/internal/config/config.go M src/dwtool/internal/config/workers.go M src/dwtool/internal/github/github.go M src/dwtool/internal/model/types.go M src/dwtool/internal/ui/app.go M src/dwtool/internal/ui/deploy.go M src/dwtool/internal/ui/help.go M src/dwtool/internal/ui/logs.go A src/dwtool/internal/ui/sqs.go M src/dwtool/main.go

Log Message:


Add SQS dashboard page to dwtool

Second top-level page (right arrow from ECS dashboard) showing SQS queue health: pending messages, in-flight, delayed, and throughput via CloudWatch NumberOfMessagesReceived metrics. Queues are discovered by configurable prefix (--sqs-prefix) and grouped into task queues vs dead letter queues.

Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications

Profile

denise: Image: Me, facing away from camera, on top of the Castel Sant'Angelo in Rome (Default)
Denise

November 2022

S M T W T F S
  12345
6789101112
13141516171819
20212223242526
27282930   

Most Popular Tags

Page Summary

Style Credit

Expand Cut Tags

No cut tags
Page generated Feb. 20th, 2026 02:29 pm
Powered by Dreamwidth Studios