Throughstone v1.3.0 — coding standards
A coding-standards release: it reframes the shipped standards as customizable starting points, broadens per-language coverage (adds Java and C#, plus concurrency/async and Python idioms), and introduces three cross-cutting standards — SQL, Shell, and API design — wired into the method so each surfaces at the right moment.
New cross-cutting standards
- SQL (
coding-standards/sql.md): naming, formatting (sqlfluff), query practices, parameterized-query safety, schema/DDL, and migrations — secondary to the language docs where they conflict. - Shell / Bash (
coding-standards/shell.md): strict mode, quoting/safety, naming/layout, idioms, and error handling (Google Shell Style Guide + ShellCheck/shfmt); the shebang is framed as an explicit, recorded project decision. - API design (
coding-standards/api.md): an opinionated, customizable house style for REST/HTTP APIs — resource naming, methods/status codes, RFC 3339 UTC timestamps, money as integer minor units, RFC 9457 problem-details errors, idempotency, and rate limits — with three per-project forks flagged (field casing, pagination, versioning), each with an ADR pointer. Complements each API's versioned contract artifact from session 1.3.
Expanded per-language coverage
- Java (
java.md) and C# (csharp.md) standards added. - Concurrency / async sections added to Python, Rust, and TypeScript.
- Python: a Language idioms section.
Customizable by default
- Shipped standards reframed as customizable starting-point drafts — both the per-language headers and the README — so teams treat them as a draft to edit, not law to obey.
- The all-languages documentation rule broadened to fields/properties (docstrings where the language documents them, e.g. Java fields, C# properties), public and private.
Wiring
- The cross-cutting standards are reconciled by session 1.11 (kept only when each applies — a relational DB for SQL, shell scripts for Shell, an HTTP/REST boundary for API), listed in
coding-standards/README.mdand theMETHOD.mdhub gloss ("per-language plus cross-cutting"), andtemplates/substep-prompt.mdnudges API-touching substeps to readapi.md.
Full changelog: v1.2.0...v1.3.0