thunderbird / thunderbird/support-tools

Custom OAuth split: finish the four articles and publish

Open
#5 0 comments 0 reactions 1 assignee View on GitHub

@rtanglao is already working on this.

Since Sep 3, 2026.

Dominant language
TypeScript
Stars
0
Forks
0
PR merge metrics
No merged PRs in 30d

Description

Tracking what is left on the four-way split of the custom OAuth article, so it does not live only in docs/DECISIONS.md. Sources are committed as samples/custom-oauth-for-*.wiki and all four lint clean; three of the four Docs round-trip to their .wiki byte-for-byte.

Article Doc Source
Custom OAuth for Thunderbird (parent) Doc samples/custom-oauth-for-thunderbird.wiki
Custom OAuth for end users Doc samples/custom-oauth-for-end-users.wiki
Custom OAuth for administrators Doc samples/custom-oauth-for-administrators.wiki
Custom OAuth for advanced users Doc samples/custom-oauth-for-advanced-users.wiki

Screenshots

  • Take the screenshots. There is not a single [[Image:…]] token in any of the four articles — every image is new work.
  • administrators: the extension indicator (<!-- TODO: Add screenshot of the indicator -->)
  • administrators: link to the Thunderbird Enterprise Policy documentation for extension deployment (<!-- TODO: … -->)
  • advanced-users: <!-- TODO: Add POP3 when 156 is releaased --> — revisit when 156 ships
  • Upload the keepers to the SUMO gallery by hand, then name the [[Image:…]] tokens after them

Prose and markup left for you

Mechanical markup defects were fixed in both the .wiki files and the Docs. These were deliberately left alone because they are your text or a UI fact I would be guessing at:

  • advanced-users: "IHere's how to customize OAuth for␣␣your IMAP account" — stray I, double space
  • parent: "Yahoo and**,** AOL" — stray comma
  • administrators: Rename the file extension from ".zip" to ".xpi. — missing closing quote (pre-dates the review)
  • administrators: === Example manifest.json: === — trailing colon in a heading
  • advanced-users: check ✓ '''Use custom OAuth2''' settings — the bold probably wants to cover the whole checkbox label, but that depends on what the UI actually says

Rendering to check before submitting

  • end-users and advanced-users each put a {note} callout inside a numbered list item. Nothing in the SUMO corpus does that, and how Kitsune renders a block-level {note} mid-list has not been verified — look at the preview.

Review threads to close out

Three unresolved threads on the end-users Doc:

  • "please proofread @toby@thunderbird.net" — on the service-URL step
  • Toby: whether the IMAP instructions belong in end-users at all, given they duplicate the advanced-users article (may already be settled by moving that content)
  • "once Thunderbird launches Firefox, Account Hub won't let you do manual configuration until it is done its OAuth password dialog"

And one that looks like it did not travel:

  • A resolved thread on end-users says the text should read "If '''Use system web browser''' is checked". That sentence now lives in advanced-users and still reads "is not checked". Resolving a comment on one Doc does not carry the fix to another — confirm which is correct.

Before publishing

  • Decide whether one of the four replaces an existing article. Settled: the parent takes over the existing tb-custom-oauth article, the three children are new.
    npm run dev -- publish samples/custom-oauth-for-thunderbird.wiki --slug tb-custom-oauth
    npm run dev -- publish samples/custom-oauth-for-end-users.wiki --new
    npm run dev -- publish samples/custom-oauth-for-administrators.wiki --new
    npm run dev -- publish samples/custom-oauth-for-advanced-users.wiki --new
    
  • Rename the tb-custom-oauth article's title to exactly Custom OAuth for Thunderbird if it is not already — that is the text all three children use to link back up, and Kitsune resolves [[…]] by title (the slug stays tb-custom-oauth, which is fine).
  • Confirm an article titled exactly OAuth2 for Thunderbird exists — the parent's first line links to it and it is not one of the four.
  • advanced-users only: if you re-run to-markup on its Doc, the four #* sub-markers come back as ## and the D23 reminder reappears. A Doc cannot represent a mixed marker (O6), so restore them in the .wiki and delete the reminder — the committed .wiki already has this done.
  • Move the four Docs from My Drive into the shared-drive folder. The tool cannot do it (O7) — it is a manual drag in the Drive UI.
  • npm run dev -- publish … for each, then paste and submit. All four are live on SUMO as of 2026-09-03.

Now live — next steps

  • Paste the published source back into the repo. Anything fixed in SUMO's editor is invisible to both the .wiki files and the Docs, and nothing syncs it back (the read API returns rendered HTML, not source — D3). From each article's edit view, select-all in the Content field:
    pbpaste > samples/custom-oauth-for-thunderbird.wiki     # repeat per article
    sumo-lint samples/custom-oauth-for-*.wiki
    git commit -am "Capture the published source for the four custom OAuth articles"
    
    Until this is done the committed .wiki files are drafts, not the truth, and the next edit would start from the wrong text.
  • Verify the cross-links now resolve on the live pages — all four link to each other in a cycle, plus [[OAuth2 for Thunderbird]] from the parent. They were necessarily broken until the last article existed.
  • Confirm the parent at tb-custom-oauth is titled exactly Custom OAuth for Thunderbird, or the children's back-links will not resolve.
  • Now verifiable: how Kitsune renders the {note} callout that sits inside a numbered list item in end-users and advanced-users. This could not be checked before publishing; look at the live pages.
  • Retire the four Docs — SUMO is the source of truth now. Trash them, but keep the end-users Doc if its 7 comment threads are worth preserving as the review record (and the parent/advanced-users ones each have a resolved thread).
  • Confirm no stale pre-split custom-OAuth article is still published anywhere (samples/custom-oauth-configuration.wiki is the historical copy).

Background: D26/D26a (the outbound lint), D27/D27a (sumo-linter), D23/O6 (#*), O7 (Drive placement) in docs/DECISIONS.md.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.