Skip to content

docs: point every developer-newsletter link at one subscribe page and drop Tech Sync - #2360

Merged
palango merged 2 commits into
mainfrom
palango/clean-up-mailing-lists
Oct 6, 2026
Merged

palango merged 2 commits into
mainfrom
palango/clean-up-mailing-lists

Conversation

@palango

@palango palango commented Oct 2, 2026 •

Copy link
Copy Markdown
Contributor

The docs sent readers to developer news under two labels, "Join the Newsletter" and "DevDesk mailing list", both pointing at a bare beehiiv embed, and the SDK release page listed a "cLabs' Tech Sync" mailing list with no link or signup. The embed is the same beehiiv publication as celo-devs.beehiiv.com, so this points every developer-newsletter link at its subscribe page under one name, the Celo Developers newsletter, with one audience line, and drops the Tech Sync line. The two governance voting pages now say who the Celo Signal list is for, matching the staking voting page.

The audience line, "Events, hackathons, and funding opportunities for builders on Celo", matches what the publication sends: its sitemap lists mostly hackathon, Proof of Ship and bounty issues. fund-your-project keeps its funding-specific lead-in.

The Celo Signal signup and calendar links on the three voting pages stay as they are. GigaHierz confirmed that in #1993 (comment), and named https://newsletter.celo.org/subscribe as the general-audience newsletter for pages that need one. None do today.

I confirmed the embed and celo-devs.beehiiv.com are one publication via https://embeds.beehiiv.com/api/embeds/eeadfef4-2f0c-45ce-801c-b920827d5cd2, and celo-devs.beehiiv.com/subscribe returns 200.

$ mint broken-links
success no broken links found

Closes #1993

@palango
palango requested review from a team as code owners October 2, 2026 09:45
@palango
palango requested review from GigaHierz, ezdac and karlb and removed request for a team October 2, 2026 09:45

@GigaHierz GigaHierz left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

head 2d7bef9 · gate matched headRefOid (no STALE); PR is 1 ahead / 7 behind origin/main, merge-tree clean; mint broken-links --check-redirects pass, check-orphans.sh pass, 5 URLs 200 with 0 redirects, mint dev rendered /home/celo (desktop) and /build-on-celo/index (412x915) with 0 console errors

Verdict: REQUEST-CHANGES

Reviewed on the head SHA, against current main (merge base b7cb920; main has 7 newer commits, none touch the changed hunks).

Findings (severity-ordered)

  1. LOW-MEDIUM · docs.json:4538 (also contribute-to-celo/index.mdx:23, home/celo.mdx:141-143) · The PR body says every link now uses "one name", but the navbar/footer link is still labelled "Developer Newsletter", and the pages describe the audience in different words.

    • Failure scenario: a reader sees "Developer Newsletter" in the footer and "Celo Developers newsletter" in body text and cannot tell they are one list, which is the confusion #1993 set out to remove. The audience line is "Events, hackathons, and funding opportunities for builders on Celo" on home/celo.mdx, "developer programs, grants, and builder updates" on contribute-to-celo/index.mdx and builders.mdx, and "latest funding opportunities" on fund-your-project.mdx. Whichever is true, the others are wrong.
    • Fix shape: set the docs.json label to "Celo Developers newsletter". Pick one audience sentence and use it in the card and both contribute pages; fund-your-project can keep its funding-specific lead-in.
    • Note: I could not verify that the newsletter carries "hackathons"; the maintainer decision approved the newsletter, not that sentence. Confirm against a recent issue before it ships.
  2. LOW · PR body, Closes #1993 · #1993 asks to (a) clean up lists that are not updated and (b) "clarify which audience is targeted by the active ones". (a) is done for DevDesk and Tech Sync. (b) is done only for the developer newsletter. The two governance pages (home/protocol/governance/voting-in-governance.mdx:178, home/protocol/governance/voting-in-governance-using-mondo.mdx:34) say "Celo Signal mailing list" with no audience, and the PR leaves them untouched. home/protocol/staking/voting.mdx:19 does state it. The issue has no checkbox list.

    • Failure scenario: the issue auto-closes and the Signal-audience half of the ask is lost.
    • Fix shape: either add a half-sentence audience to the two governance bullets (signup and calendar links stay as they are, so the maintainer decision is honoured), or change Closes #1993 to Refs #1993 and say the Signal audience line remains.

