markdown · 3063 bytes Raw Blame History

Changelog

All notable changes to shithub are documented here. This project follows Keep a Changelog conventions and Semantic Versioning.

Pre-1.0 versioning: minor versions may break the API. The stability contract begins at v1.0.0; until then, expect changes between minor releases.

Unreleased

(Empty — first post-launch entries land here.)

0.1.0 — TBD (operator fills in cutover date)

The first public release of shithub. Pre-1.0: there is no backward-compatibility promise yet. Migrations are forward-only; schema may change between minor versions.

Initial public surface

  • Identity — signup, email verification, password reset, TOTP 2FA + recovery codes, SSH keys, scoped PATs, sessions with per-account epoch invalidation.
  • Repositories — create, fork, archive, transfer, soft-delete with grace, rename with redirects, visibility toggles, branch protection, default-branch swap, topics, README/license/ .gitignore templates.
  • Git — bare repos on disk; HTTPS smart-HTTP push/pull; pre/post-receive hook integration.
  • Code browsing — tree, blob (chroma syntax highlighting), raw, blame, commit history, individual commit views, branch/tag listings, compare views, file finder.
  • Issues + PRs — full CRUD; reviews; required-reviewer enforcement; status-check gates; three merge methods.
  • Social — stars, watches, forks, /explore, stargazer/ watcher lists.
  • Search — code, repo, user, issue.
  • Notifications — in-app inbox, email fan-out, one-click unsubscribe.
  • Orgs + teams — roles, invitations, one-level nesting, max-of-sources policy.
  • Webhooks — HMAC-signed delivery, exponential backoff, auto-disable, SSRF defense, redelivery UI.
  • Observability — structured logs, Prometheus metrics, optional OTel tracing, Sentry-protocol error reporting.
  • Operations — Ansible playbook, systemd units, Caddy edge, WireGuard mesh for monitoring, Postgres WAL archive + daily logical backups to Spaces, cross-region DR, restore drill.
  • Public landing page on / for anonymous viewers; signed-in viewers get a quick-link dashboard.
  • Lightweight status page at docs.<host>/status.html.
  • Cutover artifacts under deploy/cutover/.
  • Public docs site built with mdBook.
  • Operator runbooks for incidents, backups, restore, upgrade, rollback, rotate-secrets, rotate-keys, regenerate-akc, drain-workers, read-only-mode, day-one.
  • a11y tooling (pa11y + axe) and k6 load-test scenarios.
  • THIRD_PARTY_NOTICES.md with a CI-verified generator.

Known gaps at v0.1.0

  • SSH git transport (HTTPS only)
  • Actions / CI runner
  • Packages, Releases, Pages, Projects, Gists
  • GraphQL API (only a small REST surface today)
  • Activity feed UI

These are all on the post-MVP roadmap.

View source
1 # Changelog
2
3 All notable changes to shithub are documented here. This project
4 follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/)
5 conventions and [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
7 Pre-1.0 versioning: minor versions may break the API. The
8 stability contract begins at v1.0.0; until then, expect changes
9 between minor releases.
10
11 ## [Unreleased]
12
13 (Empty — first post-launch entries land here.)
14
15 ## [0.1.0] — TBD (operator fills in cutover date)
16
17 The first public release of shithub. Pre-1.0: there is no
18 backward-compatibility promise yet. Migrations are forward-only;
19 schema may change between minor versions.
20
21 ### Initial public surface
22
23 - **Identity** — signup, email verification, password reset, TOTP
24 2FA + recovery codes, SSH keys, scoped PATs, sessions with
25 per-account epoch invalidation.
26 - **Repositories** — create, fork, archive, transfer, soft-delete
27 with grace, rename with redirects, visibility toggles, branch
28 protection, default-branch swap, topics, README/license/
29 .gitignore templates.
30 - **Git** — bare repos on disk; HTTPS smart-HTTP push/pull;
31 pre/post-receive hook integration.
32 - **Code browsing** — tree, blob (chroma syntax highlighting),
33 raw, blame, commit history, individual commit views, branch/tag
34 listings, compare views, file finder.
35 - **Issues + PRs** — full CRUD; reviews; required-reviewer
36 enforcement; status-check gates; three merge methods.
37 - **Social** — stars, watches, forks, `/explore`, stargazer/
38 watcher lists.
39 - **Search** — code, repo, user, issue.
40 - **Notifications** — in-app inbox, email fan-out, one-click
41 unsubscribe.
42 - **Orgs + teams** — roles, invitations, one-level nesting,
43 max-of-sources policy.
44 - **Webhooks** — HMAC-signed delivery, exponential backoff,
45 auto-disable, SSRF defense, redelivery UI.
46 - **Observability** — structured logs, Prometheus metrics,
47 optional OTel tracing, Sentry-protocol error reporting.
48 - **Operations** — Ansible playbook, systemd units, Caddy edge,
49 WireGuard mesh for monitoring, Postgres WAL archive + daily
50 logical backups to Spaces, cross-region DR, restore drill.
51 - **Public landing page** on `/` for anonymous viewers; signed-in
52 viewers get a quick-link dashboard.
53 - **Lightweight status page** at `docs.<host>/status.html`.
54 - **Cutover artifacts** under `deploy/cutover/`.
55 - **Public docs site** built with mdBook.
56 - **Operator runbooks** for incidents, backups, restore, upgrade,
57 rollback, rotate-secrets, rotate-keys, regenerate-akc,
58 drain-workers, read-only-mode, day-one.
59 - **a11y tooling** (pa11y + axe) and **k6 load-test scenarios**.
60 - **THIRD_PARTY_NOTICES.md** with a CI-verified generator.
61
62 ### Known gaps at v0.1.0
63
64 - SSH git transport (HTTPS only)
65 - Actions / CI runner
66 - Packages, Releases, Pages, Projects, Gists
67 - GraphQL API (only a small REST surface today)
68 - Activity feed UI
69
70 These are all on the post-MVP roadmap.
71
72 [Unreleased]: https://shithub.sh/shithub/shithub/compare/v0.1.0...trunk
73 [0.1.0]: https://shithub.sh/shithub/shithub/releases/tag/v0.1.0