ilia
0a9223c943
test: add Playwright e2e smoke suite for punimtag dev
...
CI / skip-ci-check (pull_request) Successful in 4s
CI / docker-ci (pull_request) Successful in 5s
CI / secret-scan (pull_request) Successful in 10s
CI / e2e (pull_request) Successful in 46s
Add an e2e/ Playwright harness (via @levkin/playkit) that smoke-tests
the public DEV host: login page loads, sign-out never redirects to a
LAN host, FastAPI /health responds, and forgot-password mail lands in
Mailtrap with a public reset link (Kolby #56/#57 regressions).
Wire it into Gitea Actions as a new `e2e` job (self-hosted runner,
Chromium via Playwright), gated behind the existing skip-ci-check.
Add npm root scripts (install:e2e, test:e2e) and gitignore e2e build
artifacts (node_modules, reports, .env).
2026-07-14 17:11:38 -04:00
ilia
44f3d696e4
Merge pull request 'feat: add dark mode and audit viewer-frontend accessibility' ( #59 ) from a11y/dark-mode-and-focus-management into dev
2026-07-14 15:25:46 -05:00
ilia
c011c8078e
feat: add dark mode and audit viewer-frontend accessibility
...
CI / skip-ci-check (pull_request) Successful in 4s
CI / docker-ci (pull_request) Successful in 6s
CI / secret-scan (pull_request) Successful in 11s
Add next-themes light/dark/system theming with an accessible toggle
in every header, and close out an a11y pass across the viewer app:
skip-to-content link, main landmarks and heading hierarchy on every
route, focus-trapped dialog semantics for the photo viewer modals,
aria-label/live-region coverage for dynamic messages and icon
buttons, and dark: variants for previously light-only colors.
2026-07-14 16:24:51 -04:00
ilia
e54c60912c
Merge pull request 'fix: prevent sign-out crash and surface real email-send failures' ( #58 ) from fix/logout-crash-and-email-delivery into dev
2026-07-14 12:14:53 -05:00
ilia
bb09159133
fix: prevent sign-out crash and surface real email-send failures
...
CI / skip-ci-check (pull_request) Successful in 4s
CI / docker-ci (pull_request) Successful in 6s
CI / secret-scan (pull_request) Successful in 9s
- NextAuth session/jwt callbacks no longer return null (the client
useSession() hook chokes on a null session, crashing the app on
sign-out for deactivated/refreshed sessions) — fixes #57
- UserMenu/Header sign-out handlers close the Manage Users overlay and
popover before calling signOut(), and no longer let a rejected
signOut() promise go unhandled
- Added an app-level error boundary as a safety net for any remaining
client render errors
- Registration and forgot-password flows now tell the user honestly
when the confirmation/reset email failed to send instead of always
claiming success — related to #56
- lib/email.ts throws a clear, actionable error when neither
SMTP nor Resend is configured, instead of a cryptic SDK error
- Documented required SMTP/Resend env vars in DEPLOYMENT_CHECKLIST.md
(were missing entirely, which is why no confirmation/reset emails
were ever sent in deployed environments) — fixes #56
2026-07-14 12:44:33 -04:00
ilia
3e39f978f6
Merge pull request 'docs: close shipped triage issues; leave #43/#44 open' ( #54 ) from docs/close-shipped-issues into dev
CI / skip-ci-check (push) Successful in 6s
CI / docker-ci (push) Successful in 7s
CI / secret-scan (push) Successful in 12s
2026-07-09 19:41:40 -05:00
ilia
1bfc5adb6f
docs: close shipped triage issues; leave #43/#44 open
CI / skip-ci-check (pull_request) Successful in 7s
CI / docker-ci (pull_request) Successful in 8s
CI / secret-scan (pull_request) Successful in 12s
2026-07-09 20:41:18 -04:00
ilia
4f001e7887
Merge pull request 'docs: Postgres .179 + refresh next-steps' ( #53 ) from docs/fix-postgres-179-and-next-steps into master
CI / skip-ci-check (push) Successful in 6s
CI / docker-ci (push) Successful in 7s
CI / secret-scan (push) Successful in 15s
2026-07-09 14:17:07 -05:00
ilia
739ab17425
docs: retarget Postgres to .179 and refresh next-steps
...
CI / skip-ci-check (pull_request) Successful in 8s
CI / docker-ci (pull_request) Successful in 7s
CI / secret-scan (pull_request) Successful in 14s
Update deploy docs off dead .181, refresh FIXES_2026-07-09, and point
.notes/task_list at Gitea issues as source of truth.
2026-07-09 15:13:31 -04:00
ilia
eeb00339da
Merge pull request 'Release: merge dev into master (open-issue triage + thumb cache)' ( #52 ) from dev into master
...
CI / skip-ci-check (push) Successful in 6s
CI / docker-ci (push) Successful in 7s
CI / secret-scan (push) Successful in 12s
Reviewed-on: #52
2026-07-09 14:03:17 -05:00
ilia
3a4bfa9988
Merge pull request 'fix: open-issue triage (#21,#26,#45,#46,#47,#30-33)' ( #51 ) from fix/open-issues-triage into dev
...
CI / skip-ci-check (pull_request) Successful in 6s
CI / docker-ci (pull_request) Successful in 7s
CI / secret-scan (pull_request) Successful in 12s
Reviewed-on: #51
2026-07-09 13:58:27 -05:00
ilia
3769c897b0
perf: disk-cache grid thumbnails and document 2026-07-09 fixes
...
CI / skip-ci-check (pull_request) Successful in 6s
CI / docker-ci (pull_request) Successful in 7s
CI / secret-scan (pull_request) Successful in 12s
Cache resized thumbs under .cache/photo-thumbnails (360px) so repeat
grid loads skip Sharp. Document ticket/infra fixes; drop unused SVGs.
2026-07-09 14:54:08 -04:00
ilia
ffddeca268
fix: address open triage issues (#21,#26,#45,#46,#47,#30-33)
...
CI / skip-ci-check (pull_request) Successful in 6s
CI / docker-ci (pull_request) Successful in 7s
CI / secret-scan (pull_request) Successful in 11s
- #45 : re-read local folder when recursive checkbox toggles
- #47 : clear Identify crop spinner when image is already cached
- #46 : search selected people by person_ids; AND for "First Last"
- #21 : enqueue network import without blocking API walk
- #26 : serve resized grid thumbnails for photos
- #30/#31/#33: re-enable small-face filters in auto-match
2026-07-09 14:42:08 -04:00
ilia
2dab2aa7f9
Merge pull request 'PunimTag Web Application - Major Feature Release' ( #1 ) from dev into master
...
CI / skip-ci-check (push) Successful in 6s
CI / docker-ci (push) Successful in 9s
CI / secret-scan (push) Successful in 12s
Reviewed-on: #1
2026-07-09 12:20:31 -05:00
ilia
d69ad1576d
Merge pull request 'chore: merge master into dev (sync homelab CI bootstrap)' ( #50 ) from chore/sync-ci-from-master into dev
CI / skip-ci-check (pull_request) Successful in 10s
CI / docker-ci (pull_request) Successful in 11s
CI / secret-scan (pull_request) Successful in 16s
2026-05-29 21:52:46 -05:00
ilia
f0529e8274
chore: merge master into dev (sync homelab CI bootstrap)
...
CI / skip-ci-check (pull_request) Successful in 9s
CI / docker-ci (pull_request) Successful in 11s
CI / secret-scan (pull_request) Successful in 15s
Resolve add/add conflicts in CI files by adopting the homelab Gitea
Actions workflow from master (#48 ), replacing the legacy dev ci.yml.
2026-05-29 22:52:19 -04:00
ilia
5144d9a3b0
Merge pull request 'Add homelab Gitea Actions CI (generic)' ( #48 ) from ci/bootstrap-gitea-actions-docker into master
CI / skip-ci-check (push) Successful in 11s
CI / docker-ci (push) Successful in 11s
CI / secret-scan (push) Successful in 16s
CI / skip-ci-check (pull_request) Successful in 10s
CI / docker-ci (pull_request) Successful in 11s
CI / secret-scan (pull_request) Successful in 16s
2026-05-29 21:46:27 -05:00
ilia
2db7ee88c9
ci: sync gitleaks allowlist
CI / skip-ci-check (pull_request) Successful in 9s
CI / docker-ci (pull_request) Successful in 11s
CI / secret-scan (pull_request) Successful in 19s
2026-05-29 21:31:59 -05:00
ilia
c0b09b1d6b
ci: refresh workflow (re-run pipelines)
2026-05-29 21:31:56 -05:00
ilia
2658bc7b07
ci: sync gitleaks allowlist
CI / skip-ci-check (pull_request) Successful in 10s
CI / docker-ci (pull_request) Successful in 12s
CI / secret-scan (pull_request) Successful in 18s
2026-05-29 21:28:30 -05:00
ilia
7279c57955
ci: refresh workflow (re-run pipelines)
2026-05-29 21:28:28 -05:00
ilia
e2f980ad1a
ci: sync gitleaks allowlist
CI / skip-ci-check (pull_request) Successful in 12s
CI / docker-ci (pull_request) Successful in 14s
CI / secret-scan (pull_request) Successful in 18s
2026-05-29 21:24:22 -05:00
ilia
60c57bc351
ci: refresh workflow (re-run pipelines)
2026-05-29 21:24:13 -05:00
ilia
ef5d4df233
ci: add homelab gitleaks allowlist
CI / skip-ci-check (pull_request) Successful in 10s
CI / docker-ci (pull_request) Successful in 11s
CI / secret-scan (pull_request) Successful in 21s
2026-05-29 21:19:59 -05:00
ilia
d876a67244
ci: refresh workflow (re-run pipelines)
2026-05-29 21:19:56 -05:00
ilia
4fd6c4f24c
ci: refresh workflow (re-run pipelines)
CI / skip-ci-check (pull_request) Successful in 9s
CI / docker-ci (pull_request) Successful in 11s
CI / secret-scan (pull_request) Failing after 27s
2026-05-29 20:31:01 -05:00
ilia
eaa03d115b
ci: refresh workflow (re-run pipelines)
CI / skip-ci-check (pull_request) Successful in 10s
CI / docker-ci (pull_request) Successful in 12s
CI / secret-scan (pull_request) Failing after 31s
2026-05-29 20:28:42 -05:00
ilia
e6bd689a22
ci: sync workflow template
CI / skip-ci-check (pull_request) Successful in 9s
CI / docker-ci (pull_request) Successful in 11s
CI / secret-scan (pull_request) Failing after 36s
2026-05-29 20:26:18 -05:00
ilia
d21741c5b0
ci: refresh workflow (re-run pipelines)
CI / skip-ci-check (pull_request) Successful in 10s
CI / docker-ci (pull_request) Successful in 11s
CI / secret-scan (pull_request) Failing after 25s
2026-05-29 20:20:47 -05:00
ilia
9cfe05bd96
ci: sync workflow template (node container + host fixes)
CI / skip-ci-check (pull_request) Successful in 9s
CI / docker-ci (pull_request) Successful in 14s
CI / secret-scan (pull_request) Failing after 25s
2026-05-29 20:15:07 -05:00
ilia
c6fe7cbd3a
ci: add homelab Gitea Actions workflow (ci-docker.yml)
CI / skip-ci-check (pull_request) Failing after 8s
CI / docker-ci (pull_request) Has been skipped
CI / secret-scan (pull_request) Has been skipped
2026-05-29 16:15:08 -05:00
ilia
85d5c120d4
Updated
2025-09-15 12:16:01 -04:00
ilia
cb61d24bc3
Remove photos database from tracking
2025-09-03 17:20:51 -04:00
ilia
b4d9f55691
Clean repository: remove photos from history, update gitignore
2025-09-03 17:20:31 -04:00
ilia
07e45950b6
Update gitignore and add run script
2025-09-03 17:13:36 -04:00
ilia
0e66b2253f
Update project documentation and structure; enhance README, finalize project reorganization, and improve testing standards.
2025-09-03 17:07:17 -04:00
ilia
f4a83b3c40
remove photos
2025-08-14 17:22:28 -08:00
ilia
455bdac187
Pushing code to migrate git
2025-08-15 00:57:39 -08:00
ilia
53f3e8a44d
Add comprehensive README documentation
2025-07-16 17:28:54 -08:00
ilia
79284d0a5c
Add punimtag.py script and update requirements.txt
2025-07-16 12:52:02 -08:00
ilia
9cf63b887b
Update requirements.txt with all dependencies
2025-07-15 18:48:37 -08:00
ilia
58931bfe59
Add requirements.txt with installed dependencies
2025-07-15 18:47:04 -08:00
ilia
3533d3c165
Initial commit with .gitignore
2025-07-15 18:40:04 -08:00