Verified good

  • Decisions honoured. A repo-wide grep (mdx, json, md, js, snippets, docs.json banner/footer/navbar) on the PR head finds no remaining devdesk, dev desk, tech sync, techsync, or embeds.beehiiv.com. Every beehiiv link is https://celo-devs.beehiiv.com/subscribe: docs.json, home/celo.mdx, build-on-celo/index.mdx, build-on-celo/fund-your-project.mdx, contribute-to-celo/index.mdx, contribute-to-celo/builders.mdx.
  • All three voting pages keep the Celo Signal signup (share.hsforms.com/1Qrhush1vSA2WIamd_yL4ow53n4j) and the Signal public calendar link; the diff does not touch them.
  • https://newsletter.celo.org/subscribe is not used anywhere. That is correct: no page needs a general-audience newsletter that Signal does not cover, and home/celo.mdx's section is "Join the Celo Builder Ecosystem", so the developer newsletter fits.
  • Tech Sync is fully removed (one line in contribute-to-celo/release-process/base-cli-contractkit-dappkit-utils.mdx; rendered page has 0 matches). No page was deleted or moved, so no redirect, nav or inbound-link work is needed.
  • URLs via curl -sIL with a browser UA: celo-devs.beehiiv.com/subscribe 200 (title "Subscribe | Celo Developers"), newsletter.celo.org/subscribe 200, Signal form 200, x.com/CeloDevs 200, x.com/cLabs 200, all 0 redirects. The removed embed URL also returned 200.
  • mint broken-links --check-redirects passes; bash scripts/check-orphans.sh finds no orphans; gh pr checks: broken-links, GitGuardian, StepSecurity pass, Mintlify deployment skipped.
  • Rendering: /home/celo (desktop) and /build-on-celo/index (412x915) show the new card text and link target, 0 console errors (1 pre-existing warning). /build-on-celo/fund-your-project returned a 500 in the browser from an ENOENT on mint's generated src/_props/generatedDocsNav.json (dev-server artifact; curl got 200 with the correct subscribe link, and the page change is one link). The shared browser also jumped to a different local port mid-run, so I did not retry it there. Server on port 3457 stopped.
  • Wording is not promotional: the card text and label state the audience with no superlatives and no comparison to another chain.

Not verified

  • The PR body's claim that the embed and celo-devs publication are the same via embeds.beehiiv.com/api/embeds/...: that URL returns a Cloudflare challenge to curl. The subscribe page title reads "Celo Developers" and the maintainers have since confirmed in the issue thread that the two are the same publication, so this is moot.

What the PR got right

  • Minimal one-concern diff (4 files, +5/-5) matching the decision thread: DevDesk removed rather than renamed, Signal left alone, no speculative general-audience link added.
  • Reuses the existing celo-devs.beehiiv.com/subscribe URL, so the navbar/footer and the two contribute pages needed no churn.
  • Pastes the mint broken-links output as AGENTS.md section 9 requires. This is one round of small fixes, not a rethink.

Merge-order hazards

  • #2364, #2346 and #2344 all edit docs.json. This PR does not, unless finding 1 is fixed (the label is at about line 4538, in the navbar/footer block). git merge-tree of the head against current main reports no conflicts. If finding 1 touches docs.json, rebase after those three land. No open PR touches build-on-celo/fund-your-project.mdx, build-on-celo/index.mdx, home/celo.mdx, the release-process page, or the two contribute pages.

