Commit Graph

6 Commits

Author SHA1 Message Date
ulsklyc a5cb4e63f1 "Claude Code Review workflow" 2026-04-05 13:39:59 +02:00
ulsklyc 2a2726cb04 "Claude PR Assistant workflow" 2026-04-05 13:39:58 +02:00
Ulas 7a520a24de ci: add GitHub Actions workflow to publish Docker image to GHCR
Builds and pushes to ghcr.io/ulsklyc/oikos on every push to main
and on version tags. Tags: branch name, semver, short SHA.
Uses Docker layer caching via GitHub Actions cache.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-02 21:58:39 +02:00
Ulas 7ef1389d44 fix(ci): remove Node.js 24.x from test matrix
Node 24 is not yet LTS and native dependencies (bcrypt, better-sqlite3,
sharp) fail to compile on it, causing CI failures.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-02 15:05:27 +02:00
Ulas 91c2e0ad98 fix: address CodeQL security findings (v0.5.2)
- Rate-limit SPA fallback route (missing rate limiting on fs access)
- Add csrfMiddleware to all state-changing auth routes (logout, create
  user, change password, delete user) — previously bypassed global CSRF
  middleware due to router registration order
- Fix incomplete vCard escaping: escape backslashes before other special
  characters to prevent injection via contact fields
- Restrict CI GITHUB_TOKEN to contents: read (least privilege)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-01 18:30:03 +02:00
Ulas f39152cf7e ci: add GitHub Actions workflow for automated tests
Runs npm test on push and pull requests to main.
Matrix covers Node.js 22.x and 24.x.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-01 11:42:56 +02:00