Skip to content

A standard for the site and public docs (WEB) - #228

Merged
McCal-Codes merged 6 commits into
mainfrom
site-standard
Oct 2, 2026
Merged

McCal-Codes merged 6 commits into
mainfrom
site-standard

Conversation

@McCal-Codes

Copy link
Copy Markdown
Owner

Every standard in docs/standards covers the app. The site, the README and the help pages had rules too, but they lived in folio-site's check script, a CI file and habit.

What is true now:

  • docs/standards/site.md adds the WEB standard: 27 numbered rules in the usual shape (rules, where Folio is today, ranked gaps), covering where facts come from (the release tag, never main or retyped), claims that must match PRIVACY.md and PERMISSIONS.md, voice, pictures, privacy and security, accessibility and performance limits, and the checks.
  • docs/adr/0010-site-standard.md records the decision, as the standards README asks when a standard adds MUSTs.
  • The standards README table and sources list the new standard.

Why now: the 1 Oct audit found the live site a release behind, a roadmap that would have listed unreleased work as shipped, a privacy claim about crash reports that PRIVACY.md contradicts, and a VirusTotal promise that 0.6.6, 0.6.7 and 0.6.7.3 did not keep. No rule said those had to be true.

Where it is honest about gaps: WEB-3 (claims match the documents) and WEB-7 (voice) are held by review until a check exists, and the gaps table ranks the seven things worth building. The numbers under "where Folio is today" are measurements from 1 and 2 Oct, from folio-site main.

Not done: this is a draft for McCal to edit. The rules about wording and what to hold to are McCal's call, and I have not run any of the proposed checks.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 7e40383979

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread docs/standards/site.md
Comment on lines +85 to +86
- **WEB-22 MUST** hold Largest Contentful Paint at or under 2.5 s and Cumulative Layout Shift at or under 0.1 on the
pages that matter, and accessibility at 95 or above, as measured by Lighthouse in CI. These limits fail the run.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Add INP to WEB-22's enforced budgets

The new source entry says WEB-22 defines limits for LCP, INP, and CLS, but this rule only constrains LCP and CLS. As written, a page with severely delayed interaction can still satisfy the standard and keep Lighthouse CI green, so either add an INP threshold here or stop claiming that WEB-22 covers all three metrics.

Useful? React with 👍 / 👎.

Comment thread docs/standards/site.md
Comment on lines +14 to +15
that would have listed unreleased work as shipped; a privacy claim ("two things leave the phone, one of them a crash
report") that `PRIVACY.md` contradicts, since Folio sends no crash reports; a promise of a VirusTotal link on every

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Preserve the disclosure for manually shared crash reports

This rationale is false when a user chooses Share Diagnostics or Share crash report: Diagnostics.reportIntent and CrashLog.shareIntent create ACTION_SEND intents containing the diagnostic or crash report, and PRIVACY.md explicitly says the user chooses where those reports go. The existing claim that data leaves only when the user shares a report is therefore consistent with the app and privacy document; treating it as contradicted risks removing an accurate disclosure.

Useful? React with 👍 / 👎.

Comment thread docs/standards/site.md
| 3 | Lighthouse over every page type, not six (WEB-22), and a test that a failing page really turns the run red | S |
| 4 | Screenshots for the timeline stops and the tweak pages, from Screenshot Mode (WEB-11, 13) | M |
| 5 | The release workflow attaches `signing-certificate.txt` every time, so the fallback in WEB-4 is never used | S |
| 6 | Confirm the `site.yml` dispatch fires on the next real release (WEB-26) | S |

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Track the missing dispatch-token failure as a gap

When FOLIO_SITE_TOKEN is absent, the reviewed .github/workflows/site.yml prints a notice and exits 0 without dispatching a rebuild. Merely confirming one token-backed release fires does not satisfy WEB-26 or prevent the exact silent-success regression described above; this gap needs to require changing that missing-token branch to fail.

Useful? React with 👍 / 👎.

@McCal-Codes
McCal-Codes merged commit 2b7feb8 into main Oct 2, 2026
3 checks passed
@McCal-Codes
McCal-Codes deleted the site-standard branch October 2, 2026 21:15
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.

1 participant