Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions changelog.d/billing-spend.added.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
`Billing::spend` — idempotent credit spending with a partial unique reference index (migration 009) and typed `InsufficientCredits`; the wallet test suite gains a randomized 300-op invariant check (`SUM(ledger) == cached balance` after every step).
1 change: 1 addition & 0 deletions changelog.d/dead-surface.changed.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Dead template surface resolved: undocumented unused Auth/Messaging helpers removed; `CrudBase` owned-templates, `Database::execute_transaction`/`execute_write_idempotent` and friends are now instantiated by tests (which immediately exposed that the owned-templates required the templated `from_row` convention); `Validation::uuid` reuses the single UUID implementation.
1 change: 1 addition & 0 deletions changelog.d/deinline-rest.changed.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
The app_core de-inline is complete: 22 more header/body pairs (all controllers, email, security, storage, observability, cache, Migrations), headers down 62%; the email↔jobs include cycle is gone from the header plane.
1 change: 1 addition & 0 deletions changelog.d/devcontainer.added.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
`.devcontainer` runs on the prebuilt `builder:cache` image — the native `make test-local` inner loop works minutes after opening (warm re-run ~7 s). `Makefile` build jobs are now RAM-capped (`JOBS`), fixing OOM kills on 8 GiB Docker VMs.
1 change: 1 addition & 0 deletions changelog.d/e2e-openapi.added.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
The e2e suite validates every real JSON response against the OpenAPI schemas (dependency-free subset validator + committed spec JSON with a freshness hash); the first pass fixed the spec's missing `status` field, three long-standing YAML flow-map errors, four undocumented statuses and the absent `Post` schema.
1 change: 1 addition & 0 deletions changelog.d/fuzzing.added.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Nightly libFuzzer runs over the four byte-facing parsers (traceparent, decimal-cents, config placeholder expansion, path matching) with round-trip oracles and a growing cached corpus; harnesses are std-only by design — no vcpkg needed.
1 change: 1 addition & 0 deletions changelog.d/init-options.added.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
`init-project.sh --with-orgs` (installs the multi-tenancy kit post-rename) and `--minimal` (strips the content module via `remove-content-module.sh` with the full gate battery green on the cut tree); self-verification fixed on pristine trees (#57).
1 change: 1 addition & 0 deletions changelog.d/outbox.added.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Opt-in transactional outbox (`Outbox::enqueue` in the caller's transaction + `SKIP LOCKED` drain into the jobs queue, migration 010, `outbox.drain_interval_sec` default off) for events whose loss after commit is unacceptable; decision guide in CONVENTIONS gotcha 20.
1 change: 1 addition & 0 deletions changelog.d/sanitizers-integration.changed.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
CI sanitizers (ASan+UBSan and TSan) now cover the integration+api buckets against real Postgres/Redis, not just unit — the first instrumented run caught and fixed a latent heap-use-after-free (range-for over a temporary json).
1 change: 1 addition & 0 deletions changelog.d/supply-chain.added.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Releases ship SPDX SBOMs and cosign keyless signatures/attestations for all three images; a nightly guard re-hashes the pinned Swagger UI assets against the CDN, and Renovate watches the pin without automerging it.
1 change: 1 addition & 0 deletions changelog.d/sync-upstream.added.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
`scripts/sync-upstream.sh` + a `.template-version` stamp: degit forks with no shared git history can pull template releases as three-way patches with honest conflict markers (`.template-sync-ignore` excludes renamed paths).
Loading