2026-07-09 - 2026-07-16
Overview
3 Releases published by 1 user
Published
v0.1.8
Published
v0.1.7
Published
v0.1.6
103 Issues closed from 1 user
Closed
#258 [Task] Split auth session check from full user bootstrap
Closed
#245 [Debt] Refactor high-complexity core installer/configuration/runtime functions
Closed
#257 [Audit] Refactor core installer, catalog, and runtime validation complexity hotspots
Closed
#254 [Security audit] Harden module installer subprocess command provenance
Closed
#253 [Security audit] Centralize safe HTTP(S) fetch and URL validation in core
Closed
#255 [Security audit] Replace silent core exception handling with narrow logging
Closed
#256 [Security audit] Document safe SQLAlchemy text usage in migration helpers
Closed
#250 [Debt] Define shared platform API schema primitives across access, admin, policy, and tenancy
Closed
#252 [Debt] Define shared SQLAlchemy change-tracking helpers for modules
Closed
#249 [Debt] Centralize repeated WebUI API client request helpers
Closed
#251 [Debt] Provide shared module runtime proxy helper for modules
Closed
#247 [Feature] Notification settings and preferences surface
Closed
#248 [Feature] Emit notifications for core module installer queue lifecycle
Closed
#242 [Security] Review dynamic module import trust boundary
Closed
#240 [Security] Review dynamic SQL text findings and add safe identifier helpers
Closed
#239 [Security] Centralize outbound URL policy for core fetches and health checks
Closed
#232 [Security] Harden module installer shell command hooks
Closed
#238 [Security] Harden release-doctor shell command execution
Closed
#241 [Supply-chain] Pin Gitea workflow actions to immutable revisions
Closed
#244 [Security] Lock audit toolbox dependencies flagged by OSV
Closed
#237 [Security] Harden installer shell hook execution and command trust boundary
Closed
#243 [Security] Fix audit report capture and duplicate-scan noise
Closed
#236 [Security] Broaden audit/config secret redaction key matching
Closed
#235 [Security] Reject wildcard CORS with credentials at runtime
Closed
#234 [Security] Stop persisting UI API keys in localStorage
Closed
#233 [Security] Redact installer run-record secrets
Closed
#223 [Task] Define release migration squashing and baseline workflow
Closed
#165 [Feature] Define tenant deletion and module cleanup/veto contract
Closed
#86 [Feature] Add delete-veto orchestration through module providers
Closed
#231 [Feature] Target-state module update planner
Closed
#14 [Task] Consider backend-provided exact policy source metadata for "which specific scope caused this value"
Closed
#13 [Task] Surface governance source path more explicitly in tenant details and other admin panels
Closed
#16 [Task] Define inheritance/delegation constraints explicitly: may use, must use, may override, may not override, may merge, may delegate
Closed
#15 [Feature] Add impact analysis before delete, disable, unshare, policy changes, and cascading changes
Closed
#32 [Task] LDAP/OIDC/SAML provisioning; OIDC likely first
Closed
#35 [Task] WebUI-driven update/rollback with backup and rollback guardrails
Closed
#33 [Task] Catch error mail address
Closed
#81 [Feature] Ensure core-only startup still works enough to show shell/health, but access is required for authenticated product use
Closed
#85 [Feature] Define tenant lifecycle events: created, suspended, resumed, deletion requested, erasure completed
Closed
#91 [Feature] Add policy simulation before destructive/limiting changes
Closed
#96 [Task] Introduce outbox table and dispatcher for production-safe event delivery
Closed
#95 [Task] Separate command bus from event bus
Closed
#79 [Feature] Move login/session/admin access UI into access/admin module contributions
Closed
#77 [Feature] Move access permissions and default role templates into the access manifest
Closed
#97 [Feature] Move audit log storage/query/export into audit module
Closed
#78 [Feature] Move access migrations into the access module migration registration
Closed
#70 [Feature] Move or clearly mark these as kernel-stable contracts:
Closed
#131 [Feature] Add IDM/LDAP/OIDC/SAML/SCIM provisioning
Closed
#130 [Feature] Add XRechnung workflow
Closed
#129 [Feature] Add ERP/finance connector
Closed
#128 [Feature] Add DMS/eAkte connector
Closed
#127 [Feature] Add XÖV validation/mapping module
Closed
#126 [Feature] Add FIT-Connect connector
Closed
#125 [Feature] Build govoplan-connectors registry and connector runtime
Closed
#124 [Task] Link existing files/mail/campaign to cases
Closed
#123 [Feature] Add govoplan-recipients / govoplan-address-book
Closed
#122 [Feature] Add govoplan-templates
Closed
#121 [Feature] Add govoplan-forms
Closed
#120 [Feature] Extract/generalize reusable workflow/review patterns into govoplan-workflow
Closed
#119 [Feature] Create govoplan-tasks concept and MVP
Closed
#118 [Feature] Create govoplan-cases concept and MVP
Closed
#89 [Feature] Move delegation ceilings and "more restrictive only" validation into policy
Closed
#88 [Feature] Move hierarchical policy evaluation into policy
Closed
#60 [Task] Decide early self-hosted installer packaging approach: Compose-first script, CLI wizard, generated .env plus runbook, or a staged combination
Closed
#25 [Feature] Add scripts/docs for starting, stopping, resetting, and seeding the production-like dev stack without replacing the minimal dev workflow
Closed
#21 [Feature] Add configuration validation that fails early with actionable messages when required production-like settings are missing
Closed
#20 [Feature] Add .env.example, generated config templates, or a config bootstrap command so new installs are configured intentionally instead of only cloned
Closed
#5 [Task] Check and re-check module boundaries: mail code in campaign and files, file code in mail and campaign, and campaign code in mail and file; also, check against core so cor...
Closed
#50 [Task] Replace direct cross-module SQL lookups with provider/event contracts
Closed
#82 [Feature] Move tenant registry, tenant settings, tenant lifecycle, tenant switching, and tenant deletion orchestration into tenancy
Closed
#63 Move platform admin services and models into owning modules
Closed
#62 [Task] Move legacy admin handler, service, and model ownership out of the access compatibility implementation into access, tenancy, policy, audit, and core settings modules
Closed
#87 [Feature] Add tenant lifecycle tests with files/mail/campaign installed and absent
Closed
#92 [Feature] Move mail/retention effective policy display onto shared policy components
Closed
#98 [Feature] Add event producers for access, tenancy, policy, files, mail, and campaign actions
Closed
#99 [Feature] Add evidence bundle export as a later audit capability
Closed
#104 [Feature] Move audit admin pages to audit module
Closed
#103 [Feature] Move policy admin pages to policy module
Closed
#93 [Feature] Add regression tests for non-viable lower-level options being hidden or disabled
Closed
#90 [Feature] Add explain endpoints and UI component contract for policy source paths
Closed
#94 [Feature] Define typed PlatformEvent envelope with actor, tenant, subject, resource, correlation, causation, classification, and payload
Closed
#100 [Feature] Define admin route/nav contribution contract
Closed
#107 [Feature] Add WebUI module permutation builds
Closed
#101 [Feature] Move access admin pages to access module
Closed
#227 Codify interface ethics as a product-wide UI doctrine
Closed
#102 [Feature] Move tenant admin pages to tenancy module
Closed
#69 [Task] Mark DataGrid work as explicitly deferred
Closed
#75 [Feature] Move accounts, authentication, sessions, API keys, groups, memberships, roles, role assignments, and principal resolution into access
Closed
#164 [Task] Separate tenant lifecycle from membership/roles
Closed
#162 [Task] Inventory tenant model and tenant setting usage
Closed
#84 [Feature] Define TenantResolver and tenant-context protocols in the kernel
Closed
#83 [Feature] Keep memberships and role assignments in access
Closed
#80 [Feature] Define PrincipalResolver and related protocols in the kernel
Closed
#49 [Task] Replace feature-module direct user/group/tenant model imports
Closed
#52 [Task] Remove transitional boundary checker allowlist entries as each contract lands
Closed
#74 [Feature] Add manifest schema/versioning
Closed
#73 [Feature] Add OpenAPI/route collision validation
Closed
#66 [Feature] Add dependency-boundary checks that forbid direct optional module imports
Closed
#230 Unify tree and explorer navigation components across docs, mail, and files
Closed
#229 Finish MessageDisplayPanel consolidation for mail and campaign previews
Closed
#228 Centralize policy table and policy section components in core WebUI
Closed
#68 [Feature] Keep generated WebUI/test artifacts ignored
Closed
#4 [Bug] UI lists often start at index 2, why?
40 Issues created by 1 user
Opened
#228 Centralize policy table and policy section components in core WebUI
Opened
#229 Finish MessageDisplayPanel consolidation for mail and campaign previews
Opened
#230 Unify tree and explorer navigation components across docs, mail, and files
Opened
#231 [Feature] Target-state module update planner
Opened
#232 [Security] Harden module installer shell command hooks
Opened
#233 [Security] Redact installer run-record secrets
Opened
#234 [Security] Stop persisting UI API keys in localStorage
Opened
#235 [Security] Reject wildcard CORS with credentials at runtime
Opened
#236 [Security] Broaden audit/config secret redaction key matching
Opened
#237 [Security] Harden installer shell hook execution and command trust boundary
Opened
#238 [Security] Harden release-doctor shell command execution
Opened
#239 [Security] Centralize outbound URL policy for core fetches and health checks
Opened
#240 [Security] Review dynamic SQL text findings and add safe identifier helpers
Opened
#241 [Supply-chain] Pin Gitea workflow actions to immutable revisions
Opened
#242 [Security] Review dynamic module import trust boundary
Opened
#243 [Security] Fix audit report capture and duplicate-scan noise
Opened
#244 [Security] Lock audit toolbox dependencies flagged by OSV
Opened
#245 [Debt] Refactor high-complexity core installer/configuration/runtime functions
Opened
#246 [Feature] Customize theming from palettes to full appearance controls
Opened
#247 [Feature] Notification settings and preferences surface
Opened
#248 [Feature] Emit notifications for core module installer queue lifecycle
Opened
#249 [Debt] Centralize repeated WebUI API client request helpers
Opened
#250 [Debt] Define shared platform API schema primitives across access, admin, policy, and tenancy
Opened
#251 [Debt] Provide shared module runtime proxy helper for modules
Opened
#252 [Debt] Define shared SQLAlchemy change-tracking helpers for modules
Opened
#253 [Security audit] Centralize safe HTTP(S) fetch and URL validation in core
Opened
#254 [Security audit] Harden module installer subprocess command provenance
Opened
#255 [Security audit] Replace silent core exception handling with narrow logging
Opened
#256 [Security audit] Document safe SQLAlchemy text usage in migration helpers
Opened
#257 [Audit] Refactor core installer, catalog, and runtime validation complexity hotspots
Opened
#262 [Debt] Optimize dev-server reload behavior with many enabled modules
Opened
#258 [Task] Split auth session check from full user bootstrap
Opened
#259 [Debt] Add DB query timing and batch auth principal resolution
Opened
#260 [Debt] Add safe auth principal caching with explicit invalidation
Opened
#261 [Task] Add pagination and windowing for large address and calendar views
Opened
#263 [Bug] DataGrid filters must apply to the full result set, not only the current page
Opened
#264 [Feature] Aggregated statistics should drill down to their underlying data where useful
Opened
#265 [Feature] General configuration export and import
Opened
#266 [Feature] Configurable side rail ordering by system, tenant, and user preference
Opened
#267 Password fields: add generator action and overlay
3 Unresolved Conversations
Open
#224
[Feature] Platform theming system and visual appearance controls
Open
#40
[Debt] Remove legacy compatibility code only after migration/export compatibility requirements are explicit
Open
#37
[Feature] Allow module configuration so behavior can be controlled through settings