Commit Graph
14682 Commits
Author SHA1 Message Date
kevinveenbirkenbachandClaude Sonnet 4.6 2413e54689 fix(web-svc-simpleicons): disable dashboard/css dependencies and fix canonical domain
Keep Simple Icons standalone by disabling dashboard and css shared
services, and rename canonical domain from 'icons.' to 'icon.' prefix.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-04 14:24:37 +02:00
Alejandro Roman e8cb7057c5 fix(playwright-mattermost): switch to universal logout and remove manual biber provisioning 2026-04-04 15:53:40 +04:00
kevinveenbirkenbachandClaude Sonnet 4.6 911bfdb445 fix(web-app-keycloak): disable iframe polling and isolate OIDC helper endpoints from Lua injection
Keycloak's checkLoginIframe causes errors in newer Chromium builds and breaks
cross-origin OIDC flows (e.g. sub-sub-domains). Disable it in favour of explicit
token refresh. Add nginx config to serve login-status-iframe.html and 3p-cookies/
without Lua/Matomo/oauth2_proxy injection, which would corrupt the iframe's
cookie-probe purpose and emit spurious CSP errors.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-04 02:15:07 +02:00
kevinveenbirkenbachandClaude Sonnet 4.6 9b633260b3 fix(sys-front-inj-matomo): use dot-prefix domain for cross-subdomain cookie tracking
Switch from wildcard (*.) to dot-prefix (.) notation for setCookieDomain and
setDomains. The dot-prefix follows RFC 6265 and covers all subdomain levels
including sub-sub-domains, while the wildcard only matched one level deep and
caused console errors in Chromium on OIDC/logout flows.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-04 01:49:14 +02:00
kevinveenbirkenbachandClaude Sonnet 4.6 113cfd3d53 fix(sys-svc-container): set nftables as Docker firewall backend on Arch Linux
Arch Linux uses nftables by default. Docker's default iptables backend
conflicts with nftables rules, causing broken container networking and
port forwarding. Explicitly configuring nftables ensures both coexist correctly.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-04 01:38:41 +02:00
kevinveenbirkenbach 6aca56da4f Merge branch 'main' into feature/taiga-ldap 2026-04-03 14:51:34 +02:00
kevinveenbirkenbach 227af9615d Merge branch 'feature/dashboard/playwright-integration' 2026-04-03 14:51:07 +02:00
kevinveenbirkenbach a98b72a083 feat(web-app-dashboard): use local cached Simple Icons assets
- switch icon.source from remote URLs to local static paths
- add local Simple Icons directory creation on host
- mount local static directory into dashboard container
- introduce DASHBOARD_SIMPLEICONS_* variables for paths and sync base URL
- download required SVGs into local static directory during refresh
- update Playwright test to validate cached image paths and dimensions
- enhance add_simpleicon_source filter:
  - return local static SVG paths instead of remote URLs
  - validate non-empty local_static_dir
