dorfteich/apps/api/src
Claude Fable 5 183faf7710
All checks were successful
CI / Lint, typecheck, test (pull_request) Successful in 5m42s
CI / Build container images (pull_request) Successful in 3m56s
CI / Auth e2e pack (pull_request) Successful in 8m17s
CI / Import/export fidelity gate (pull_request) Successful in 56s
CD / Build and push images (push) Successful in 24s
CD / Deploy to Test (push) Successful in 10s
CI / Lint, typecheck, test (push) Successful in 6m17s
CD / Smoke tests against Test (push) Successful in 3m32s
CI / Build container images (push) Has been skipped
CD / Promote to Int (push) Successful in 13s
CI / Auth e2e pack (push) Successful in 8m20s
CI / Import/export fidelity gate (push) Successful in 55s
#204: classification as first-class page metadata (ADR 0022)
Enum field on Page (UNCLASSIFIED default, VS_NFD), migration backfills
existing pages. New pages take the instance-wide default from
classification.newPageDefault (admin-visible, de+en). The value rides in
every PageView, so no channel needs an extra request. The field is a
marking, not a protection mechanism: a test pins that permission
decisions are unchanged by it. The marking wording is fixed in ADR 0022
and sourced solely from classificationMarking() in @dorfteich/shared.

Co-Authored-By: Claude Fable 5 (1M context) <noreply@anthropic.com>
2026-07-31 06:01:50 +02:00
..
admin #195: trashed content leaves the search index itself 2026-07-30 14:07:34 +02:00
audit #201: stable audit event catalogue for syslog/SIEM export 2026-07-31 04:51:09 +02:00
auth #190: configurable session lifetime with a server-side idle timeout 2026-07-30 11:11:15 +02:00
backup #192: deploy-level backup target allowlist 2026-07-30 12:17:14 +02:00
comments Notify watchers about page changes and comments, with an in-app center (#94) 2026-07-11 23:20:25 +02:00
common #197: security response headers and an explicitly restrictive CORS policy 2026-07-30 17:13:24 +02:00
compaction Fix compaction test Bytes typing for strict typecheck (#40) 2026-07-09 08:23:55 +02:00
config Add backup sidecar: nightly dump, volume archive, prune, status, restore (#83) 2026-07-11 17:29:15 +02:00
favorites Favorites: personal page stars, golden icons, sidebar filter (#132) 2026-07-16 12:03:55 +02:00
files #199: SHA-256 integrity hashes for attachments 2026-07-31 04:32:29 +02:00
grants Add Site-Admin system panel with persistent audit trail (#86) 2026-07-11 20:03:05 +02:00
health Nextcloud backup target: admin-configured, manual + scheduled uploads, in-app restore (#103) 2026-07-12 10:39:18 +02:00
home Editable landing page for the Site Admin 2026-07-12 23:50:16 +02:00
i18n #154: Aufgabenübersicht als Kern-Block (Seite + Unterseiten) 2026-07-20 01:20:30 +02:00
import-export #233: prune conversion job payloads for every job kind 2026-07-30 22:12:32 +02:00
inspector Add effective-permissions inspector (#57) 2026-07-10 00:00:27 +02:00
labels Wire real permissions into collab tokens and revocation (#53) 2026-07-09 18:48:42 +02:00
legal Add instance legal pages with public rendering and footer links (#82) 2026-07-11 16:40:04 +02:00
links Fix latenten Flake in links.service.db.test (Phantom-Sortierung) 2026-07-19 06:12:55 +02:00
mail #234: retention for mail_outbox 2026-07-30 22:17:28 +02:00
mcp #148: Seitenlisten filtern nach createdSince/updatedSince 2026-07-20 00:49:52 +02:00
members Add Site-Admin system panel with persistent audit trail (#86) 2026-07-11 20:03:05 +02:00
notifications #188: purpose-bound token keys via HKDF, jose replaces the homegrown JWT 2026-07-30 06:41:11 +02:00
pages #204: classification as first-class page metadata (ADR 0022) 2026-07-31 06:01:50 +02:00
permissions Public REST API v1: personal access tokens, instance switch + per-pond opt-in (#104) 2026-07-12 11:17:03 +02:00
plugins #200: hard instance-wide plugins.enabled kill switch 2026-07-31 04:42:42 +02:00
ponds #195: trashed content leaves the search index itself 2026-07-30 14:07:34 +02:00
prisma Add Prisma with PostgreSQL, automatic migrations, and /readyz 2026-07-04 19:16:44 +02:00
public #191: feeds.enabled instance switch, feed-token log masking 2026-07-30 11:34:43 +02:00
public-api #147: Eigene Identität in der API klar dokumentiert 2026-07-20 00:49:53 +02:00
quotas Quota foundation: overrides, resolution, race-safe consumption (#22) 2026-07-05 20:55:59 +02:00
rate-limit Add DB-backed rate limiting with guard and decorator 2026-07-05 00:43:54 +02:00
scheduler Nextcloud backup target: admin-configured, manual + scheduled uploads, in-app restore (#103) 2026-07-12 10:39:18 +02:00
search #195: trashed content leaves the search index itself 2026-07-30 14:07:34 +02:00
settings #204: classification as first-class page metadata (ADR 0022) 2026-07-31 06:01:50 +02:00
setup #190: configurable session lifetime with a server-side idle timeout 2026-07-30 11:11:15 +02:00
testing #189: make the CSRF origin check fail closed 2026-07-30 09:34:44 +02:00
trash #195: trashed content leaves the search index itself 2026-07-30 14:07:34 +02:00
users #150: @-Mentions — Inline-Node, instanzweite User-Suche, Autocomplete 2026-07-20 00:56:07 +02:00
versions Editor shortcuts: "e" edits, the platform chord+S snapshots versions 2026-07-15 13:17:09 +02:00
watches Add watches: follow pages and ponds with auto-watch preferences (#93) 2026-07-11 22:59:11 +02:00
app.module.ts #197: security response headers and an explicitly restrictive CORS policy 2026-07-30 17:13:24 +02:00
main.ts Remove an unused eslint-disable directive in main.ts 2026-07-12 20:45:29 +02:00