2025-09-09T08:59:52Z - 2026-09-09T08:59:52Z
Overview
50 Releases published by 1 user
Published
prod-v0.16.0-initial
Published
v0.16.0
v0.16.0
Published
prod-v0.15.0-initial
Published
v0.15.0
v0.15.0
Published
v0.14.0
v0.14.0
Published
prod-v0.14.0-initial
Published
prod-v0.13.0-initial
Published
v0.13.0
v0.13.0
Published
prod-v0.12.0-initial
Published
v0.12.0
v0.12.0
Published
v0.11.1
v0.11.1
Published
prod-v0.11.1-initial
Published
v0.11.0
v0.11.0
Published
prod-v0.11.0-initial
Published
prod-v0.10.1-initial
Published
v0.10.1
v0.10.1
Published
v0.10.0
v0.10.0
Published
prod-v0.10.0-initial
Published
prod-v0.9.2-initial
Published
v0.9.2
v0.9.2
Published
prod-v0.9.1-initial
Published
v0.9.1
v0.9.1
Published
prod-v0.9.0-initial
Published
v0.9.0
v0.9.0
Published
prod-v0.8.0-initial
Published
v0.8.0
v0.8.0
Published
v0.7.0
v0.7.0
Published
prod-v0.7.0-initial
Published
prod-v0.6.0-initial
Published
v0.6.0
v0.6.0
Published
v0.5.0
v0.5.0
Published
prod-v0.5.0-initial
Published
prod-v0.4.0-keycheck
Published
v0.4.0
v0.4.0
Published
prod-v0.4.0-initial
Published
prod-v0.3.0-initial
Published
v0.3.0
v0.3.0
Published
drill-prod-1783881455
Published
drill-prod-1783879107
Published
prod-v0.2.0-initial
Published
v0.2.0
v0.2.0
Published
prod-v0.1.2-initial
Published
v0.1.2
v0.1.2
Published
v0.1.0
v0.1.0
Published
prod-v0.1.1-final
Published
prod-v0.1.0-rollback1
Published
prod-v0.1.1-upgrade
Published
v0.1.1
v0.1.1
Published
prod-v0.1.0-initial
Published
drill-verify-87
97 Pull requests merged by 2 users
Merged
#346 Ship third-party license texts in plugin ZIPs (#345)
Merged
#344 Recognize Markdown tables on paste and while typing (#339)
Merged
#343 Word-style Tab navigation in tables with an accessible exit (#338)
Merged
#342 Merge and split table cells (#337)
Merged
#341 Unambiguous delete row/column toolbar icons (#336)
Merged
#340 Gap cursor for block-edge positions (#335)
Merged
#334 Invitation flow with per-user quota (#332)
Merged
#333 Admin can create user accounts directly (#331)
Merged
#330 Quota override cell stays a table cell, flex on an inner wrapper (#329)
Merged
#328 Self-hosting findings: URL-safe password advice, operator-readable pre-seed errors (#324, #325)
Merged
#327 Document title follows the configured instance name (#323)
Merged
#326 Fix admin general settings form: dot-free field names, flat PATCH keys (#322)
Merged
#321 Refresh the self-hosting guide for the first public release (#320)
Merged
#318 test: give the 10k-iteration sort-key property test its own timeout
Merged
#317 #307: pond-level branding overrides the instance logo and favicon
Merged
#316 #305: a full pond archive before deletion and before purge
Merged
#315 #179: negotiate the SPA shell's lang attribute in nginx
Merged
#314 #306: instance branding - logo and favicon, cropped in the browser
Merged
#313 #304: custom fonts in the pickers, an admin screen, and the licence page
Merged
#312 #303 follow-up: the fonts volume must mount node-owned
Merged
#311 #303: operator-uploaded fonts — storage, API, PDF embedding, backup
Merged
#309 #301: stop /settings scrolling horizontally at 320px
Merged
#310 #302: configurable pond start page, created with every new pond
Merged
#308 #300: route icon-only controls through IconButton/IconLink
Merged
#299 #296: remove the unsubscribe-token dual-verify window early
Merged
#298 #232: plugin allowlist with SHA-256 hash pinning
Merged
#297 ADRs 0019-0027: accepted after explicit operator review
Merged
#295 #246: mode enforced — reject profile-violating configuration writes
Merged
#294 #245: mode hidden — hide profile-violating options, mark the hiding
Merged
#293 #244: mode marked — flag profile-violating configuration in the UI
Merged
#292 #243: VS_NFD_MODE and the machine-readable hardening-profile catalog
Merged
#291 #221: offline update path incl. migrations, rehearsed with rollback
Merged
#290 #220: protocol of the isolated deployment run
Merged
#289 #288: reset schema before pg_restore — partitioned tables broke --clean
Merged
#287 #219: verified reproducible build without network access
Merged
#286 #218: mirror procedure into an internal registry
Merged
#285 #217: map IdP groups and roles onto the permission model
Merged
#284 #216: hard AUTH_LOCAL_ENABLED switch over every local credential flow
Merged
#283 #215: trusted reverse-proxy header / mTLS client-certificate path
Merged
#281 #225: read-trail master switch and purpose limitation
Merged
#278 #222: read-access trail for classified pages
Merged
#277 #230: IT-Grundschutz mapping APP.3.1 + CON.11.1
Merged
#276 #231: residual-risk list
Merged
#274 #229: operations manual (VS-NfD)
Merged
#273 #228: security documentation (VS-NfD)
Merged
#272 #213: upload warning/block for classified pages
Merged
#271 #212: attachment downloads marked by filename prefix + companion
Merged
#270 #211: classification through feeds, public API, search, no-JS shell
Merged
#269 #210: Markdown ZIP with frontmatter, imprint and manifest
Merged
#267 #208: classification in the Gotenberg PDF header/footer
Merged
#266 #207: print CSS with per-sheet classification header/footer
Merged
#265 #206: VS-NfD marking in the web view (top+bottom)
Merged
#264 #205: classification inheritance + guarded, audited lowering
Merged
#263 #204: classification as first-class page metadata (ADR 0022)
Merged
#262 #203: pin all third-party deploy images by digest
Merged
#261 #201: stable audit event catalogue for syslog/SIEM export
Merged
#260 #200: hard instance-wide plugins.enabled kill switch
Merged
#259 #199: SHA-256 integrity hashes for attachments
Merged
#258 #202: SBOM and license report in CI
Merged
#257 #236: pin the Node version
Merged
#256 #235: keep page_links rows pointing at purged pages (recorded decision)
Merged
#255 #234: retention for mail_outbox
Merged
#254 #233: prune conversion job payloads for every job kind
Merged
#253 #198: CI fence -- no tracked .env or secret material, example is authoritative
Merged
#252 #197: security response headers and an explicitly restrictive CORS policy
Merged
#251 #196: audit-trail retention job
Merged
#250 #195: trashed content leaves the search index itself
Merged
#249 #194: orphan-file sweep + drop Attachment.deletedAt
Merged
#248 #193: pond purge (retention job + manual Site-Admin endpoint)
Merged
#247 #192: deploy-level backup target allowlist
Merged
#242 #191: feeds.enabled instance switch + feed-token log masking
Merged
#241 #190: configurable session lifetime + server-side idle timeout
Merged
#240 #189: make the CSRF origin check fail closed
Merged
#239 #188: purpose-bound token keys via HKDF + jose
Merged
#238 #226: §52 VSA delimitation statement
Merged
#237 docs: VS-NfD readiness planning (ist-aufnahme, plan, ADRs 0019-0026, issue drafts)
Merged
#187 #186: pond accent theming (ADR 0018 stage C)
Merged
#185 #184: accent theme engine — presets and free color (ADR 0018 stage B)
Merged
#183 #182: top-bar theme toggle (cycle light/dark/system)
Merged
#181 #180: Dark mode - Light/Dark/System setting with token-based dark palette
Merged
#178 #177: Admin-Personenliste — Trennlinien der Aktionen-Spalte buendig
Merged
#176 #175: Admin-Personenliste — Aktions-Icons statt Textlinks
Merged
#174 A11y: Struktur/Kontraste/Formulare (#166-#168), Nicht-Text (#169), Verhalten (#170), CI-Schutz (#171)
Merged
#173 A11y: ARIA-Semantik (#164) und Reflow 320px (#165)
Merged
#172 A11y: Fokus-Management (#162) und Dokumentsprache/Seitentitel (#163)
Merged
#161 #160: Plugin-Block - Bearbeiten-Knopf nach Moduswechsel wieder da
Merged
#159 M23: ChordPro-Plugin — Akkordblätter/Leadsheets (#155)
Merged
#158 M22: Aufgaben-Paket — Mentions (#150/#151), Datums-Marker (#152), Task-IDs+Toggle (#153), Aufgabenübersicht (#154)
Merged
#157 M21: API & Feeds — me-Doku (#147), since-Filter (#148), Atom-Feeds (#149)
Merged
#156 M20: Einstellungs-Sektionsnavigation (#145) + transparente Einbettung $[[…]] (#146)
Merged
#144 K19-Screenshot (Bühnenplan) + Fallback-SVGs responsiv skalieren
Merged
#143 CSP data:-Fonts + Doku: Excalidraw als sechstes Standard-Plugin
Merged
#142 #137 Feinjustierung: Checkbox-Ausrichtung im NodeView (−3px)
Merged
#141 #137 Nachfix 2: Task-Item-Absätze per Nachfahren-Selektor (NodeView nested das <p> zwei Wrapper tief)
Merged
#140 Editor: Auto-Fokus beim Wechsel in den Edit-Modus
Merged
#139 #137 Fix: Checkbox-Ausrichtung (:first-of-type statt :first-child)
Merged
#138 M17–M19: #133–#137 (Kommentare inline, Statuszeile, Transklusion, Excalidraw, Checkbox-Fix)
241 Issues closed from 2 users
Closed
#345 Plugin ZIPs omit license texts for bundled third-party components
Closed
#339 Table: recognize Markdown table syntax on paste (and while typing)
Closed
#338 Table: Tab/Shift-Tab cell navigation with accessible exit
Closed
#337 Table: merge and split cells
Closed
#336 Table toolbar: delete row/column icons read as 'expand'
Closed
#335 Editor: cannot place cursor before/after a table at document edges
Closed
#332 Invitation flow for regular users with admin-configurable quota
Closed
#331 Admin: create user accounts directly
Closed
#329 Quota override table: uneven row separators — display:flex directly on the override td
Closed
#325 SETUP_ADMIN_PASSWORD minimum length (10) is undocumented; violation crash-loops the api with a raw ZodError
Closed
#324 Guide's password advice (openssl rand -base64) produces credentials that break DATABASE_URL
Closed
#323 Document title is hardcoded 'Dorfteich' and never follows the configured instance name
Closed
#322 Admin general settings form never saves: dotted react-hook-form names nest on input
Closed
#320 Refresh the self-hosting guide for the first public release
Closed
#307 Pond-level branding: override instance logo and favicon per pond
Closed
#305 Offer a full pond archive before deletion and before purge
Closed
#179 SPA-index.html: lang-Attribut serverseitig nach Accept-Language setzen (Crawler/No-JS sehen hartes en)
Closed
#306 Instance branding: logo and favicon upload with in-browser cropping
Closed
#304 Custom fonts in the appearance pickers, admin screen and licence page
Closed
#303 Instance-wide custom font upload: storage, API, PDF embedding, backup
Closed
#301 /settings overflows horizontally at 320px (WCAG 1.4.10 reflow)
Closed
#302 Configurable pond start page, created with every new pond
Closed
#300 Align icon-only buttons on the shared IconButton component
Closed
#296 Remove the unsubscribe-token dual-verify window early (ADR 0020 acceptance)
Closed
#232 [VS-NfD] Add a plugin allowlist with SHA-256 hash pinning
Closed
#246 [VS-NfD] Mode "enforced": reject profile-violating configuration writes server-side
Closed
#245 [VS-NfD] Mode "hidden": hide profile-violating options and mark the hiding
Closed
#243 [VS-NfD] Define the deployment hardening-profile mode and the machine-readable VS-NfD configuration catalog
Closed
#244 [VS-NfD] Mode "marked": flag profile-violating configuration options in the UI
Closed
#221 [VS-NfD] Define the offline update path including migrations
Closed
#220 [VS-NfD] Run and document a deployment in a network-isolated environment
Closed
#288 Restore reports failure on partitioned tables: pg_restore --clean cannot drop inherited partition PKs
Closed
#219 [VS-NfD] Make the build reproducible without network access
Closed
#218 [VS-NfD] Document the mirror procedure into an internal registry
Closed
#217 [VS-NfD] Map IdP groups and roles onto the permission model
Closed
#215 [VS-NfD] Support a trusted reverse-proxy header or mTLS client certificate as an alternative path
Closed
#216 [VS-NfD] Add a hard auth.local.enabled = false switch covering every local credential flow
Closed
#214 [VS-NfD] Implement OIDC Authorization Code with PKCE, Keycloak as reference IdP
Closed
#224 [VS-NfD] Store read events in their own table with retention and partitioning
Closed
#225 [VS-NfD] Make the read trail switchable and document its purpose limitation
Closed
#223 [VS-NfD] Add a dedup window so Yjs sync does not flood the trail
Closed
#222 [VS-NfD] Instrument read paths for classified content
Closed
#231 [VS-NfD] Maintain the residual-risk list
Closed
#230 [VS-NfD] Produce the IT-Grundschutz mapping for APP.3.1 and CON.11.1
Closed
#227 [VS-NfD] Write the hardening guide with a "VS-NfD operation" reference configuration
Closed
#229 [VS-NfD] Write the operations manual (installation, update, backup/restore, deletion, role separation)
Closed
#228 [VS-NfD] Write the security documentation (architecture, data flows, network plan, ports, trust boundaries)
Closed
#213 [VS-NfD] Warn or block when attaching files to classified pages
Closed
#211 [VS-NfD] Pass the classification through feeds, public API, search results and the no-JS shell
Closed
#212 [VS-NfD] Mark attachment downloads by filename prefix and companion file
Closed
#210 [VS-NfD] Mark the Markdown ZIP export with frontmatter and a visible imprint
Closed
#209 [VS-NfD] Give pandoc a reference document with classification header and footer
Closed
#208 [VS-NfD] Put the classification into the Gotenberg PDF header/footer template
Closed
#207 [VS-NfD] Add print CSS with a per-page classification header and footer
Closed
#205 [VS-NfD] Inherit classification in the page tree; require a dedicated right to downgrade
Closed
#206 [VS-NfD] Show the classification in the web view header and footer
Closed
#204 [VS-NfD] Add classification as a page field with migration and instance default
Closed
#203 [VS-NfD] Pin all container images by digest
Closed
#201 [VS-NfD] Define a stable event catalogue for syslog/SIEM export
Closed
#200 [VS-NfD] Add a hard plugins.enabled = false switch
Closed
#199 [VS-NfD] Add SHA-256 integrity hashes for attachments
Closed
#202 [VS-NfD] Produce an SBOM and a license report in CI
Closed
#236 [VS-NfD] Pin the Node version
Closed
#235 [VS-NfD] Decide the fate of page_links rows pointing at purged pages
Closed
#234 [VS-NfD] Add retention for mail_outbox
Closed
#233 [VS-NfD] Prune conversion job payloads for every job kind
Closed
#198 [VS-NfD] Verify that no real .env is shipped and document the example as authoritative
Closed
#197 [VS-NfD] Add security response headers and an explicitly restrictive CORS policy
Closed
#196 [VS-NfD] Add a retention job for audit_log
Closed
#195 [VS-NfD] Remove trashed content from the search index instead of filtering at query time
Closed
#194 [VS-NfD] Implement the orphan-file sweep and resolve Attachment.deletedAt
Closed
#193 [VS-NfD] Implement pond purge
Closed
#192 [VS-NfD] Restrict backup targets to an allowlist and allow remote targets to be disabled at deploy time
Closed
#191 [VS-NfD] Remove the feed token from the query string, or allow feeds to be disabled
Closed
#190 [VS-NfD] Make the session lifetime configurable and add an idle timeout
Closed
#189 [VS-NfD] Make the CSRF origin check fail closed
Closed
#188 [VS-NfD] Separate token keys with HKDF and replace the homegrown JWT with jose
Closed
#226 [VS-NfD] Write the §52 VSA delimitation statement
Closed
#186 Pond accent theming (ADR 0018 stage C)
Closed
#182 Theme toggle icon in the top bar (cycle light/dark/system)
Closed
#184 Theme engine: accent presets and free accent color (ADR 0018 stage B)
Closed
#180 Dark mode: Light/Dark/System setting with token-based dark palette
Closed
#177 Admin-Personenliste: Zeilen-Trennlinie der Aktionen-Spalte nicht buendig
Closed
#175 Admin-Personenliste: Aktions-Textlinks durch Icon-Buttons ersetzen, Reihenfolge Admin/Deaktivieren/Loeschen
Closed
#171 A11y: Tooling und CI-Regressionsschutz
Closed
#170 [Gering] A11y: Statusmeldungen, Einzeltasten-Shortcuts, Bewegung
Closed
#169 [Mittel] A11y: Nicht-Text-Inhalte - Checkboxen, Graph, Bild-Alt
Closed
#168 [Mittel] A11y: Formulare - Fehler-Verdrahtung und Namensluecken
Closed
#167 [Mittel] A11y: Farbkontraste - Dark-Shell, Wikilinks, Feld-Raender
Closed
#165 [Hoch] A11y: Reflow bei 320 px und Tastatur-Scrollbarkeit
Closed
#166 [Mittel] A11y: Skip-Link und Struktur-Hygiene
Closed
#163 [Hoch] A11y: Dokumentsprache und Seitentitel der SPA
Closed
#164 [Hoch] A11y: ARIA-Semantik von Editorflaeche, Autocomplete-Listboxen und Sidebar
Closed
#162 [Hoch] A11y: Fokus-Management fuer Dialoge und Such-Palette
Closed
#160 Plugin-Block: Bearbeiten-Knopf fehlt nach Wechsel in den Edit-Modus (stale isEditable)
Closed
#155 Block-Plugin „Akkordblätter/Leadsheets" (ChordPro)
Closed
#154 Aufgabenübersicht als Kern-Block (Seite + Unterseiten)
Closed
#153 Stabile Task-IDs + Toggle-Rückschreibpfad
Closed
#152 Datums-Marker >> (Zieldatum) / << (Startdatum) + User.locale-Verdrahtung
Closed
#151 Mention-Benachrichtigungen
Closed
#150 @-Mentions: Inline-Node, User-Suche, Autocomplete
Closed
#149 RSS/Atom-Feeds für Teiche und Seiten
Closed
#148 Seitenlisten: Filter createdSince/updatedSince
Closed
#147 Eigene Identität in der API: prüfen + dokumentieren
Closed
#145 Einstellungsseiten: Sektions-Sprungnavigation
Closed
#146 Transparente Einbettung $[[Seite]] (ohne Rahmen und Titel)
Closed
#137 Checkbox-Aufzählungen: Textzeile vertikal ausrichten
Closed
#136 Excalidraw-Block-Plugin
Closed
#134 Statuszeile zwischen Navigation und Artikel (Aktualisierung, Wortzahl, Lesedauer)
Closed
#135 Seiten-Einbettung ![[Seite]] (Transklusion) im Lesemodus
Closed
#133 Kommentare fest inline im Lesemodus (Slide-in-Panel ablösen)
Closed
#128 Papierkorb: Mehrfachauswahl mit Checkboxen, Sammel-Restore/-Löschen, Alle auswählen
Closed
#132 Favoriten: Stern in der Aktionsleiste, goldene Baum-Icons, sys-fav-Label, Favoriten-Filterknopf
Closed
#129 Sidebar-Icon-Leiste bei langen Seitenlisten verdeckt — muss immer sichtbar sein
Closed
#130 Editor: Bestätigungs-Toast nach dem Speichern von Versionen/Snapshots
Closed
#131 Gesamtgraph: Box auf Viewport-Höhe begrenzen — Mausrad-Zoom scrollt die Seite mit
Closed
#124 Sidebar: Aktions-Links als Icon-Leiste am unteren Rand pinnen
Closed
#127 Vault-Import: Umlaute in Seitentiteln zerstört (ZIP-Dateinamen-Dekodierung)
Closed
#126 Fußzeile: Dorfteich-Versionsnummer neben dem Verbindungsstatus
Closed
#125 Editor-Tastenkürzel: e für Bearbeiten, Strg/Cmd+S Snapshot, Cmd+Shift+S benannter Snapshot
Closed
#123 Wissensgraph: Live-Simulation wie Obsidian + Regler für Kräfte und Größen
Closed
#121 Vault-Import: Label-Auswahl fehlt bei Teich ohne Labels
Closed
#122 Seitenbaum-Sidebar: Eltern über Kindern stapeln, kompaktere Darstellung, Icons
Closed
#120 Modals transparent: CSS-Token --color-surface ist nirgends definiert
Closed
#118 Vault import dialog in the pond settings
Closed
#119 QA: vault-import e2e pack and documentation
Closed
#115 Offer creating the page on the page-not-found screen
Closed
#117 Vault import job: endpoint, orchestration, rollback
Closed
#116 Obsidian vault transform module (pure functions + fixture vault)
Closed
#113 Local graph panel on the page editor
Closed
#114 QA: e2e packs, CI wiring and manuals for page tree and knowledge graph
Closed
#112 Pond knowledge graph view (Obsidian-like)
Closed
#111 Pond-wide link graph endpoint
Closed
#110 Hierarchy parity: public REST API v1 and MCP expose parentId
Closed
#109 Page tree UX: drag-and-drop reparent, “Move to…” dialog, delete choice dialog
Closed
#107 Page hierarchy: delete modes (promote/subtree) and trash semantics
Closed
#108 Sidebar: folder view, label view, view toggle and pond default
Closed
#106 Page hierarchy: schema, parentId in page API, reparent via position endpoint
Closed
#84 Off-host backup mirror to BASEL
Closed
#105 Built-in MCP endpoint (Streamable HTTP) on top of the public API
Closed
#104 Public REST API v1: personal access tokens, instance switch + per-pond opt-in
Closed
#103 Nextcloud backup target: admin-configured, manual + scheduled runs, in-app restore
Closed
#102 Live presence moves into the top navigation (signed-in users only)
Closed
#99 Resizable sidebar width
Closed
#101 Icon actions in the top navigation replace the green page buttons
Closed
#100 Pages use the full width of the content area
Closed
#90 QA: self-hosting and operations e2e
Closed
#89 Release process and Prod stage provisioning
Closed
#96 QA: comments and notifications regression pack
Closed
#95 E-mail notification digests
Closed
#94 Notification generation and in-app notification center
Closed
#93 Watches: follow pages and ponds
Closed
#92 Comments UI
Closed
#91 Comments: data model and API
Closed
#88 Self-hosting guide and reference compose distribution
Closed
#87 Restore runbook automation and monthly drill
Closed
#86 Maintenance-jobs admin panel and audit-log viewer
Closed
#85 Readiness checks, backup freshness, and uptime monitors
Closed
#83 Backup sidecar: dump, volume archive, prune, and status
Closed
#82 Legal pages feature and dorfteich.online texts
Closed
#81 First-run setup wizard: UI
Closed
#80 First-run setup wizard: API
Closed
#79 Plugin fallbacks in HTML, PDF, and office exports
Closed
#78 Mermaid reference plugin
Closed
#77 pageTool plugins with toc and page-index references
Closed
#76 Block plugins: plugin_block node with sandboxed rendering and editing
Closed
#75 Section-style plugins and the section container node
Closed
#74 Capability-scoped plugin API endpoints
Closed
#72 Plugin administration UI: instance modes and pond activation
Closed
#73 Sandbox host runtime for plugin iframes
Closed
#71 Plugin storage, install API, and directory watcher
Closed
#70 Plugin SDK: manifest schema, validation, and RPC protocol
Closed
#69 QA: import/export fidelity gate
Closed
#68 Data export for account holders (GDPR portability)
Closed
#67 PDF export via Gotenberg
Closed
#66 Pond fonts: catalog build, admin UI, and application
Closed
#65 Export: pond ZIP of Markdown, and .docx/.odt per page
Closed
#64 Import UI
Closed
#63 Import .docx and .odt as new pages
Closed
#62 Conversion job queue and pandoc sidecar integration
Closed
#61 Non-image attachments with allowlist and page attachment UI
Closed
#59 Site Admin: user management
Closed
#60 QA: cross-feature permission hardening pack
Closed
#58 Site Admin: quota override management UI
Closed
#57 Effective-permissions inspector
Closed
#56 Public read access and server-rendered page HTML
Closed
#55 Label- and page-scope grants UI including deny
Closed
#54 Pond member management UI
Closed
#53 Wire real permissions into collab tokens and revocation
Closed
#52 Enforce permissions in API guards and retire interim access
Closed
#51 Grant model and shared permission-resolution algorithm
Closed
#50 Search UI with scoping and snippets
Closed
#49 SearchProvider interface with PostgreSQL FTS implementation
Closed
#48 Backlinks panel and phantom-pages view
Closed
#47 Wikilink index, backlinks API, and phantom-link resolution
Closed
#46 Wikilink node with autocomplete
Closed
#45 Manual page ordering with drag-and-drop
Closed
#44 Label UI: tree management, page assignment, and sidebar filter
Closed
#43 Hierarchical labels: model, CRUD API, and validation
Closed
#42 Version history UI: list, view, diff, restore
Closed
#41 Version snapshots: automatic and named versions
Closed
#40 Update-log compaction job
Closed
#39 Permission-revocation handling for live and offline sessions
Closed
#38 Offline editing: local persistence, PWA shell, and reconnect UX
Closed
#37 Remote cursors and presence strip
Closed
#36 Switch the editor to live collaboration
Closed
#35 Document persistence hooks: load, store, and content-cache refresh
Closed
#34 Collab token issuance and connection authentication
Closed
#33 Collaboration server skeleton (Hocuspocus) with container and compose service
Closed
#32 QA: M2 fixtures and content regression pack
Closed
#31 Page trash: soft delete, restore, and purge job
Closed
#30 Markdown copy, paste, and per-page Markdown export endpoint
Closed
#29 Link UX: edit URL and open in new tab
Closed
#28 Image paste and insert in the editor
Closed
#27 File storage service and image upload API
Closed
#26 Pond sidebar with page list and sort modes
Closed
#25 TipTap editor page with REST persistence
Closed
#23 Page data model and CRUD API with REST-persisted Yjs state
Closed
#24 Editor document schema in packages/shared
Closed
#22 Quota foundation: defaults, overrides, and resolution service
Closed
#21 Pond data model and CRUD API with personal pond at signup
Closed
#20 QA: auth e2e regression pack and fixture users
Closed
#13 Signup endpoint with e-mail verification flow
Closed
#17 Account settings: profile, locale, and password change
Closed
#16 Auth pages in the SPA (signup, verify, login, reset)
Closed
#12 Mail outbox and SMTP delivery service
Closed
#14 Login, logout, and session guard
Closed
#19 Instance settings foundation and registration-mode admin toggle
Closed
#15 Password reset flow
Closed
#11 DB-backed rate limiting service
Closed
#18 Active session management UI
Closed
#10 User, identity, and session data model
Closed
#9 Provision Test and Int stages on the VPS (188.245.116.44)
Closed
#8 CD workflow: build, push, deploy to Test, e2e smoke, promote to Int
Closed
#7 CI workflow: lint, typecheck, unit tests, build on every PR
Closed
#3 Prisma setup with PostgreSQL and first migration
Closed
#2 NestJS API skeleton with config, logging, and /healthz
Closed
#5 i18n scaffold with i18next (de/en) and missing-key CI check
Closed
#1 Scaffold pnpm monorepo with lint, format, and test tooling
Closed
#4 React SPA shell with routing and base layout
Closed
#6 Dockerfiles and Compose stack for web, api, and db
2 Issues created by 1 user
Opened
#98 Restore drills (log)
Opened
#319 Pond trash screen in the web UI (restore, purge, full-archive download)