# Newsroom run log One line per run of the daily newsroom agent, including runs that published nothing. Format: ``` YYYY-MM-DD HH:MM UTC published|skipped|paused|failed ``` A `skipped` line is a normal, healthy outcome: it records that the agent ran, looked, and found nothing that cleared the bar. An absence of lines means the agent did not run at all, which is a different problem entirely. --- 2026-08-24 17:40 UTC published nip-22-drops-its-kind-1-prohibition (2 sources) 2026-08-25 13:11 UTC published nip-30-extends-custom-emoji-to-comments (1 source) 2026-08-26 18:06 UTC skipped nothing new since last run; considered: #2448 (covered 2026-08-25), #2358 (covered 2026-08-24), Amethyst v1.14.0 (already cited as a source) 2026-08-27 13:10 UTC published nip-a3-adds-payto-payment-targets (2 sources) 2026-08-28 13:10 UTC published nip-a3-rewritten-a-day-after-merging (3 sources) 2026-08-29 13:03 UTC skipped nothing new since last run; nips master has no commit after 24b2ae9f (2026-08-27, covered 2026-08-28); no client or relay release since Amethyst v1.14.0 (2026-08-22, already cited) 2026-08-31 13:07 UTC skipped Monday digest window (2026-08-25..2026-08-31) holds no uncovered change; all of #2448, #2119 and commit 24b2ae9f already published as stories on 08-25, 08-27 and 08-28; nips master HEAD is still 24b2ae9f (2026-08-27) and no client or relay release since Amethyst v1.14.0 (2026-08-22, already cited) 2026-09-01 13:09 UTC published nip-67-adds-an-auth-hint (3 sources) 2026-09-02 13:20 UTC published nip-84-adds-i-tags-to-highlights (3 sources) 2026-09-03 13:09 UTC published strfry-1-1-2-fixes-a-websocket-memory-dos (4 sources) 2026-09-04 13:20 UTC published nip-78-puts-app-data-behind-auth (4 sources); one story per day, so two other candidates were left uncovered and both remain in the 2026-09-07 Monday digest window: #2460 (NIP-01, limit zero now MUST skip stored events and still send EOSE, merged 04:19 UTC today) and Primal Android 3.5.27 (2026-09-03, rejects local signer requests with a mismatched signing identity and hardens incoming NWC request auth) 2026-09-08 12:54 UTC published relayer-2-2-19-fixes-overlapping-count-filters (3 sources) 2026-09-16 12:44 UTC pending nip-22-amethyst-loads-nested-comments (5 sources; seven editions and social copy prepared; PR CI, merge and production verification pending; LinkedIn and Nostr delivery pending scheduled workflow and durable ledger). Recovery: nip-78-puts-app-data-behind-auth has LinkedIn confirmed but no Nostr receipt; preserve its ledger and do not retry the whole article. No unfinished newsroom PR found; unrelated PR #9 excluded. 2026-09-16 12:52 UTC published nip-22-amethyst-loads-nested-comments (5 sources); resolves the pending entry above. Content PR #41 merged as 6e03426e0a98ea5139674fec95a9d196ba7f2347 after passing CI 35097630813 (163 tests, TypeScript, parity, social lint, build). Production deployment 35097917324 succeeded; all seven live pages return 200 with correct canonical/hreflang, descriptions, Open Graph and NewsArticle data. LinkedIn and Nostr: pending scheduled social workflow and per-channel durable receipts in data/social-posted.json; verify next run without regenerating or reposting. Recovery clarification: the older nip-78 copy contains LinkedIn only, and its receipt covers that authored channel; no whole-entry retry is needed. 2026-09-20 08:20 UTC pending nip-02-gives-petnames-resolvable-paths (3 sources; seven editions, deterministic illustration and social copy prepared; PR CI, merge, production and scheduled social delivery verification pending) 2026-09-22 08:00 UTC published amber-6-6-5-separates-backup-encryption-from-app-permissions (2 sources; fortnightly ecosystem) 2026-09-23 15:25 UTC published nip-02-limits-petnames-to-ascii (3 sources) 2026-09-24 07:59 UTC published amethyst-1-16-adds-bolt12-and-fitness (4 sources; recovered draft PR #53, source claims reverified before publication) 2026-09-24 14:00 UTC published nip-86-gains-seven-methods-and-takes-over-invites (5 sources); second story today, after the 07:59 entry recovered a prepared Amethyst draft rather than surveying fresh merges. The NIP-86 cluster had never been evaluated: #2477 and #2481 merged after the 09-23 run, and #2408 was opened 2026-07-03 and merged 01:14 UTC today, so creation-date enumeration would have missed it. Reported from the diffs, not the PR bodies: #2477's description advertises clearpubkey, clearevent and listroles, none of which are in its merged diff. 2026-09-26 08:14 UTC published a-nostr-follow-list-is-a-complete-snapshot (2 sources; evergreen fallback after #2483 was classified as a non-substantive event-kind table repair) 2026-09-28 08:31 UTC published nip-39-adds-bluesky-discord-nip-51-moves-follow-sets (4 sources; PR #64 merged as 30a5cac30edba816a88cc83dd7661717fc8d38e5 after CI 36395718245 passed. Post-merge verification and production activation completed in run 36396073236; all seven locale pages, canonical/hreflang, NewsArticle, sitemap/feed entries and 1200x630 PNG previews verified live. Run status is failed only because IndexNow rejected the live verification key with 403 UserForbiddedToAccessSite. LinkedIn and Nostr delivery pending scheduled workflow and durable ledger.) 2026-09-28 13:22 UTC published amber-6-6-6-fixes-nostrconnect-secret-parsing (4 sources); second entry today. The 08:31 run already took the Monday digest slot, and every NIPs merge in the 09-21..09-28 window is covered: #2486 and #2417 by that digest, #2477/#2481/#2408 on 09-24, #2483 rejected on 09-26 as a non-substantive kinds-table repair, #2474 a README link fix. Amber v6.6.6 published 11:22 UTC, after that run, and was the only release since 09-25 across nips, Damus, Amethyst, Primal (iOS and Android), Coracle, Snort, nostrudel, strfry, khatru, relayer, Citrine and nak. Reported from the diff: the changelog and the comparison agree here, unlike #2477 on 09-24. Note for the next run: git over SSH is refused on this host (port 22), so fetch and push ran over HTTPS; lib/generated/* was left uncommitted, matching PR #64, since prebuild regenerates it. 2026-09-28 13:35 UTC verified amber-6-6-6-fixes-nostrconnect-secret-parsing; pushed as 11a51aa. CI 36428211216: verify passed, deploy job reported failure only at the IndexNow submission step (403 UserForbiddedToAccessSite on 642 URLs), the same pre-existing key problem as run 36396073236 and unrelated to this article. Production is live regardless: all seven locale pages and the illustration return 200, all seven appear in sitemap.xml and news-sitemap.xml, and canonical plus seven hreflang alternates are correct. The IndexNow key needs fixing outside the newsroom; it has now failed two consecutive deploys. LinkedIn and Nostr delivery pending the scheduled social workflow and its durable ledger. 2026-09-29 13:23 UTC published strfry-1-1-3-backs-out-an-epoll-teardown-guard (5 sources); pushed as 153da81. Nothing happened since the 09-28 runs: nips master HEAD is still 0046368a (2026-09-27, covered by the 09-28 digest), and no client or relay release is newer than Amber v6.6.6 (published 09-28 11:22 UTC, already covered). The one uncovered notable change was strfry 1.1.3, tagged 2026-09-04 and missed at the time, so this entry is 25 days stale by event date; date and publishedAt are today per the playbook, and the body states the 4 September tag date. Enumerated by merge date as required. Correction to a hypothesis this run started with: 1.1.3 does NOT revert the memory DoS fix that headlined our 09-03 article. uWebSockets 45816de8 is a CHILD of 1ef91686, not a revert of it; what it reverts is 07271349, "Prevent duplicate teardown from stale epoll events" (PR #6, merged 2026-07-20), which shipped in 1.1.1 and 1.1.2. Reported from the submodule diffs, since the version numbers and the one-line changelog entry alone do not establish what moved. lib/generated/* left uncommitted, matching PR #64 and the 09-28 run, since prebuild regenerates it; next.config.ts and public/.well-known/nostr.json are another agent's uncommitted work and were not touched. Gates before push: tsc clean, 243 tests pass, parity pass, build pass, social:lint 17 files 0 errors, all 5 source URLs 200, all seven locales share one translationKey, no em dash. Standing issue unchanged: the IndexNow key has failed the last two deploys (403 UserForbiddedToAccessSite) and needs fixing outside the newsroom. Post-merge production verification and LinkedIn/Nostr delivery pending CI and the scheduled social workflow. 2026-09-29 13:36 UTC verified strfry-1-1-3-backs-out-an-epoll-teardown-guard; CI 36574834260 verify passed; deploy uploaded, restarted and verified the live homepage and refreshed sitemap, then reported failure only at "Submit changed URLs and request homepage reindexing". That is the same IndexNow key problem as runs 36396073236 and 36428211216, now three consecutive deploys, and it is unrelated to this article. Production is live: the English canonical returns 200 (the /en/ prefix 307s to it as designed), all six other locale pages and the illustration return 200, all seven appear in news-sitemap.xml, and the English page carries the correct canonical plus seven hreflang alternates and x-default with the right per-locale slugs, and NewsArticle data. The IndexNow key still needs fixing outside the newsroom. LinkedIn and Nostr delivery pending the scheduled social workflow and its durable ledger; do not regenerate or repost. 2026-09-30 08:22 UTC published nip-09-deletion-requests-do-not-prove-erasure (2 sources; evergreen fallback after no NIP merge or major client/relay release appeared after the 2026-09-29 run. Seven locales, deterministic illustration and distinct LinkedIn/Nostr copy prepared. NIP-09 and NIP-01 pinned to nips commit 0046368. Local gates passed: TypeScript, 243 tests, parity, social lint and production build with system TLS. Scoped PR, hosted CI, merge, deployment and social delivery verification pending.) 2026-09-30 13:26 UTC verified nip-09-deletion-requests-do-not-prove-erasure (the 08:22 entry above); resolves its pending PR, CI, merge, deployment and social items. Merged as 26680f21. CI 36689966655: verify passed; the deploy job reported failure only at "Submit changed URLs and request homepage reindexing", the same IndexNow key 403 as runs 36396073236, 36428211216 and 36574834260, now four consecutive deploys and still unrelated to any article. Production is live: all seven locale pages and the illustration return 200 and all seven appear in news-sitemap.xml. Social delivery is complete, not pending: run 36697660145 posted both channels at 09:42 UTC with durable receipts in data/social-posted.json for nostr-wot-li and nostr-wot-nostr, so do not regenerate or repost. Both source URLs return 200 and no em dash appears in the seven editions or the social copy. The IndexNow key still needs fixing outside the newsroom. 2026-09-30 13:26 UTC skipped nothing cleared the bar; second run today and the one story slot was already taken by the 08:22 evergreen fallback, so a second article would have meant lowering the bar to fill a slot. Enumerated by merge date as required: gh search prs --merged-at 2026-09-28..2026-09-30 returns nothing, and nips master HEAD is still 0046368a (2026-09-27). Considered and rejected: #2486 and #2417, covered by the 09-28 digest; #2483, rejected on 09-26 as a non-substantive kinds-table repair. No client or relay release is newer than Amber v6.6.6 (2026-09-28 11:22 UTC, covered that day) across nips, Damus, Amethyst, Primal (iOS and Android), Coracle, Snort, nostrudel, strfry, khatru, relayer, Amber, Citrine and nak. Checked the tag-only repos by resolving tag commit dates rather than trusting tag order, since the releases API returns nothing for them: Damus v1.17 is 2026-05-27, khatru v0.19.1 is 2025-09-22 and nostrudel v0.38.3 is 2024-02-08, so all three are far older than they look at the top of a tag list. Not touched: next.config.ts, lib/generated/* and public/.well-known/ are another agent's uncommitted work. 2026-10-01 13:10 UTC skipped nothing cleared the bar; the ecosystem has not moved since the 2026-09-30 runs. Thursday, so a story slot, not a digest. Enumerated by merge date as required and cross-checked two ways: gh search prs --repo nostr-protocol/nips --merged --merged-at 2026-09-28..2026-10-01 returns an empty array, and nips master HEAD is still 0046368a (2026-09-27, "NIP-39: unify verification text, add bluesky and discord"), unchanged for the fourth consecutive run. Widening the search to 2026-09-25..2026-10-01 returns only #2486, #2417 and #2483, all three already accounted for: #2486 and #2417 by the 09-28 digest, #2483 rejected on 09-26 as a non-substantive event-kinds table repair. No client or relay release is newer than Amber v6.6.6 (2026-09-28 11:22 UTC, covered that day) across nips, Damus, Amethyst, Primal (iOS and Android), Coracle, Snort, nostrudel, strfry, khatru, relayer, Amber, Citrine and nak. Tag-only repos were again resolved by tag commit date rather than tag order: strfry 1.1.3 is 2026-09-04 (covered 09-29), Damus v1.17 is 2026-05-27, Snort v0.5.3 is 2026-04-08 and khatru v0.19.1 is 2025-09-22. Two corrections to the 09-30 entry's sweep, both leaving the conclusion unchanged: nostrudel lives at hzrd149/nostrudel and its newest tag is v1.1.0 at 2025-12-06, not v0.38.3 at 2024-02-08; and PrimalHQ/primal-ios-app has no releases and no tags at all, so its silence is an absent source rather than a stale one. PrimalHQ/primal-server was pushed 2026-09-30 but carries no tagged release, so it is not a permitted source. Deliberately did not publish an evergreen fallback: 09-26 and 09-30 both used one, and a third inside 48 hours of the last would be filling a slot rather than reporting a change, which the playbook forbids. Standing issue still open and still outside the newsroom: the IndexNow key has now failed four consecutive deploys with 403 UserForbiddedToAccessSite. Ran from a detached worktree at origin/main because the canonical clone has another agent's uncommitted work that blocked git pull; not touched: next.config.ts (a NIP-05 CORS header addition), public/.well-known/nostr.json and lib/generated/*. 2026-10-02 08:14 UTC published nostr-wot-0-8-10-isolates-nonstandard-login-approvals (3 sources; PRODUCT/PROJECT UPDATE lane. Published non-draft v0.8.10 GitHub release and downloadable Chrome, Firefox, source and checksum assets verified. Article covers the isolated kind 22242 legacy-login approval path, NIP-98 comparison, optional uninstall feedback and browser-store availability limitation. Seven locales, deterministic illustration and distinct LinkedIn/Nostr copy prepared. Scoped PR, hosted CI, merge, deployment and social delivery verification pending.) 2026-10-02 13:17 UTC verified nostr-wot-0-8-10-isolates-nonstandard-login-approvals (the 08:14 entry above); resolves its pending PR, CI, merge, deployment and social items. PR #71 merged 08:37 UTC as d49fe744 with all seven locale files, the deterministic illustration and the social copy in that one commit. CI 36985117574: verify passed; the deploy job reported failure only at the IndexNow submission step (403 UserForbiddedToAccessSite on 733 URLs), the same key problem as runs 36396073236, 36428211216, 36574834260 and 36689966655, which made it five consecutive deploys. Production is live and was carried by the two later green deploys: all seven locale pages return 200 and so does the illustration, and all seven appear in news-sitemap.xml. Social delivery is complete, not pending: both channels posted 09:45:12 UTC with durable receipts in data/social-posted.json for nostr-wot-li and nostr-wot-nostr, so do not regenerate or repost. Two infrastructure changes landed after this article and both were checked rather than assumed. The site moved to nostrwot.com (#72) and news URLs gained a date segment (#73), so the canonical form is now /news/YYYY-MM-DD/slug with /{locale} before /news for the six translations. The social posts went out at 09:45, before #73 at 12:26, so the ledger records the undated path; that path 308s to the dated one and the retired nostr-wot.com 301s to nostrwot.com, so every posted link and every historical link still resolves 200 through the chain. The IndexNow standing issue now looks closed by the domain move rather than by any newsroom change: run 37006718635 submitted 232 URLs with no 403, the first clean submission in six deploys. Treat it as fixed only after the next deploy confirms it. 2026-10-02 13:17 UTC skipped nothing cleared the bar; second run today and the one story slot was already taken by the 08:14 product update, so a second article would have meant lowering the bar to fill a slot, which the playbook forbids. Friday, so a story slot and not a digest. Enumerated by merge date as required and cross-checked two ways: gh search prs --repo nostr-protocol/nips --merged --merged-at 2026-10-01..2026-10-02 returns an empty array, as does 2026-09-28..2026-10-02, and nips master HEAD is still 0046368a (2026-09-27, "NIP-39: unify verification text, add bluesky and discord"), unchanged for the fifth consecutive run. Widening to 2026-09-20..2026-10-02 returns only #2486, #2483, #2481, #2477, #2474, #2417 and #2408, every one already accounted for: #2486 and #2417 by the 09-28 digest, #2477, #2481 and #2408 on 09-24, #2483 rejected on 09-26 as a non-substantive event-kinds table repair, #2474 a README link fix. No client or relay release is newer than Amber v6.6.6 (2026-09-28 11:22 UTC, covered that day) across nips, Damus, Amethyst, Primal (iOS and Android), Coracle, Snort, nostrudel, strfry, khatru, relayer, Amber, Citrine and nak. Tag-only repos were again resolved by tag commit date rather than tag order, confirming the 10-01 figures: strfry 1.1.3 is 2026-09-04 (covered 09-29), Damus v1.17 is 2026-05-27, nostrudel v1.1.0 at hzrd149/nostrudel is 2025-12-06, khatru v0.19.1 is 2025-09-22, and PrimalHQ/primal-ios-app still has no releases and no tags at all. Deliberately did not publish an evergreen fallback: 09-26 and 09-30 both used one and today already carries an article, so a third fallback inside a week would be filling a slot rather than reporting a change. No article was written, so no gates were run and no illustration or social copy was due; this commit appends log lines only, on top of cfc74514, which hosted CI 37006718635 has already verified green. Ran from a dedicated worktree at origin/main because the canonical clone still has another agent's uncommitted work that blocks git pull; not touched: next.config.ts (a NIP-05 CORS header addition), public/.well-known/nostr.json and lib/generated/*. 2026-10-04 08:23 UTC published use-nip-65-relay-lists-without-losing-posts-or-mentions (2 sources; GUIDE/EDUCATION lane. No NIP merge or major client/relay release appeared after the 2026-10-02 sweep, so rotation selected a nonduplicative practical NIP-65 guide. Seven locales, deterministic illustration and distinct LinkedIn/Nostr copy prepared. Scoped PR, hosted CI, merge, deployment and social delivery verification pending.) 2026-10-04 13:36 UTC verified use-nip-65-relay-lists-without-losing-posts-or-mentions (the 08:23 entry above); resolves its pending PR, CI, merge, deployment and social items. PR #74 merged 08:16 UTC as 3b7157da with all seven locale files, the deterministic illustration and the social copy in that one commit. CI 37188377895 on that commit passed in full, including the deploy job: no IndexNow 403, which is the second clean submission in a row after run 37006718635, so the standing key problem that failed five consecutive deploys now looks genuinely closed rather than coincidentally quiet. Production is live: all seven locale pages and the illustration return 200, and each of the seven slugs appears exactly once in news-sitemap.xml. Social delivery is complete, not pending: run 37193215695 posted both channels at 09:46:48 UTC with durable receipts in data/social-posted.json for nostr-wot-li and nostr-wot-nostr, so do not regenerate or repost. 2026-10-04 13:50 UTC published nak-0-21-0-reads-relay-lists-and-resolves-petname-paths (7 sources); second article today, and deliberately so, which is a departure from the 09-30 and 10-02 reasoning that worth stating. Those runs skipped a second slot because nothing cleared the bar AND the slot was taken; here only the second is true. nak v0.21.0 was tagged 2026-10-03 15:27 UTC, before this morning's 08:23 run, which recorded that no client or relay release had appeared after the 10-02 sweep. That was wrong, and the release was still uncovered, so this reports a real change rather than filling a slot. Precedent followed: the 09-29 strfry 1.1.3 entry published a release missed by 25 days on the same basis. Sweep as required, enumerated by merge date: gh search prs --repo nostr-protocol/nips --merged --merged-at 2026-10-02..2026-10-04 returns an empty array, and nips master HEAD is still 0046368a (2026-09-27), unchanged for a seventh consecutive run; widening to 2026-09-27..2026-10-04 returns only #2486 and #2417, both covered by the 09-28 digest. Tag-only repos again resolved by tag commit date rather than tag order, confirming the 10-01 and 10-02 figures: strfry 1.1.3 is 2026-09-04 (covered 09-29), Damus v1.17 is 2026-05-27, nostrudel v1.1.0 at hzrd149/nostrudel is 2025-12-06, khatru v0.19.1 is 2025-09-22, and PrimalHQ/primal-ios-app still has no releases and no tags. nak was the only repo in the monitored set newer than Amber v6.6.6. Reported from the diff throughout, since the release body is empty. Two corrections made while drafting, both caught by reading commit file lists rather than trusting the shortlog: 4011cba5 does NOT add petname_cli.go, it changes the shared parsePubKey in helpers.go and adds petname_test.go (+239); petname_cli.go, parsePubKeyForCommand, the absolute/relative root split and the deferred pubkey flags all arrive with PR #220 (80cf2c30, merged 09-25, +102 and +169). Attributing the absolute-root rule to 4011cba5 would have been wrong. Also verified rather than assumed: --inbox --outbox is an AND, not a union. Gates before push: tsc clean, 262 tests pass, parity pass, build pass (758 static pages), social:lint 21 files 0 errors, all 7 source URLs 200, all seven locales share one translationKey and appear in the generated news cache, no em dash or en dash in any of the seven files or the social copy. Internal links use the dated canonical /news/YYYY-MM-DD/slug form per locale, since the undated form 308s; both were checked against production. Ran from a dedicated worktree at origin/main because the canonical clone still has another agent's uncommitted work that blocks git pull; not touched: next.config.ts (a NIP-05 CORS header addition), public/.well-known/nostr.json and lib/generated/*. Post-merge production verification and social delivery pending CI and the scheduled social workflow. 2026-10-04 17:26 UTC verified nak-0-21-0-reads-relay-lists-and-resolves-petname-paths (the 13:50 entry above); resolves its pending CI, deployment and production items. Pushed straight to main as e1ea957 (no PR on this one, unlike #74 this morning). CI 37219569172: verify passed and deploy / deploy passed in full, including "Submit changed URLs and request homepage reindexing". That is the THIRD consecutive clean IndexNow submission after 37006718635 and 37188377895, so the key problem that failed five straight deploys with 403 UserForbiddedToAccessSite is now closed rather than coincidentally quiet, and the 10-02 note to treat it as fixed only after a confirming deploy is satisfied. Production is live: all seven locale pages and the illustration return 200, each of the seven slugs appears exactly once in news-sitemap.xml, and the English page carries the correct canonical plus seven hreflang alternates with the right per-locale slugs. The three internal article links were checked on the rendered page and all three return 200 directly rather than through the 308, which is why the dated /news/YYYY-MM-DD/slug form was used in the body instead of the bare form. One process note for the next run: gh run list --commit did not match the abbreviated SHA e1ea957 and returned an empty array for twelve minutes while run 37219569172 was in fact queued and then green, so a watcher keyed on an abbreviated SHA reports a false silence. Use the full 40 character SHA. Social delivery is still pending the scheduled social workflow; the last social run was 37214957450 at 15:57 UTC against abc4412, before this article existed, so the next scheduled run picks it up. Do not post it by hand and do not regenerate the copy. 2026-10-05 14:38 UTC published amber-6-6-7-gives-dead-relays-a-second-chance (3 sources); pushed straight to main as 2574e99. Monday, so the digest slot, and it produced a story instead, which is worth stating. The seven-day window 2026-09-28..2026-10-05 holds no uncovered NIPs merge at all: gh search prs --repo nostr-protocol/nips --merged --merged-at 2026-09-28..2026-10-05 returns an empty array and nips master HEAD is still 0046368a (2026-09-27, "NIP-39: unify verification text, add bluesky and discord"), unchanged for an eighth consecutive run. Widening to 2026-09-20..2026-10-05 returns only #2486, #2483, #2481, #2477, #2474, #2417 and #2408, every one already accounted for: #2486 and #2417 by the 09-28 digest, #2477, #2481 and #2408 on 09-24, #2483 rejected on 09-26 as a non-substantive event-kinds table repair, #2474 a README link fix. Every other notable change in the window already shipped as its own story on its own day (Amber v6.6.6 on 09-28, strfry 1.1.3 on 09-29, NIP-09 on 09-30, the 0.8.10 product update on 10-02, the NIP-65 guide and nak v0.21.0 on 10-04), so a digest would have been either a re-report of published stories or a one-item digest, which is a story. Precedent followed: 2026-08-31 skipped the Monday digest for the same structural reason, except that run had nothing uncovered at all and this one has exactly one thing. That one thing is Amber v6.6.7, tagged dc3f672e and published 13:24 UTC today, about an hour before this run, and it was the only repo in the monitored set newer than nak v0.21.0 (2026-10-03, covered 10-04). Third Amber article in fourteen days after v6.6.5 on 09-22 and v6.6.6 on 09-28, and non-duplicative on subject: those covered backup encryption versus app permissions, and nostrconnect secret parsing. This covers relay retry accounting, which neither touched. Repetition of one project is a fact about who is shipping, not a lowered bar. Reported from the diffs throughout, per the 09-24 lesson, and the release body turned out to agree on all four entries, unlike #2477 that day. Two things the changelog states but does not explain, both established only by reading the code: the dead state was permanent because RelayHealthTracker stored a bare failure count with no timestamp and isDead compared against it alone, so only a successful connection, an OS network change or a manual reconnect cleared it; and "no longer counted twice" means Quartz reports a failed dial as onCannotConnect followed by onDisconnected, both of which called the one scheduleReconnect that recorded a failure, so the documented MAX_RECONNECT_ATTEMPTS of 10 was really 5. The second is the sharper defect and the changelog buries it in a sub-clause. Also verified rather than assumed: DEAD_COOLDOWN_MS is 15 * 60 * 1000 and isDead now requires failures > 10 AND now - lastFailureAt < cooldown, so the threshold itself is unchanged; NetworkChangeDetector.kt is new at 79 lines with no Android service dependencies and treats the first callback as a baseline rather than a change; ConnectivityService is -46/+81 with a 1000 ms NETWORK_SETTLE_MS debounce; isWebRequest still gives a native `type` extra precedence over the three new weaker signals. Gates before push: tsc clean, 336 tests pass, parity pass, build pass, social:lint 22 files 0 errors. Article checks: all 3 source URLs 200, all seven locales share one translationKey and all seven slugs appear in the generated news cache, no em dash or en dash in any of the seven files or the social copy. Every number cross-checked against the API after drafting: 8 commits, 23 files, tag dc3f672e, 11 APK assets, 19 new tests as 4 + 8 + 7. Ran from a dedicated worktree at origin/main, created at nostr-wot-worktrees/newsroom-2026-10-05 per the workspace convention, because the canonical clone still has another agent's uncommitted work that blocks git pull; not touched: next.config.ts (a NIP-05 CORS header addition), public/.well-known/ and lib/generated/*, the last of which prebuild regenerates. Push went over HTTPS since the remote is SSH and port 22 is refused on this host, same as 09-28. Post-merge production verification and social delivery pending CI and the scheduled social workflow; per the 10-04 17:26 note, use the full 40 character SHA when looking the run up, since an abbreviated SHA reports a false silence. Carried forward: the nak v0.21.0 social delivery was still pending at the end of the 10-04 run, so do not regenerate or repost that copy. 2026-10-05 15:02 UTC verified amber-6-6-7-gives-dead-relays-a-second-chance (the 14:38 entry above); resolves its pending CI, deployment and production items. Pushed straight to main as 2574e99, with the log entry following as 00dc9a4. CI 37325386583 on 2574e996 passed in full: verify success and deploy / deploy success, including "Submit changed URLs and request homepage reindexing", which submitted 15 URLs with no 403. That is the FOURTH consecutive clean IndexNow submission after 37006718635, 37188377895 and 37219569172, so the key problem that failed five straight deploys is closed and can stop being carried in this log. Production is live: all seven locale pages and the illustration return 200, each of the seven slugs appears in news-sitemap.xml, and the English page carries the correct canonical plus seven hrefLang alternates and x-default with the right per-locale slugs. Carried-forward item from the 10-04 17:26 entry is now resolved rather than pending: the nak v0.21.0 social copy went out at 2026-10-04 22:18:57 UTC with durable receipts in data/social-posted.json for both nostr-wot-li and nostr-wot-nostr, so that entry needs no follow-up and must not be regenerated or reposted. The 10-04 note said delivery was still pending because the then-latest social run predated the article; it ran later that evening. Today's social run 37296387126 at 10:24 UTC predates this article, so amber-6-6-7 is correctly absent from the ledger and the next scheduled run picks it up. Do not post it by hand. Worktree nostr-wot-worktrees/newsroom-2026-10-05 removed after this push per the workspace rule, since its branch is fully in main and its tree is clean. The canonical clone's uncommitted work was left untouched throughout: next.config.ts (a NIP-05 CORS header addition), public/.well-known/ and lib/generated/*. 2026-10-06 08:34 UTC published nip-92-gives-profile-images-fallbacks-and-blurhashes (4 sources; NEWS lane. A strong time-sensitive specification change overrides rotation after the 10-04 nak and 10-05 Amber news stories: PR #2494 merged 2026-10-05 14:27 UTC and adds exact-match imeta metadata for kind 0 picture and banner URLs. Product/project lane was checked first: nostr-wot-extension remains at published v0.8.10, already covered on 10-02, and the latest nostr-wot-sdk release remains @nostr-wot/graph 0.3.1 from 09-20 with documentation-only changes. Seven locales, deterministic 1200x630 illustration and distinct LinkedIn/Nostr copy prepared. Scoped PR, hosted CI, merge, production and scheduled social delivery verification pending.) 2026-10-06 13:25 UTC published amethyst-1-17-stops-losing-requests-to-refused-kinds (6 sources); pushed straight to main as 4d4f0f8bda863a6f12c603e418cfd4b15368bb3e. Second article today, on the 10-04 precedent: the slot was taken by the 08:34 NIP-92 story, but something uncovered and notable existed, so this reports a real change rather than filling a slot. Amethyst v1.17.0 was published 2026-10-05 19:54 UTC, before the 08:34 run, which did not mention it; no existing article or log entry covers it (last Amethyst story was 1.16 on 09-24). Sweep by merge date: gh search prs --repo nostr-protocol/nips --merged --merged-at 2026-10-05..2026-10-06 returns only #2494, covered at 08:34; nips master HEAD a79e21d9. Releases checked: Amber v6.6.7 (covered 10-05), nak v0.21.0 (10-04), Nostream v3.2.0 (covered by today's ecosystem analysis #79), Primal Android 3.5.27 (09-03), gossip v0.14.0 (2025). Reported from PR bodies and diffs: #4238 kind-refusal narrowing, #4239/#4242 filter-cap merging, #4320 NIP-92 profile imeta (merged 1h55m after NIP PR #2494), #4209 Backup Keys and NIP-49. Verified in the Nip49.kt diff rather than the PR text: old decrypt rejected via m.any { it > 0 }, now checks the AEAD result; the 12 character minimum is creation-only. Numbers checked against the API: 1,253 commits v1.16.0...v1.17.0, 176 unique PRs in the release notes, #4201 +51174 across 419 files, ProfileImageMetasTest +291. Cordn kept brief, and Concord (CORD spec, #4262/#4264/#4277) deliberately left out as a separate protocol to avoid conflating the two. Social copy is Nostr only per the 6 October LinkedIn policy (third-party release). Gates: tsc clean, 341 tests pass, parity pass, build pass, social:lint 25 files 0 errors; 6 source URLs 200; all seven locales share one translationKey and appear in the generated cache; no em or en dash in any file; the seven per-locale internal NIP-92 links return 200 on production. First-person phrasing caught and removed from the es and ru drafts before commit. Ran from worktree nostr-wot-worktrees/newsroom-2026-10-06 at origin/main because the canonical clone still has another agent's uncommitted work (next.config.ts, public/.well-known/, lib/generated/*) that blocks git pull; not touched. Post-push CI, production and social delivery pending; look the run up by the full SHA. 2026-10-07 13:21 UTC published citrine-3-1-1-closes-a-nip-42-auth-bypass (5 sources); pushed straight to main as 33cc7f531dd2190a2e04a8a08c557f4e53c065b2. Wednesday, story slot. Nothing happened since the 10-06 runs: gh search prs --repo nostr-protocol/nips --merged --merged-at 2026-10-05..2026-10-07 returns only #2494 (covered 10-06), nips master HEAD still a79e21d9, and no monitored release is newer than Amethyst v1.17.0 (covered 10-06) across Damus, Amethyst, Primal Android, Coracle, Snort, strfry, khatru, relayer, Amber, Citrine, nak, nostrudel, notedeck, rust-nostr and Nostream; tag-only repos resolved by tag commit date as before. A check for releases no article had ever covered found Citrine, which appears nowhere in content/: v3.1.1 (2026-09-11) fixes a NIP-42 auth bypass, so this is a missed security release published late on the 09-29 strfry 1.1.3 precedent, 26 days after its tag; the body states the September dates. Reported from the diff of 829f0396, not the changelog: validateAuthEvent checked kind, challenge, relay tag, URL normalization and the ten minute window but never event.verify(), so any client could claim any pubkey; AuthGate gates five kinds (4, 1059, 30078 among them). Default bind is 127.0.0.1:4869 (Settings.kt), so the article scopes reach to the same device unless the listen address was changed, and notes the NIP-70 write check already exempted localhost. Also from the diff and stated as such: the new COUNT path sums per-filter counts, so an event matching two filters is counted twice. Considered and not separately covered: Citrine v3.2.0 (09-18, OOM fix; mentioned as containing all 3.1.1 commits, compare behind_by 0), relayer v2.3.0/v2.3.1 (09-14, empty release bodies). Social copy is Nostr only per the 6 October LinkedIn policy. Gates: tsc clean, 342 tests pass, parity pass, build pass, social:lint 26 files 0 errors; all 6 linked URLs 200; seven locales parse, share one translationKey and featuredImage, appear in the generated cache; no em or en dash; no author field. npm ci fails on main because package-lock.json is missing @swc/helpers@0.5.23, so gates ran after npm install and the lockfile change was not committed; worth fixing outside the newsroom. Ran from worktree nostr-wot-worktrees/newsroom-2026-10-07 because the canonical clone still has another agent's uncommitted work (next.config.ts, public/.well-known/, lib/generated/*) that blocks git pull; not touched. Post-push CI, production and social delivery pending; look the run up by the full SHA. 2026-10-08 09:56 UTC published verify-nip-05-without-turning-a-domain-into-trust (2 primary sources; GUIDE/EDUCATION lane. The latest six newsroom publications are ecosystem NEWS, so rotation required a nonduplicative guide rather than another client or relay release. Repository search found no dedicated NIP-05 article. This guide covers the two-sided kind 0 and well-known mapping, reverse lookup, lowercase hex requirements, redirect and CORS handling, public-key anchoring, relay-hint limits and cache states. Seven locales and a deterministic illustration prepared. Social copy is Nostr only. LinkedIn is intentionally ineligible under the 6 October owner policy because this is an educational protocol guide, not a substantive Nostr WoT platform or team announcement. Scoped PR, hosted CI, merge, production and scheduled Nostr delivery verification pending.) 2026-10-08 13:12 UTC skipped nothing cleared the bar; considered: gh search prs --repo nostr-protocol/nips --merged --merged-at 2026-10-06..2026-10-08 returns 0 (nips master HEAD still a79e21d9, #2494 covered 10-06); no monitored release newer than Amethyst v1.17.0 (covered 10-06): Amber v6.6.7, nak v0.21.0, Nostream v3.2.0 all covered, and Damus, Primal, Coracle, Snort, strfry, khatru, relayer, Citrine, nostrudel, notedeck, rust-nostr, ndk, gossip, zapstore unchanged (tag-only repos resolved by tag commit date). Today already carries the 09:56 NIP-05 guide. Ran from worktree nostr-wot-worktrees/newsroom-2026-10-08 because the canonical clone still has uncommitted work (next.config.ts, public/.well-known/, lib/generated/*) that blocks git pull; not touched. 2026-10-09 13:12 UTC skipped nothing cleared the bar; considered: gh search prs --repo nostr-protocol/nips --merged --merged-at 2026-10-07..2026-10-09 returns 0 (nips master HEAD still a79e21d9, #2494 covered 10-06). Only releases since the 10-08 runs: nak v0.21.1 and v0.21.2 (2026-10-08, empty release bodies); compare v0.21.0...v0.21.2 is 6 commits, all packaging (bolt and nodb binary variants, then bolt dropped; man pages generated and uploaded) plus a README removal of a wallet example for an already-removed command, so no user-visible change. Damus, Amethyst, Primal, Coracle, Snort, strfry, khatru, relayer, Amber, Citrine, nostrudel, notedeck, rust-nostr, Nostream, ndk, zapstore, gossip unchanged (tag-only repos checked by commits since 10-08). Ran from worktree nostr-wot-worktrees/newsroom-2026-10-09 because the canonical clone still has uncommitted work (next.config.ts, public/.well-known/, lib/generated/*) that blocks git pull; not touched. 2026-10-10 08:05 UTC published verify-nip-57-zap-receipts-before-counting-them (2 primary sources; GUIDE/EDUCATION lane; seven locale editions, deterministic illustration and Nostr-only social copy prepared. LinkedIn intentionally ineligible under the platform/team-only policy. Scoped PR, hosted CI, merge, production verification and durable Nostr receipt pending.) 2026-10-12 08:18 UTC published amethyst-1-18-adds-nip-85-trust-filtering-and-a-new-desktop-app (4 primary sources; NEWS lane. Amethyst v1.18.0 was published 2026-10-11 19:27 UTC and adds a local NIP-85 trust-network index plus shared desktop builds. The 2026-10-05..2026-10-12 NIPs merge window contains only #2494, already covered on 10-06. The prior NIP-57 guide's pending social item is resolved by the durable Nostr receipt recorded at 2026-10-10 09:55:40 UTC; do not repost. Seven locales, deterministic illustration and Nostr-only copy prepared. LinkedIn intentionally ineligible because this is a third-party client release. Scoped PR, hosted CI, merge, deployment and scheduled Nostr delivery pending.) 2026-10-15 20:31 UTC pending site-permissions (own published tutorial; PR #96 merged; social workflow 38802579176 queued; no delivery claimed) 2026-10-15 20:32 UTC published site-permissions (existing own guide/video; LinkedIn and Nostr confirmed by workflow 38802579176 and data/social-posted.json; PR #96) 2026-10-15 21:04 UTC published what-is-a-nostr-event (GUIDE/EDUCATION recovery from our published Nostr events tutorial JlenrCGN2z8; PR #97 merged as 0cb8d60491dc1251e73ccdd246624e942f7db708; CI/deploy 38804988330 passed including typecheck, tests, parity, social lint, build, rendered SEO/preview audit, production activation and live sitemap verification. All seven localized guide URLs were present in the refreshed sitemap and IndexNow accepted the changed URLs. LinkedIn is eligible as team-update and Nostr is eligible. Social delivery is pending: latest Social posting run 38802579176 predates this guide, data/social-posted.json has no receipt for this key, and the connected GitHub surface exposes no workflow-dispatch operation. Leave queued for the existing social.yml schedule and do not retry outside that workflow.) 2026-10-18 08:07 UTC pending what-is-nostr (GUIDE/EDUCATION recovery from the Nostr WoT team's public 2026-10-05 tutorial eFoC8i0G4Fk. The matching seven-locale guide existed, but the video was absent from the shared registry and the slug had no social file or durable ledger receipt. PR #99 adds the verified embed, source and deduplication evidence, and distinct LinkedIn and Nostr copy. LinkedIn is eligible as team-update because this is our own substantive educational work; no software-release claim is made. Hosted CI, merge, deployment, live-guide verification and durable channel receipts pending. The latest ledger resolves site-permissions and what-is-a-nostr-event, so neither is retried. Draft PR #67 is duplicate, dirty and not mergeable, and does not block this scoped recovery.) 2026-10-18 08:44 UTC pending what-is-nostr (GUIDE/EDUCATION website recovery published. PR #99 merged as 3bb468649dcc6976aa9beef7f66aa440176ea213. CI/deploy run 39111506083 passed exact-head typecheck, tests, parity, social lint, production build, rendered sitemap/metadata/JSON-LD/preview audit, healthy release activation, live homepage and refreshed-sitemap verification, and IndexNow submission. The guide now embeds the public Nostr WoT tutorial eFoC8i0G4Fk across all seven locales. Direct inspection from the cloud browser returns a generic Site Unavailable edge page, so no browser-only live-page claim is made. LinkedIn is eligible as team-update and Nostr is eligible. Social delivery remains queued: the fresh main ledger has no what-is-nostr receipt, latest Social posting run 39109809893 predates merge, and the connected GitHub capability exposes no workflow-dispatch operation. Do not retry outside the hosted social.yml workflow; verify its next durable ledger receipts separately.) 2026-10-20 08:07 UTC pending nostr-wot-0-8-13-adds-passkey-recovery-and-event-archives (PRODUCT/PROJECT UPDATE lane. Extension v0.8.13 was verified as a public non-prerelease GitHub release and as the live version in both Chrome Web Store and Firefox Add-ons on 2026-10-17. It adds compatible passkey vault creation and recovery, a full-tab event archive, popup reliability work and safeguards against automatically retrying NWC payments with uncertain outcomes. Seven locales, a deterministic illustration and distinct LinkedIn/Nostr copy prepared. LinkedIn is eligible as platform-update because this is a substantive Nostr WoT release, not a third-party ecosystem notice. Scoped PR, hosted CI, merge, deployment, live verification and durable channel receipts pending. The prior what-is-nostr reservation is resolved by durable LinkedIn and Nostr receipts posted at 2026-10-18T14:46:39.592Z, so it must not be retried.) 2026-10-20 08:41 UTC pending nostr-wot-0-8-13-adds-passkey-recovery-and-event-archives (PRODUCT/PROJECT UPDATE website publication completed. PR #102 merged exact green head 77cad61e537e31fe33938a9989835e3336603b93 as fbde3025fdd4f2c91120a7ed2cf9a87060789f36. CI/deploy workflow 39393122144 passed typecheck, 363 tests, cache parity, social lint, production build, rendered sitemap/metadata/JSON-LD/preview audit, artifact packaging, healthy release activation, live homepage and refreshed-sitemap verification, and IndexNow submission. Its live sitemap contained all seven localized article URLs. Direct cloud-browser inspection returned the generic Site Unavailable edge page, so no browser-only canonical or article-body claim is made. LinkedIn and Nostr are eligible, but the fresh main ledger has no receipt for this slug and the latest Social posting run 39337973652 predates the merge. The content workflow exposes no authorized sender dispatch. Leave it for the existing social.yml schedule and do not retry outside that workflow.) 2026-10-20 08:49 UTC published nostr-wot-0-8-13-adds-passkey-recovery-and-event-archives (PRODUCT/PROJECT UPDATE complete. The 08:41 website publication entry is now fully resolved. Scheduled Social posting run 39393963096 completed successfully at 2026-10-20T08:46:57.494Z and data/social-posted.json records real receipts for both eligible channels: LinkedIn https://www.linkedin.com/feed/update/urn%3Ali%3Ashare%3A7518231270632448000 and Nostr https://njump.me/nevent1qy28wumn8ghj7un9d3shjtnyv9kh2uewd9hszrthwden5te0dehhxtnvdakqqgzte6e0cqwzzj27uwwugx06lqeyjzmxnd7x0qqghfcazln2r3prlu7vdz0p. Do not regenerate or repost.) 2026-10-20 08:20 UTC pending mostro-0-20-health-and-payment-deferral (ECOSYSTEM fortnight 2026-10-06T08:00:00Z..2026-10-20T08:00:00Z; seven editions, translated directory updates for Mostro/Amber, complete 42-repository machine snapshot and inspected deterministic illustration prepared. LinkedIn intentionally skipped under platform/team-only policy; Nostr requires live verification and durable queue receipt. Scoped branch ecosystem/2026-10-20-mostro-health; CI/merge/deployment pending. Prior ecosystem and tutorial receipts preserved. No newsletter, subscriber, email or schedule action.) 2026-10-20 08:26 UTC pending mostro-0-20-health-and-payment-deferral (ECOSYSTEM PR #103; initial CI 39392866511: 361/363 unit tests passed, with two stale dataset-count expectations. Exact matched-project identities and source-credit inventory assertions replace those count assumptions; full revalidation pending. Concurrent own-platform PR #102 merged independently; its content and log entry preserved when bringing main into this branch. No bypass, unsupported attribution restoration or sender action.) 2026-10-20 08:47 UTC pending mostro-0-20-health-and-payment-deferral (ECOSYSTEM PR #103: hosted CI 39393503927 passed typecheck, unit tests, parity, social lint, build and rendered audit of 1635 pages/1720 images with zero failures on head 8d2d47424b34244f0a74747140c741da0d588ded. Main then advanced only via PR #104's append-only publication outcome; preserve it and revalidate the combined tree. Deployment/live-page verification and durable Nostr receipt remain pending. LinkedIn intentionally ineligible; no email or schedule change.) 2026-10-20 09:00 UTC pending mostro-0-20-health-and-payment-deferral (ECOSYSTEM PR #103: CI 39396015771 passed on c8cf95022e0678a6c7457ed73eec85460b953098. Concurrent main changes are solely another publication's social receipt and append-only completion record; retain both and resolve the log conflict by a non-forced forward merge. No article, directory, illustration, test or social-copy change. Revalidate the combined head; ecosystem deployment and Nostr delivery remain pending. Do not attribute another story's receipt to this issue.) 2026-10-20 09:29 UTC pending mostro-0-20-health-and-payment-deferral (ECOSYSTEM website deployed via PR #103, merge 2be0fd2bbb8b2c571310b3d96a86c0f172d1f980. Exact-head CI 39397602248 and production CI/deploy 39398827408 passed: 363 tests, parity, social lint, build, rendered SEO/preview audit of 1635 pages/1720 images with zero failures, verified artifact activation, live homepage/sitemap checks and IndexNow. All seven article URLs appear in the fresh public sitemap. Direct article-body/canonical/metadata and EN/ES directory rendering remain unverified: cloud browser gives generic Site Unavailable; public reader cannot open new articles/Spanish directory and returns an older English Mostro record, freshness unknown. This is an inspection blocker, not a proven outage. Nostr receipt absent in data/social-posted.json; leave pending for existing hosted queue, no blind retry. LinkedIn intentionally ineligible. No email, subscriber, credential or schedule action. Current checkpoint: https://github.com/nostr-wot/nostr-wot/pull/103#issuecomment-6287856420.) 2026-10-22 08:00 UTC published create-recovery-phrase-with-dice (GUIDE/EDUCATION recovery from the Nostr WoT team's own released extension 0.8.15 feature and public tutorial https://youtu.be/N0Kg5gZs5Ak. The exact YouTube page was publicly reachable and showed the title "Create Your Nostr Seed Phrase with Real Dice", channel Nostr WoT and duration 1:24. PR #111 merged the seven localized guide editions and five inspected screenshots as d37784c8c05b6921344b693167f4b94fff0f4482; CI/deploy run 39689739388 passed typecheck, 366 tests, parity, social lint, production build, rendered sitemap/metadata/JSON-LD/preview audit, healthy release activation and live sitemap verification. Its deployment log found all seven guide URLs in the production sitemap and submitted them to IndexNow. PR #112 linked the verified video, PR #113 added social copy, and PR #115 classified the team's substantive platform work for LinkedIn and added the exact video URL. Current-head CI/deploy run 39715164989 passed all required checks and production activation. Social workflow 39715184318 posted both eligible channels and durable data/social-posted.json receipts record LinkedIn https://www.linkedin.com/feed/update/urn%3Ali%3Ashare%3A7518880861300359168 and Nostr https://njump.me/nevent1qy28wumn8ghj7un9d3shjtnyv9kh2uewd9hszrthwden5te0dehhxtnvdakqqgpnltrl3sjmw7aa0h3t6cq5jhv00vd6mkscppg5c7z2aluvm82c2uq6cncl at 2026-10-22T03:48:12.044Z. Direct article inspection from the cloud browser returned the generic Site Unavailable edge page, so no browser-only body or canonical claim is made. The public guide URL is https://nostrwot.com/guides/create-recovery-phrase-with-dice. The older what-is-nostr reservation is also resolved by its existing two-channel ledger receipt and must not be retried. Do not regenerate or repost either entry.) 2026-10-24 07:59 UTC pending create-nostr-account-with-passkey (GUIDE/EDUCATION recovery from the Nostr WoT team's own public tutorial https://www.youtube.com/watch?v=q1RiU-VqM_k. The exact public YouTube page was verified on the official Nostr WoT channel with title "Create a Nostr Account with a Passkey", upload timestamp 2026-10-19T19:09:31-07:00 and duration 1:05. The matching seven-locale guide and registry entry already exist, but no social file or durable data/social-posted.json receipt existed. PR #119 adds source and deduplication evidence plus distinct LinkedIn and Nostr copy without calling the existing capability a new release. LinkedIn is eligible as team-update because this is the team's own substantive tutorial; Nostr is eligible. Already delivered dice, Nostr basics, Nostr event and site-permissions entries are preserved and not retried. Pending passkey recovery and protection video IDs remain null and are not claimed as public. Direct guide inspection returned the generic Site Unavailable edge page, so it is not treated as live-page evidence. Hosted CI, merge, deployment-state reconciliation and real per-channel receipts remain pending.) 2026-10-26 09:14 UTC pending nostr-wot-sdk-stabilizes-passkey-recovery-and-provider-signing (PRODUCT/PROJECT UPDATE lane. The prior create-nostr-account-with-passkey reservation is resolved by durable LinkedIn and Nostr receipts recorded at 2026-10-24T08:07:08.800Z and must not be retried. Own-work review found a newer substantive SDK release: npm registry metadata verifies @nostr-wot/identity 1.1.0 and nostr-wot-sdk 3.0.1 on the latest tag, both published 2026-10-23 from SDK merge 384023f947e7dcfe4d54f7862308cdf78040067c. The release moves tested passkey identity modes, encrypted recovery records, Nosskey backup import and provider signing from prerelease candidates to stable packages. Seven locale editions, one inspected SVG and distinct LinkedIn and Nostr copy prepared. LinkedIn is eligible as platform-update because this is a stable Nostr WoT developer-platform release. The article states that WebAuthn, consent, device testing and recovery durability remain host responsibilities, and that provisional kind 31778 is not an upstream reservation. Scoped PR, hosted CI, merge, deployment, live verification and durable channel receipts pending.) 2026-10-26 09:58 UTC published nostr-wot-sdk-stabilizes-passkey-recovery-and-provider-signing (PRODUCT/PROJECT UPDATE. PR #120 merged as a3e8aa444c730f6e69b4aa463c614da12f911452 after exact-head CI 40300125775 passed typecheck, 372 tests, cache parity, social lint, production build and the rendered sitemap, metadata, JSON-LD and preview-image audit. Production workflow 40301964778 then passed verification, immutable build upload, healthy activation, live homepage and refreshed sitemap checks, and IndexNow submission. The public English article is https://nostrwot.com/news/2026-10-26/nostr-wot-sdk-stabilizes-passkey-recovery-and-provider-signing, with all seven locale routes generated from the shared translation key. Direct cloud-browser inspection returned the generic Site Unavailable edge page, so it is not claimed as independent body or canonical evidence. The latest merged social ledger has no receipt for this slug. LinkedIn platform-update and Nostr delivery remain durably pending for the existing scheduled sender; no uncertain POST was made or retried, and no receipt was fabricated.) 2026-10-27 08:58 UTC completed mostro-0-20-health-and-payment-deferral (ECOSYSTEM receipt reconciliation on expected alternate Tuesday. Durable data/social-posted.json entry confirms Nostr delivery at 2026-10-20T15:49:18.294Z with njump receipt; no retry or dispatch. LinkedIn remains intentionally ineligible under the platform/team-only policy. English article is indexed and English Mostro directory shows v0.20.0/current evidence; direct dated-page and Spanish-route inspection remain blocked by public-reader/cloud-browser limitations, not treated as an outage. No new issue, directory edit, social copy, newsletter, subscriber, email or schedule action. Next eligible ecosystem slot: 2026-11-03.) 2026-10-28 09:04 UTC pending setting-up-wallet (GUIDE/EDUCATION recovery from the Nostr WoT team's own public tutorial https://www.youtube.com/watch?v=1WgclSqckIk. The exact public YouTube page was verified on the official Nostr WoT channel with title "How to Set Up a Lightning Wallet in Nostr WoT", upload timestamp 2026-10-01T05:08:04-07:00 and duration 1:33. The matching seven-locale published guide and registry entry already exist, but no social file or durable data/social-posted.json receipt existed. This PR adds source and deduplication evidence plus distinct LinkedIn and Nostr copy without calling the existing capability a new release. LinkedIn is eligible as team-update because this is the team's own substantive tutorial; Nostr is eligible. The prior SDK publication is resolved by durable two-channel receipts and is not retried. The newest French Nostr-basics video was evaluated and rejected as duplicate of the already delivered What Is Nostr guide. Direct guide inspection returned a generic Site Unavailable edge page and was not treated as deployed article evidence. Hosted CI, merge and real per-channel receipts remain pending.) 2026-10-28 09:12 UTC pending setting-up-wallet delivery (GUIDE/EDUCATION recovery PR #124 merged as 5b464b77a3fea2597945ce87661d4fcfb5f77474. Exact-head PR CI 40661700941 and post-merge main CI 40661927980 passed typecheck, unit tests, cache parity and social lint; build and deploy were correctly skipped because the scoped change contains only social copy, research evidence and this run log. The public video remains verified at https://www.youtube.com/watch?v=1WgclSqckIk, and the matching seven-locale guide already exists. data/social-posted.json has no setting-up-wallet receipt yet. LinkedIn team-update and Nostr are therefore durably pending the existing .github/workflows/social.yml sender, whose next configured scheduled window is 11:41 UTC; this connected GitHub capability exposes no workflow dispatch operation. No uncertain POST was attempted or retried, and no receipt was fabricated. Direct inspection of https://nostrwot.com/guides/setting-up-wallet returned the generic Site Unavailable edge page, so the live guide body, canonical and Open Graph output are not independently claimed from this browser.)