Conversation
Improve the handbook content
Open
9 tasks
Language-agnostic Style Guide plus per-language guides for TypeScript, Go, and Python, in policy register (RFC 2119). Lead principle: Zero Runtime Errors; followed by Functional Style, Design Principles & Separation of Responsibilities (SRP, Separation of Concerns, Clean Architecture Dependency Rule, functional Dependency Inversion, Ports & Adapters, CQS/CQRS), KISS/YAGNI, Error Handling, and Formatting & Tooling. Each rule is tagged 🌎 industry-standard or 🏠 house-rule and cites an authoritative source (deep-research verified: Google TS/Python, Airbnb, PEP 8/484, Effective Go, Uber Go, tsconfig strict, Ruff, Martin, Cockburn, Dijkstra, Evans, Fowler, Bernhardt, Seemann). Divergences (TS/Python Result types & no-classes, Python mandatory hints) are flagged as deliberate house rules. Filed under the handbook's Development Guide (nested Style Guide), following the industry convention (Google/Airbnb/GitLab) of treating style guides as guides. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Pin pnpm@11.10.0 and add pnpm-lock.yaml + pnpm-workspace.yaml (allowBuilds:
esbuild).
- Upgrade vitepress -> 2.0.0-alpha.18 and mermaid; brings vite 8 / rolldown,
clearing every advisory pnpm audit previously reported (audit now clean).
- Fix invalid CSS in doc/.vitepress/theme/font.css (stray `;` after :root{})
that vite 8's lightningcss rejects.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Editorial rewrite (wording/grammar, US English, terminology + structural consistency) plus Google-style bad/good worked examples for the per-language pages. Scope excludes new citations and any policy/level/tag change. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…ples Editorial pass over the four Style Guide pages (ticket rewrite-style-guide-wording-and-examples): - Normalize to American English; copy-edit for grammar and clarity. - Canonical terminology, applied across all four pages: "project code" (code we author), "the pure core" (the pure inner layer), "Result" (the failure value; glossary term "Result (Either)" kept only in bold-links), "the boundary" (the IO edge). "project code" and "the pure core" are kept distinct on purpose. - Reconcile the §1 framing: eliminate avoidable runtime errors, make the unavoidable ones explicit (matches the "literal zero is impossible" rationale). - Structural consistency: tag every section (fix Go "Interfaces" -> 🌎), add the missing Rationale to Python "Functional Style", align section names (Python "Formatting & Linting" -> "Formatting"). - Add a "How to read this guide" note to the hub (RFC 2119 levels, 🌎/🏠 tags, ❌/✅ example convention), single-sourced. - Add Google-style bad/good (❌/✅) worked examples to the language pages: TS Total Types, Result, no-classes; Go errors-as-values; Python EAFP. Scope: editorial only — no rule substance, RFC 2119 level, or 🌎/🏠 tag changed; no new citations; slugs/H1s/config and all 14 glossary anchors preserved. Quality Gate: `pnpm docs:build` passes (dead-link check). Named human review pending on PR #73. Archives ticket to .workaholic/tickets/archive/coding-convention/. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Follow the Google/Airbnb pattern of shipping config, layered like the Style Guide: a language-agnostic base plus per-language configs. - templates/.editorconfig — language-agnostic base (charset, EOL, indent, final newline, trailing whitespace, max_line_length = 100; Python indent 4; Go tabs). - templates/.prettierrc.json — TypeScript/JS/Markdown (printWidth 100). - templates/ruff.toml — Python (line-length 100). - Go: none; gofmt is mandatory and unconfigurable. - templates/README.md documents the layers and usage. Line length is 100 across languages (gofmt excepted). Style Guide §6 now points to templates/; the same files will be mirrored in osbrjp/standard-repository so scaffolded repos inherit them. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Added a new section for HTML & CSS Style Guide in the main style guide document. - Updated the VitePress configuration to include a link to the HTML & CSS Style Guide. - Revised the README to reflect the inclusion of HTML & CSS in the shared formatting configuration.
The pnpm adoption left CI on npm. run-tests.yml and release.yml used setup-node cache: npm + npm ci + npm run docs:build, and package-lock.json (vitepress 1.6.x) was still committed alongside pnpm-lock.yaml (2.0.0-alpha.18), so npm ci would fail on the mismatch. - Both workflows: add pnpm/action-setup, set setup-node cache: pnpm, run `pnpm install --frozen-lockfile` and `pnpm run docs:build`. - Remove package-lock.json; pnpm-lock.yaml is the single lockfile. - Bump all actions in these workflows to current majors: checkout v4->v7, setup-node v4->v6, pnpm/action-setup v6, github-script v6->v9, configure-pages v4->v6, upload-pages-artifact v3->v5, deploy-pages v4->v5, release-drafter v5->v7. Verified: pnpm install --frozen-lockfile is in sync (what CI runs). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Node 20 reached end-of-life on 2026-04-30. Bump the CI node-version in run-tests.yml and release.yml to 24, the current Active LTS (supported until 2028-04). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Add Coding Style Guide (TypeScript, Go, Python) + shared config templates
sn0wm1ku
self-requested a review
July 9, 2026 11:03
2 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.