@palango
palango force-pushed the palango/clean-up-mailing-lists branch from 2d7bef9 to d7ded45 Compare October 2, 2026 12:32
@palango

palango commented Oct 2, 2026

Copy link
Copy Markdown
Contributor Author

Both are in d7ded45, rebased onto current main.

  1. The navbar/footer label in docs.json now reads "Celo Developers newsletter". To check what the newsletter covers I used the publication sitemap, because /archive redirects to /subscribe. Recent issues are almost all hackathons (Agents on Open Rails, Agents at Work, Agentic Payments & DeFAI, Onchain Agents), Proof of Ship prize rounds, bounties and office hours, and grants come up once this year. So I kept the home/celo.mdx sentence, "Events, hackathons, and funding opportunities for builders on Celo", and used it on contribute-to-celo/index.mdx and contribute-to-celo/builders.mdx as well. fund-your-project keeps its funding lead-in.
  2. Both governance bullets now say the Signal list is for Celo community news, including validation, node operation and governance, which is the wording from staking/voting.mdx. The signup and calendar links are unchanged, and the PR still closes Clean up mailing lists #1993.

mint broken-links and scripts/check-orphans.sh pass.

GigaHierz
GigaHierz previously approved these changes Oct 6, 2026

@GigaHierz GigaHierz left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

head d7ded45 · API headRefOid == refs/pull/2360/head (matched after re-fetch); 2 commits on merge-base 92b8cc6, 4 behind origin/main (a12466b), git merge-tree clean (the home/ to learn/ renames are followed automatically); on the merge into main: mint broken-links --check-redirects "no broken links found", check-orphans "No orphan pages found"; CI "Check for broken links" pass; mint dev on 3423: 8 changed pages at 1280 and 412x915, zero console errors, no horizontal overflow; 7 URLs curled

Verdict: APPROVE

Status of earlier findings

  1. LOW-MEDIUM, footer label still "Developer Newsletter" and audience line differs across pages: FIXED. docs.json:4709 now has "label": "Celo Developers newsletter" (hunk at docs.json:4706). The audience line "Events, hackathons, and funding opportunities for builders on Celo" is now identical on home/celo.mdx (card, now learn/celo.mdx on main), contribute-to-celo/index.mdx:24 and contribute-to-celo/builders.mdx:22. build-on-celo/fund-your-project.mdx:30 keeps its funding-specific lead-in, as agreed, and build-on-celo/index.mdx:76 is a channel list with no audience line. The "hackathons" claim, which I could not check before, now checks out: the publication's own sitemap (celo-devs.beehiiv.com/sitemap.xml) lists mostly hackathon, Proof of Ship prize and bounty issues, plus office hours and a grants issue, and the subscribe page title is "Subscribe | Celo Developers".
  2. LOW, Closes #1993 not justified (Celo Signal bullets state no audience): FIXED. Both governance bullets now read "... Celo Signal mailing list ... for Celo community news, including validation, node operation and governance" (voting-in-governance.mdx:178, voting-in-governance-using-mondo.mdx:34), the same wording as the existing staking/voting.mdx:19. The issue has no checkbox list; its two asks are (a) remove lists that are not updated (DevDesk and the Tech Sync line are gone) and (b) say which audience the active ones target (developer newsletter and Signal now both do). Closes is therefore defensible. Caveat: the wording is topic-led and was copied from the repo's own staking page; the HubSpot signup form is JS-rendered, so I could not confirm the text against it.

Decisions re-checked on the head, repo-wide (git grep over mdx, json, md, js, snippets, docs.json banner, footer and navbar, excluding submodules): zero matches for devdesk, dev desk, tech sync, techsync, embeds.beehiiv.com, Developer Newsletter. The only newsletter links are https://celo-devs.beehiiv.com/subscribe (docs.json footer, learn/celo, build-on-celo/index, fund-your-project, contribute-to-celo/index, builders). https://newsletter.celo.org/subscribe is not used, which is right: no changed page needs a general-audience newsletter that Signal does not cover. Celo Signal signup and the Celo Signal calendar remain on staking/voting.mdx and both governance pages.

