1
0

Commit Graph

  • 372ca5f66b Added security check report field and variable feature/security-checks Tobias Huttinger 2026-06-22 14:13:08 +02:00
  • 7a9f8e770a Added security check report settings and templating Tobias Huttinger 2026-06-22 14:00:14 +02:00
  • 0b7c08ba6b Added a confirmation dialog for security check danger zone Tobias Huttinger 2026-06-22 13:31:55 +02:00
  • 498afc7840 First version of the security module Tobias Huttinger 2026-06-22 13:19:05 +02:00
  • 0392043ee3 fix(helpdesk): fix user-select empty options — use nested row structure fallback main aminovfariz 2026-06-08 12:00:25 +02:00
  • e3dfdef76f fix(helpdesk): always load tenant users, not only when schema has user-select aminovfariz 2026-06-08 11:57:02 +02:00
  • 40b94fa891 fix(helpdesk): user-select as multi-select, store as JSON array aminovfariz 2026-06-08 11:51:50 +02:00
  • 0fabb0c478 fix(helpdesk): allow user-select in schema field type validation aminovfariz 2026-06-08 11:34:28 +02:00
  • 2968d5e386 feat(helpdesk): add user-select to schema editor field type dropdown aminovfariz 2026-06-08 11:04:25 +02:00
  • 9bc8799b6b feat(helpdesk): add user-select field type to handover protocol schema aminovfariz 2026-06-08 10:46:15 +02:00
  • e569e2d26c fix(helpdesk): fix manual domain value not submitted — use hidden input for domain_no aminovfariz 2026-06-08 10:22:19 +02:00
  • 57cb2f1017 ci: trigger GitHub Actions aminovfariz 2026-06-08 10:05:02 +02:00
  • 0fc2d3f2c3 feat(helpdesk): show manual domain input when customer has no domains aminovfariz 2026-06-08 10:04:27 +02:00
  • 2b230e756e fix(deploy): re-resolve php upstream on each request to survive container restarts aminovfariz 2026-06-08 09:58:28 +02:00
  • b049e2490b chore(deploy): add production deploy config (docker-compose + nginx) aminovfariz 2026-06-08 09:37:37 +02:00
  • 16fe1b0db3 fix(ci): skip codex skills sync on hosts without Codex installation aminovfariz 2026-06-08 09:29:00 +02:00
  • 322c9575f8 fix(css): wrap address-book-index.css in @layer pages block aminovfariz 2026-06-08 09:23:09 +02:00
  • 3ff302cc02 fix(css): add missing @layer pages declaration to address-book-index.css aminovfariz 2026-06-08 09:15:43 +02:00
  • c6a919652f fix(ci): install ripgrep in deploy workflow qa step aminovfariz 2026-06-08 09:10:48 +02:00
  • f4b08e4c73 fix(ci): install ripgrep on runner before qa-required scripts aminovfariz 2026-06-08 09:06:12 +02:00
  • db5c57ea5c fix(phpstan): remove unused Curl import from OidcHttpGateway aminovfariz 2026-06-05 15:01:49 +02:00
  • 0a56c741e8 fix(phpstan): simplify http_response_header check in OidcHttpGateway aminovfariz 2026-06-05 14:56:37 +02:00
  • 668a67c094 fix(tests): pass appTitle and appUrl to auth service constructors in tests aminovfariz 2026-06-05 14:51:47 +02:00
  • acf3229f3f fix(tests): replace appLogoUrlAbsolute with resolveAppUrl in auth services aminovfariz 2026-06-05 14:43:52 +02:00
  • 5367449d80 fix(ci): run db:migrate before tests so settings table exists aminovfariz 2026-06-05 14:38:52 +02:00
  • 68407b944e fix(tests): remove appTitle/appUrl from AuthServicesFactory constructor calls aminovfariz 2026-06-05 14:27:28 +02:00
  • c12d155e23 fix(tests): inject appTitle/appUrl into auth services to avoid DB calls in unit tests aminovfariz 2026-06-05 14:21:04 +02:00
  • 3f08f6189e fix(helpdesk): inject appTitle/appUrl into HandoverNotificationService to avoid DB calls in tests aminovfariz 2026-06-05 14:10:13 +02:00
  • b8fc55bcc2 ci: start php container for QA gates aminovfariz 2026-06-05 14:02:57 +02:00
  • 6cfc8e7533 ci: use PHP 8.5 aminovfariz 2026-06-05 14:00:55 +02:00
  • 2e26cce91f ci: run composer and QA gates directly on runner without Docker aminovfariz 2026-06-05 13:48:32 +02:00
  • 8e8ca4d5e7 ci: add GitHub Actions workflows aminovfariz 2026-06-05 13:41:19 +02:00
  • c8cf2892c9 ci: trigger pipeline after runner fix with node on host aminovfariz 2026-06-05 12:09:46 +02:00
  • 1ae3d5d984 ci: trigger pipeline after runner workspace mount fix aminovfariz 2026-06-05 12:01:13 +02:00
  • 2e316b2901 ci: trigger pipeline after switching runner to host mode aminovfariz 2026-06-05 11:59:33 +02:00
  • 925f8ec87e fix(ci): debug mounts via hostname inspect aminovfariz 2026-06-05 11:54:12 +02:00
  • 0486ebf2a2 fix(ci): debug runner container mounts to find host workspace path aminovfariz 2026-06-05 11:52:22 +02:00
  • 1d1f8479b6 fix(ci): set COMPOSE_PROJECT_NAME=breadcrumb-ci at job level for stable container names aminovfariz 2026-06-05 11:50:01 +02:00
  • 70d431cff5 fix(ci): install composer directly in runner container, not via docker run aminovfariz 2026-06-05 11:48:26 +02:00
  • 07cd2dd756 fix(ci): add path debug before composer install aminovfariz 2026-06-05 11:46:58 +02:00
  • 9668a23797 fix(ci): use GITHUB_WORKSPACE instead of pwd for composer docker run volume aminovfariz 2026-06-05 11:46:19 +02:00
  • 17ae333a39 fix(ci): install composer deps via docker run before compose up, force-recreate containers aminovfariz 2026-06-05 11:45:31 +02:00
  • 5df8abceaf fix(ci): force recreate containers with docker compose down before up aminovfariz 2026-06-05 11:44:08 +02:00
  • b0355791bb fix(ci): add container state diagnostics before composer install aminovfariz 2026-06-05 11:43:16 +02:00
  • a2ea9f385d fix(ci): debug - ls /var/www to find why composer.json not found aminovfariz 2026-06-05 11:42:23 +02:00
  • 03cdfa7702 fix(ci): wait for php container and use explicit workdir for composer install aminovfariz 2026-06-05 11:41:51 +02:00
  • 3dca38d1c2 fix(ci): run composer install inside php container before QA gates aminovfariz 2026-06-05 11:40:28 +02:00
  • 5e8273b952 fix(ci): start only php+db+memcached in CI, skip nginx (file mount fails in runner) aminovfariz 2026-06-05 11:39:45 +02:00
  • d47e45e9f8 fix(ci): create .env from .env.example before docker compose up in CI aminovfariz 2026-06-05 11:32:59 +02:00
  • 0e70e50abf feat(ci): add Gitea Actions deploy pipeline and fix prod image module assets aminovfariz 2026-06-05 11:22:47 +02:00
  • 9caa771a73 feat(helpdesk): add delete button on edit page, fix flash notifications aminovfariz 2026-06-01 15:51:36 +02:00
  • 1caa198286 feat(helpdesk): rework handover tabs and assign flow aminovfariz 2026-06-01 15:23:31 +02:00
  • 47a26d0ca6 test(helpdesk): add tests for assign, submitForReview, resendNotification and HandoverNotificationService aminovfariz 2026-06-01 14:59:10 +02:00
  • 88bd7caae5 feat(helpdesk): rework handover create wizard with mode selection aminovfariz 2026-06-01 14:50:30 +02:00
  • 1c1e82b352 fix(helpdesk): handle nested table key from DB::select in user dropdowns aminovfariz 2026-06-01 14:41:48 +02:00
  • 3f56f3f279 fix(helpdesk): replace Guard::hasAbility() with AuthorizationService in create wizard aminovfariz 2026-06-01 14:38:02 +02:00
  • c32a0f8c31 feat(helpdesk): Übergabe assignment workflow aminovfariz 2026-06-01 14:35:03 +02:00
  • 4f38911fce fix(docker): copy module web assets as real files in prod image aminovfariz 2026-05-29 11:50:45 +02:00
  • 0d078f233d fix: suppress open_basedir warning in favicon check, disable open_basedir in prod aminovfariz 2026-05-28 19:07:47 +02:00
  • ec596d35d4 fix(auth): extend stream-based HTTP to POST requests in OidcHttpGateway aminovfariz 2026-05-28 13:14:19 +02:00
  • 4e51d9e882 fix(auth): use file_get_contents for OIDC GET requests to work around libcurl 8.14/OpenSSL 3.5 TLS fingerprint rejection by Microsoft aminovfariz 2026-05-28 11:45:52 +02:00
  • 293807b92a chore: add .dockerignore for production image builds aminovfariz 2026-05-28 09:31:36 +02:00
  • 1b615a5e1c fix: update local docker and php config aminovfariz 2026-05-26 11:04:57 +02:00
  • cb2f429e0e feat(helpdesk): add empty Dashboard page with sidebar nav item aminovfariz 2026-05-26 11:01:35 +02:00
  • 873b75465e docs: important name change fs 2026-04-29 10:00:36 +02:00
  • 0a86d1b44b docs: Readme changes fs 2026-04-29 09:59:16 +02:00
  • 545bcc789b docs: replace ASCII umlaut fallbacks with proper äöüß across all .md fs 2026-04-29 09:57:22 +02:00
  • 2e73cb98b4 feat(console): add db:migrate CLI for idempotent core schema updates fs 2026-04-29 08:59:57 +02:00
  • 0c78dc4355 chore(setup): track config.php directly, slim README to setup checklist fs 2026-04-29 08:37:45 +02:00
  • f36b169f67 chore(seed): bake live test connections into init.sql + helpdesk migration fs 2026-04-29 08:27:47 +02:00
  • a5213977ca fix(helpdesk): drop stale require of removed app-flash partial fs 2026-04-29 07:59:51 +02:00
  • 6146b0bd00 test(architecture): catch missing container bindings statically fs 2026-04-27 08:54:21 +02:00
  • ca13fcd4a3 chore(i18n): drop user-lifecycle translation keys orphaned by cockpit cleanup fs 2026-04-27 08:44:17 +02:00
  • cd2c9c5741 fix(user-lifecycle): bind UserSettingsGateway in container fs 2026-04-26 21:30:34 +02:00
  • 06118c1b26 fix(user-lifecycle): track last-run state in core, not in audit log fs 2026-04-26 21:07:57 +02:00
  • 97d09fbd94 fix(user-lifecycle): aside actions use normal size + repair policy ref link fs 2026-04-26 20:43:28 +02:00
  • 157eb18610 refactor(user-lifecycle): drop redundant titles and duplicate run-now button fs 2026-04-26 20:38:15 +02:00
  • cc2cf3a254 feat(user-lifecycle): cockpit foundation — KPI row + aside quick actions fs 2026-04-26 20:36:28 +02:00
  • 004c25ac4b refactor(user-lifecycle-audit): drop unused filterOptions / listFilterOptions fs 2026-04-26 19:28:12 +02:00
  • 8c07c2c93a Revert "fix(user-lifecycle-panel): restore filter-options population" fs 2026-04-26 18:25:34 +02:00
  • a1c6d62d44 fix(user-lifecycle-panel): restore filter-options population fs 2026-04-26 18:21:27 +02:00
  • 144d8410a4 Embed user lifecycle audit into settings page fs 2026-04-26 18:03:42 +02:00
  • 01f5265eff test(architecture): drop stale actionFragmentContext mentions fs 2026-04-26 17:47:36 +02:00
  • 9ec10f5c02 refactor(action-context): remove unused fragment aggregator + building block fs 2026-04-26 17:34:53 +02:00
  • 95723cebd9 test(architecture): enforce defensive reads in shared form partials fs 2026-04-26 17:19:14 +02:00
  • 1bd4607b66 refactor(creates-batch): migrate roles/permissions/tenants-create (step 10) fs 2026-04-26 15:00:05 +02:00
  • d6be536fbf refactor(departments-create): migrate to actionCreateContext (step 9) fs 2026-04-26 14:44:09 +02:00
  • 480b57ef04 refactor(users-edit): migrate to actionEditContext (step 6) fs 2026-04-26 14:10:08 +02:00
  • a038d0921b refactor(permissions-edit): migrate to actionEditContext (step 5) fs 2026-04-26 10:49:04 +02:00
  • 1974aba6c2 refactor(roles-edit): migrate to actionEditContext (step 4) fs 2026-04-26 10:40:48 +02:00
  • dffc4db9a2 fix(routing): prevent login redirect loops on alias targets fs 2026-04-26 10:20:28 +02:00
  • d0544d3428 refactor(tenants-edit): migrate to actionEditContext (step 3) fs 2026-04-26 10:05:58 +02:00
  • e29e6c3136 fix(tenants-create): define $canUpdateTenant before form partial fs 2026-04-26 10:05:42 +02:00
  • 3742ad19c2 chore: enforce nginx-only setup and remove .htaccess fs 2026-04-26 09:50:40 +02:00
  • 5378209fed refactor(departments-edit): migrate to actionEditContext (step 2) fs 2026-04-25 23:52:27 +02:00
  • 3207d71244 harden(logout): enforce POST+CSRF and remove GET logout triggers fs 2026-04-25 23:35:03 +02:00
  • a24dc0c235 harden(rate-limiter): fail secure login scopes with cache fallback fs 2026-04-25 23:17:46 +02:00
  • f9c09f8746 refactor(actions): introduce action-context helpers (step 1) fs 2026-04-25 23:08:52 +02:00
  • 61c1d18e95 harden(api-login): remove account-state leak and equalize failure timing fs 2026-04-25 21:37:09 +02:00
  • e775ed2800 refactor(login): Stripe-style split layout + multi-step polish fs 2026-04-25 21:16:26 +02:00