feat(content): launch documentation, About page, and copy corrections #131
Inga granskare
Etiketter
Inga etiketter
area/backups
area/ci
area/control-panel
area/identity
area/infra
area/observability
area/payments
area/security
area/storage
area/web
blocked
needs-info
needs-triage
ready-for-implementation
type
bug
type
chore
type
docs
type
epic
type
feature
type
task
wontfix
Ingen milstolpe
Inget projekt
Inga tilldelade
1 deltagare
Notiser
Förfallodatum
Inget förfallodatum satt.
Beroenden
Inga beroenden satta
Referens
bitborg/bitborg-web!131
Läser in…
Hänvisa till i nytt ärende
Ingen beskrivning angiven.
Ta bort grenen "feat/launch-content"
Borttagning av en gren är permanent. Även om den borttagna grenen kan fortsätta existera en kort tid innan den faktiskt tas bort, kan det INTE ångras i de flesta fall. Vill du fortsätta?
Content and copy work ahead of the public announcement. Four commits, each reviewable on its own.
Merge order matters: #130 (the false-DPA fix) first — it touches some of the same files and is
the one that must not wait.
1. Documentation and FAQ for Actions and accounts
The knowledge base was one guide (Renovate) and ten FAQ items about country eligibility and Renovate.
Nothing explained CI or how accounts work — the two things a visitor evaluating the service asks
first. Adds two guides and eleven FAQ items, Swedish-first with English twins.
runs-on: ci, the single-use VM per job and what it enables (buildingimages with the machine's own tooling, no docker socket to mount), what each account type gets, and
the real limits — four concurrent jobs, one hour per job, 30-day log retention, no crypto-mining.
recommendation, the three account types, and how to export or delete.
Swedish domain terms come from Forgejo's own
sv-SElocale rather than being invented: körare forrunner, arbetsflöde for workflow, and Actions kept in English, which is how the application
renders it.
2. About page, and the footer
Mission-led About page: the four principles in priority order, the openness claim with its honest
limits, a pointer to the public decision record, and the operator named.
The footer drops the copyright line and the "Created by" byline. The Principle-1 tagline stays — it is
a governed fixed phrase and remains byte-identical to its two sibling surfaces.
footer.builtOnisrenamed
footer.sovereigntynow that it carries only the tagline, and the deadfooter.rightskey isremoved.
3. Launch-blocking copy errors
Bitborg's own code, and
ui.tsalready said so correctly on the same site.paid subscriptions are launched before then" — backwards, since launching paid sooner would end the
trial. Now "at least until", matching the sign-up page's floor framing. The control panel asserted a
flat "Ends 31 August 2026", contradicting both; aligned.
TRIAL_TERMS_VERSIONbumped alongside, asits comment requires, so stored consent records point at what was actually shown.
to any external service; the neighbouring answer said Renovate fetches release notes from
github.com. The latter is correct — version checking necessarily reveals which packages you use — so
the privacy answer now separates the two: code never leaves Bitborg, while version and changelog
lookups do reach public registries and expose package names, with no token of ours attached.
The strings existed and simply were not passed to
LegalLayout./.well-known/security.txton a service with a dedicated security page. Added per RFC 9116./trial-termsis now linked from the footer. Its only inbound link was the sign-up checkbox, for adocument users tick a box to accept.
4. Organisations are a paid add-on
Follows the infrastructure change in bitborg-infra#296, where no tier grants organisation creation
any more. The copy claimed otherwise in three places, including trial terms §1 promising "the ability
to create organisations" — a term users accept by ticking a box, which could not be withdrawn silently.
The Terms now describe organisations as an add-on, keeping the impersonation and reclamation rules
that govern any organisation which exists. The trial is once again described as matching a paid
account, because it does: neither includes organisations, so singling out the trial would have been a
fresh inaccuracy.
Checks
pnpm check0 errors,mdlint0 issues, eslint/stylelint clean, and the content-style languagedetector clean across all 33 changed files.
Known gap, not fixed here
/docs/<slug>and any future/news/<slug>are absent from the sitemap —@astrojs/sitemapcannot enumerate an SSR dynamic route, which I confirmed against a built
sitemap-0.xml(
/docs/renovateis missing today). So the two new guides are not discoverable via the sitemap. Worthfixing with
customPagesgenerated from the content directories, but it is a separate change.Five factual problems found while reviewing the site ahead of a public announcement. **The Terms misstated Forgejo's licence** as AGPL-3.0. Forgejo is GPL-3.0-or-later; AGPL-3.0 is Gitborg's own code, and ui.ts already said so correctly on the same site. An audience evaluating a Forgejo host notices exactly this. **The trial terms said the opposite of what was meant.** Section 2 read "The trial period will continue until 31 August 2026 *if* paid subscriptions are launched before then" — backwards, since launching paid sooner would end the trial, not extend it. The sign-up page states the intended meaning as a floor ("tidigast"), so this now says "at least until", in both languages. The control panel asserted a flat "Ends 31 August 2026", contradicting both; it now uses the same floor framing. TRIAL_TERMS_VERSION is bumped alongside the text, as its comment requires — otherwise stored consent records would point at a version that no longer matches what was shown. **Two FAQ answers disproved each other.** One said nothing about your code or dependencies is sent to any external service; the neighbouring changelog answer said Renovate fetches release notes from github.com. The changelog answer is the accurate one: checking for newer versions necessarily reveals which packages a project uses. The privacy answer now distinguishes the two — code never leaves Gitborg, while version and changelog lookups do reach public registries and expose package names, with no token of ours attached. **Three legal pages shipped no meta description**, so social cards fell back to the site tagline. The strings already existed and simply were not passed to LegalLayout; wired up for privacy, terms and trial-terms in both locales. **No /.well-known/security.txt** on a service with a dedicated security page. Added per RFC 9116, pointing at /security as the policy. Also links /trial-terms from the footer. It is a document users tick a box to accept, and its only inbound link was that checkbox.d42dd5b9f2af35c0616f