feat: scaffold the static offline app, governance, and CI gate #61

Merged
manlycucumber merged 1 commit from feat/core-scaffold into develop 2026-07-06 17:42:11 +00:00
manlycucumber commented 2026-07-06 17:41:12 +00:00 (Migrated from github.com)

What & why

Establishes the v0.1.0 Core foundations — the offline invariant made mechanical, and the tracking/CI scaffolding the rest of the roadmap rides on.

  • SvelteKit + adapter-static (strict) — every route prerendered; a non-prerenderable route fails the build.
  • Toolchain: pnpm, TypeScript strict, ESLint (flat) + Prettier, Vitest. .gitattributes pins LF.
  • Offline invariant: scripts/check-external-urls.mjs greps the built output and fails on any external URL.
  • Single required ci check: type/a11y check → lint → build → external-URL guard → unit tests → PR-title lint.
  • release-please on develop; Conventional Commits with a custom content: type.
  • Governance: README, CONTRIBUTING (Full workflow tier), ROADMAP (11 versions), CREDITS, CODEOWNERS (doctrine paths → owner), issue/PR templates.
  • scripts/serve-static.mjs: a zero-dep static server standing in for the production nginx container (offline verification).

Verified locally: pnpm check (0/0), pnpm lint, pnpm build, pnpm guard:external, pnpm test:unit all green.

First of two PRs for Core; the content module, local-first data layer, and vendored calendar follow.

## What & why Establishes the **v0.1.0 Core** foundations — the offline invariant made mechanical, and the tracking/CI scaffolding the rest of the roadmap rides on. - **SvelteKit + `adapter-static` (strict)** — every route prerendered; a non-prerenderable route fails the build. - **Toolchain**: pnpm, TypeScript strict, ESLint (flat) + Prettier, Vitest. `.gitattributes` pins LF. - **Offline invariant**: `scripts/check-external-urls.mjs` greps the built output and fails on any external URL. - **Single required `ci` check**: type/a11y check → lint → build → external-URL guard → unit tests → PR-title lint. - **release-please** on `develop`; Conventional Commits with a custom `content:` type. - **Governance**: README, CONTRIBUTING (Full workflow tier), ROADMAP (11 versions), CREDITS, CODEOWNERS (doctrine paths → owner), issue/PR templates. - **`scripts/serve-static.mjs`**: a zero-dep static server standing in for the production nginx container (offline verification). Verified locally: `pnpm check` (0/0), `pnpm lint`, `pnpm build`, `pnpm guard:external`, `pnpm test:unit` all green. First of two PRs for Core; the content module, local-first data layer, and vendored calendar follow.
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Bosco/bosco!61
No description provided.