New findings

None.

Verified good

  • URLs, curl -sIL with a browser user agent, final URL and redirect count: celo-devs.beehiiv.com/subscribe 200 / 0; newsletter.celo.org/subscribe 200 / 0; Signal form share.hsforms.com/1Qrhush1vSA2WIamd_yL4ow53n4j 200 / 0; x.com/CeloDevs 200 / 0; x.com/cLabs 200 / 0; forum.celo.org 200 / 0; Signal calendar link 200 with one canonicalising redirect (drops /u/0), unchanged by this PR.
  • Rendered output: each of the eight changed pages shows only celo-devs.beehiiv.com/subscribe labelled "Celo Developers newsletter" (plus the card on learn/celo), and the two governance pages show the Signal link next to it; no page body text contains Tech Sync or DevDesk.
  • Release-process page: the Tech Sync line was an unlinked list item; removing it leaves the other two channels (@clabs, Celo Forum) intact.
  • No page deleted or moved, so no redirect or nav work is owed; the docs.json change is a single label string.
  • AGENTS.md: no frontmatter changes; no promotional wording or chain comparison in the new text; links are full external URLs; no emoji added (the pre-existing lightbulb in learn/celo.mdx is untouched and belongs to #2364's scope).
  • PR body: "the embed is the same publication as celo-devs" is consistent with the subscribe page and the maintainer decision; the broken-links output block is the AGENTS.md section 9 requirement; the body's description of what changed (labels, links, Tech Sync removal, Signal clause) matches the diff.

What the PR got right

All maintainer decisions are honoured literally: DevDesk deleted rather than renamed, the Celo Developers newsletter as the single developer link, Signal untouched apart from an audience clause, and no speculative general-audience link added. Both earlier findings were fixed in one commit with the author checking the publication itself for the audience wording, and the diff stays one concern (9 files, +9/-10).

Non-blocking observation, not a finding: the learn/celo.mdx card title is "Celo Developers Newsletter" (capital N) while every other occurrence says "newsletter"; the other cards on that page are title case, so it follows the page's convention.

Merge-order hazards

  • No conflict with current main (merge-tree clean; the learn/ rename carries over).
  • #2368 (Build tab merge) moves build-on-celo/index.mdx and build-on-celo/fund-your-project.mdx to build/ and edits docs.json heavily; the two one-line changes here are content-only, so whichever lands second needs a rename-aware rebase. If #2368 merges first, this PR must be rebased so the edits land on build/index.mdx and build/fund-your-project.mdx; the docs.json footer hunk is far from the navigation block it rewrites.
  • #2364, #2346, #2369, #2372 also edit docs.json in other regions; git merge-tree against main shows no conflict for this PR's single footer-label line, but each of them should be rebased over it without issue.

@palango
palango enabled auto-merge (squash) October 6, 2026 12:29
@palango
palango force-pushed the palango/clean-up-mailing-lists branch from d7ded45 to 18d1cd2 Compare October 6, 2026 12:32
@palango

palango commented Oct 6, 2026

Copy link
Copy Markdown
Contributor Author

@GigaHierz I had to rebase this onto main: GitHub saw a conflict because its test merge did not follow #2367's home/ to learn/ renames. The content is unchanged, the three edits now sit on learn/celo.mdx and the two learn/protocol/governance/ pages. The push dismissed your approval, so it needs a re-approve.

@palango
palango requested a review from GigaHierz October 6, 2026 12:40
GigaHierz
GigaHierz previously approved these changes Oct 6, 2026

@GigaHierz GigaHierz left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

head 18d1cd2 · API headRefOid == refs/pull/2360/head after re-fetch; 2 commits on merge-base a12466b, origin/main 7b8f97c; git merge-tree --write-tree origin/main refs/remotes/pr/2360 is CLEAN (git follows the #2368 renames); trial merge: mint broken-links --check-redirects "no broken links found", check-orphans.sh "No orphan pages found"; gh pr checks: Check for broken links pass; 8 URLs curled; beehiiv publication ids compared

Verdict: APPROVE

Layout-move conflict check

No content conflict. Trial merge into 7b8f97c auto-merges cleanly: the PR's edits to build-on-celo/index.mdx and build-on-celo/fund-your-project.mdx land on build/index.mdx:76 and build/fund-your-project.mdx:30, and docs.json merges (one label string in the footer block). The learn/ paths already match. Rebase work for the author: none required. If GitHub still reports a conflict (its test merge did not follow the learn/ renames last time), a plain git rebase origin/main resolves it automatically; no edit by hand. The PR diff itself still names the old build-on-celo/ paths until rebased, which is cosmetic.

Status of earlier findings

(Approval at d7ded45 was dismissed by the push, so everything is re-verified at 18d1cd2.)

  1. LOW-MEDIUM, footer label and audience line differ across pages: FIXED. docs.json footer label reads "Celo Developers newsletter". The audience sentence "Events, hackathons, and funding opportunities for builders on Celo" is identical on learn/celo.mdx:142 (card), contribute-to-celo/index.mdx:24 and contribute-to-celo/builders.mdx:22; build/fund-your-project.mdx:30 keeps its funding lead-in; build/index.mdx:76 is a channel list. Source check of the claim: the beehiiv embed config at embeds.beehiiv.com/api/embeds/eeadfef4-... returns the literal description "Stay up to date with the latest events, hackathons, and funding opportunities for builders on Celo." and the sitemap of celo-devs.beehiiv.com lists hackathon, Proof of Ship, bounty and office-hours issues, so the sentence matches what the publication says about itself.
  2. LOW, Closes #1993 not justified: FIXED. The three Signal bullets now state the audience (learn/protocol/governance/voting-in-governance.mdx:178, voting-in-governance-using-mondo.mdx:34 with the same wording as learn/protocol/staking/voting.mdx:19). #1993 asks (a) to remove lists that are not updated and (b) to say which audience each active list serves. (a) DevDesk and the Tech Sync line are gone everywhere; (b) developer newsletter and Signal both state it. Closes #1993 is justified; no other list remains in the repo.

New findings

None.

Decisions that must hold, checked repo-wide on the trial merge

Grep over every mdx, json, md, js and snippet file (excluding node_modules, .git, submodules) for beehiiv, devdesk, dev desk, newsletter, celo signal, subscribe, tech sync, techsync, mailing list, hsforms:

  • Celo Developers newsletter https://celo-devs.beehiiv.com/subscribe is the only developer newsletter link, in exactly: docs.json footer (label "Celo Developers newsletter"), learn/celo.mdx:141, build/index.mdx:76, build/fund-your-project.mdx:30, contribute-to-celo/index.mdx:24, contribute-to-celo/builders.mdx:22.
  • DevDesk, Dev Desk, Tech Sync, embeds.beehiiv.com and "Developer Newsletter" have zero matches. The docs.json banner carries no newsletter link. Snippets contain none.
  • https://newsletter.celo.org/subscribe is not used anywhere. Correct: every changed page is builder-facing (learn/celo.mdx card sits under "Join the Celo Builder Ecosystem"; the contribute pages list it under "As a Builder"), and no page needs a general-audience newsletter that Signal does not cover.
  • Celo Signal signup https://share.hsforms.com/1Qrhush1vSA2WIamd_yL4ow53n4j and the Signal calendar remain on learn/protocol/staking/voting.mdx:19,21, learn/protocol/governance/voting-in-governance.mdx:178-179 and learn/protocol/governance/voting-in-governance-using-mondo.mdx:34-35. The PR only appends an audience clause to the two governance bullets.
  • The three /celo-signal redirects in docs.json (lines ~2859, 2915, 2987) point to /contribute-to-celo, unchanged and unaffected.

Verified good

  • URLs (curl -L, browser user agent; status, redirects): celo-devs.beehiiv.com/subscribe 200, 0 (title "Subscribe | Celo Developers"); newsletter.celo.org/subscribe 200, 0; Signal form 200, 0; Signal calendar 200, 1 redirect (drops /u/0, unchanged by this PR); x.com/CeloDevs and x.com/cLabs 200, 0 (x.com returns 200 for any handle, so this is weak evidence); forum.celo.org 200, 0; the removed embed URL still returns 200.
  • Same publication: the embed's publication_id fa63596f-ae7f-48f3-ac40-400698c43828 ("Celo DevDesk") occurs 31 times in the HTML of celo-devs.beehiiv.com/subscribe, so the body's claim that the embed and the subscribe page are one publication is true, and swapping the link loses no subscribers.
  • Tech Sync removal: it was an unlinked list item in contribute-to-celo/release-process/base-cli-contractkit-dappkit-utils.mdx; the other two channels (@clabs, Celo Forum) are intact.
  • No page moved or deleted, so no redirect or navigation work is owed. The docs.json change is one label string.
  • AGENTS.md: no frontmatter touched; no promotional wording or comparison; external links are full URLs; no emoji added.
  • Render smoke test on the trial merge (port 3522, 1280 and 412 px): the nine changed and related pages load, zero console errors, no horizontal overflow. Content claims above come from the merged tree and the source files, not the render.
  • PR body matches the diff: labels, links, Tech Sync removal, Signal clause; the mint broken-links block is present as AGENTS.md section 9 requires.

What the PR got right

All maintainer decisions are honoured literally: DevDesk deleted rather than renamed, one developer newsletter link under one name, Signal and its calendar left alone apart from an audience clause, and no speculative general-audience link. Both earlier findings were fixed with the author checking the publication itself for the audience wording. One concern, 9 files, +9/-10.

Non-blocking observation, not a finding: the learn/celo.mdx card title is "Celo Developers Newsletter" (capital N) while every other occurrence reads "newsletter"; the neighbouring cards on that page are title case, so it follows the page.

Merge-order hazards

  • Open PRs #2372, #2369 and #2346 edit docs.json in other regions; this PR's single footer label line does not overlap them. No other open PR touches any of the nine files.
  • Because the push dismissed the approval, a fresh approval is needed after any further commit, including a rebase push.

… drop Tech Sync

The DevDesk embed and celo-devs.beehiiv.com are the same beehiiv
publication; use the subscribe page and one name everywhere. Remove the
cLabs Tech Sync mailing list, which has no link or signup.

Refs #1993
@GigaHierz
GigaHierz force-pushed the palango/clean-up-mailing-lists branch from 18d1cd2 to bbc15bf Compare October 6, 2026 20:53
GigaHierz
GigaHierz previously approved these changes Oct 6, 2026

@GigaHierz GigaHierz left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-approving after a rebase onto the new build/ layout (bbc15bf). The content is the head I approved (18d1cd2): the same nine files change, and the only difference is the page paths (build-on-celo/ pages are now under build/). mint broken-links --check-redirects and the orphan check pass on the rebased branch.

@GigaHierz GigaHierz left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-approving after a rebase onto the new build/ layout (bbc15bf). The content is the head I approved (18d1cd2): the same nine files change, and the only difference is the page paths (build-on-celo/ pages are now under build/). mint broken-links --check-redirects and the orphan check pass on the rebased branch.

@palango
palango merged commit 9304d3e into main Oct 6, 2026
5 checks passed
@palango
palango deleted the palango/clean-up-mailing-lists branch October 6, 2026 20:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Clean up mailing lists

2 participants