- update unit tests for new behavior and error handling
- remove dependency on TLS lookup for Simple Icons base URL
2026-04-03 14:07:57 +02:00
Alejandro Roman 6d78c13ae1 Push CI test 2026-04-03 14:49:58 +04:00
Alejandro RomanandClaude Sonnet 4.6 ec47c688fd Add Playwright E2E tests for Mattermost (#538)
- New playwright.spec.js: two scenarios — SSO login via GitLab OAuth2
  endpoint (bypasses missing EnableSignInWithGitLab client config key in
  v11.5.1), channel view verification, API logout (bypasses nginx /logout
  intercept); and biber→administrator direct message flow using isolated
  browser contexts
- New playwright.env.j2: injects OIDC, Mattermost URL and user credentials
- tasks/01_setup.yml: create/add/convert administrator and biber users to
  team and gitlab SSO auth via LDAP uidNumber
- env.j2: add MM_EXPERIMENTALSETTINGS_DISABLELANDINGPAGE=true to prevent
  /landing SPA redirect in fresh browser contexts
- README.md: fix H1 so dashboard card renders "Explore Mattermost" link

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-03 12:49:13 +04:00
kevinveenbirkenbach ef93905501 Merge pull request #127 from kevinveenbirkenbach/fix/124-web-app-mailudns
Fix/124 web app mailudns
2026-04-03 10:21:20 +02:00
kevinveenbirkenbachandClaude Sonnet 4.6 6d5166e4c6 fix(mailu): enable DNSSEC on bare-metal by removing forward-zone and DinD conditionals
Unbound failed on laptop deployments because DOCKER_IN_CONTAINER was never
materialized as an Ansible fact, and root-hints/forward-zone were gated on it.
Remove the DinD-specific forward-zone block and make root-hints unconditional
so DNSSEC iterative resolution works on bare-metal hosts.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-02 11:32:47 +02:00
kevinveenbirkenbachandClaude Sonnet 4.6 9095a54b3d docs(agents): require make test before every deploy in iteration loop
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-02 01:54:15 +02:00
kevinveenbirkenbach e5a30262aa docs(requirements): clarify service registry refactoring rules 2026-04-02 01:12:29 +02:00
kevinveenbirkenbachandClaude Sonnet 4.6 bc20b295dd docs(requirements): require simplification of all touched files per principles.md
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-02 01:05:51 +02:00
kevinveenbirkenbachandClaude Sonnet 4.6 d5fbd741bc docs(requirements): add service registry refactoring requirement
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-02 01:02:43 +02:00
kevinveenbirkenbach 2807042172 Added __init__.py 2026-04-02 00:24:24 +02:00
kevinveenbirkenbachandClaude Sonnet 4.6 5b81aaabca fix(pixelfed): use POSIX-compliant -R flag for cp (SC2336)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-02 00:04:32 +02:00
kevinveenbirkenbach 5ea4011356 Merge branch 'main' into feature/taiga-ldap 2026-04-02 00:01:43 +02:00
kevinveenbirkenbachandClaude Sonnet 4.6 72d3f4c23e docs(tests): add README.md to all test directories with links to SPOT docs
Replace stale unit test README with a pointer to the canonical unit.md guide.
Add index README to tests/ and per-directory READMEs for e2e, integration,
lint, and regression — each linking to the matching docs/contributing page.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-01 23:52:45 +02:00
kevinveenbirkenbach 2ee4d96e5b Applied lint 2026-04-01 23:32:50 +02:00
kevinveenbirkenbach e0073bf11d fix(pixelfed): quote bootstrap process check command 2026-04-01 23:31:49 +02:00
kevinveenbirkenbach ab616590b6 fix(dashboard): avoid undefined regex_escape in asset wait logic 2026-04-01 23:31:44 +02:00
kevinveenbirkenbach bf182396de fix(dashboard): always verify TLS for simpleicons requests 2026-04-01 23:31:36 +02:00
kevinveenbirkenbach 0928e0ca37 docs(requirements): add contribution and agent requirement guides 2026-04-01 23:23:30 +02:00
kevinveenbirkenbach ef71fdede8 refactor(pixelfed): shorten entrypoint filename 2026-04-01 23:08:08 +02:00
kevinveenbirkenbach 60beb236a6 refactor(pixelfed): replace structural bootstrap test with code comments 2026-04-01 23:04:36 +02:00
kevinveenbirkenbach 5db1ff8e7f fix(services): resolve transitive shared asset dependencies 2026-04-01 23:01:09 +02:00
kevinveenbirkenbach a639768f4c docs(agents): mark applications defaults as generated 2026-04-01 22:47:49 +02:00
kevinveenbirkenbach dd7a3fd8d6 test(dashboard): relax playwright auth selectors 2026-04-01 22:27:51 +02:00
kevinveenbirkenbach b906f6869a docs(tests): forbid text-presence regression guards 2026-04-01 22:26:03 +02:00
kevinveenbirkenbach b4406020df fix(front-proxy): preserve explicit domain context 2026-04-01 22:24:53 +02:00
kevinveenbirkenbach 8141c4281a fix(pixelfed): stabilize bootstrap with managed entrypoint 2026-04-01 22:09:36 +02:00
kevinveenbirkenbach 98e1100ac6 Reapply "Feature/taiga ldap"
This reverts commit 1b600aeacc.
2026-04-01 20:19:12 +02:00
kevinveenbirkenbach b32d23077f Merge branch 'feature/taiga-ldap' of https://github.com/kevinveenbirkenbach/infinito-nexus-core into feature/taiga-ldap 2026-04-01 18:03:25 +02:00
kevinveenbirkenbachandClaude Sonnet 4.6 6228c81c47 fix(mailu): enable DNSSEC on bare-metal by removing forward-zone and DinD conditionals
Unbound failed on laptop deployments because DOCKER_IN_CONTAINER was never
materialized as an Ansible fact, and root-hints/forward-zone were gated on it.
Remove the DinD-specific forward-zone block and make root-hints unconditional
so DNSSEC iterative resolution works on bare-metal hosts.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-01 18:03:04 +02:00
kevinveenbirkenbachandClaude Sonnet 4.6 ef7affff70 docs: link security policies from SECURITY.md, pull-request.md, branch.md, and workflow.md
Adds a Repository Security Policies section to SECURITY.md pointing to
the new branch protection and repository settings docs, fixes Matrix and
phone contacts to proper hyperlinks, and cross-links the security policy
files from pull-request.md, branch.md, and workflow.md. Applies
documentation.md rules to all touched files (RFC 2119 usage, emoji
placement, link text).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-01 17:48:13 +02:00
kevinveenbirkenbach 070346b0d9 docs(agents): prefer make exec before redeploys 2026-04-01 16:15:01 +02:00
kevinveenbirkenbach c163b6d151 docs(agents): require fresh purge after dns failures 2026-04-01 16:03:55 +02:00
kevinveenbirkenbach c3fb04e91a refactor: share application dependency resolution 2026-04-01 15:13:04 +02:00
kevinveenbirkenbach 782162e385 agent: document serial unit test execution 2026-04-01 14:44:38 +02:00
kevinveenbirkenbachandClaude Sonnet 4.6 89cd0c16ff docs: add no-emoji rule for docs/agents/ headlines in documentation.md
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-01 13:01:14 +02:00
kevinveenbirkenbachandClaude Sonnet 4.6 eb75859905 docs: extract testing rules into docs/agents/action/testing.md and add TEST_PATTERN examples
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-01 12:55:54 +02:00
kevinveenbirkenbach 900981fd8c Merge pull request #119 from AlejandroRomanIbanez/feature/playwright-mailu
Everything seems fine :)
2026-04-01 12:21:36 +02:00
kevinveenbirkenbach 5c94b04219 Merge pull request #123 from infinito-nexus/revert-120-feature/taiga-ldap
Revert "Feature/taiga ldap"
2026-04-01 12:20:37 +02:00
kevinveenbirkenbach 1b600aeacc Revert "Feature/taiga ldap" 2026-04-01 12:19:49 +02:00
kevinveenbirkenbach a36270b64e Merge pull request #120 from kevinveenbirkenbach/feature/taiga-ldap
Everything seems ok - Merged :)
2026-04-01 12:19:28 +02:00
kevinveenbirkenbach 49fad676d6 Solved assets bug 2026-04-01 06:40:47 +02:00
kevinveenbirkenbach 9ccdde2b5b refactor(services): extract shared frontend service loader role 2026-04-01 04:05:44 +02:00
kevinveenbirkenbachandClaude Sonnet 4.6 a2d844e798 refactor: move frontend service loading out of sys-front-inj-all into global stage
Extracts the shared frontend service loader from sys-front-inj-all into
tasks/utils/load_services.yml and tasks/utils/_load_frontend_service.yml,
called once from tasks/stages/02_server.yml before web-svc and web-app
roles. This decouples service loading from per-app injection and makes
load order explicit via SERVICE_REGISTRY entry order. Updates docs,
comments, and adds an integration test enforcing the new SPOT.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-01 03:30:19 +02:00