-
3414571091
docs(07.4): add verification report — 8/8 must-haves confirmed
curo1305
2026-06-06 22:27:55 +02:00
-
ab4b6052a7
docs(07.4): add code review report — 3 critical, 3 warning, 2 info
curo1305
2026-06-06 22:23:41 +02:00
-
537bbd83e6
docs(phase-07.4): mark phase complete — 2/2 plans, 4 FGP tests passing, v0.1.3
curo1305
2026-06-06 22:17:42 +02:00
-
5bc92d996f
chore: merge executor worktree (worktree-agent-acc04a00e1a55bd86)
curo1305
2026-06-06 22:16:16 +02:00
-
-
5d95fcd686
docs(07.4-02): complete token fingerprinting plan — _compute_fgp + fgp validation + 4 FGP tests passing
curo1305
2026-06-06 22:15:14 +02:00
-
61b1e045c4
feat(07.4-02): update api/auth.py call sites, promote FGP tests, version bump 0.1.3
curo1305
2026-06-06 22:12:57 +02:00
-
1420180be7
feat(07.4-02): add fgp validation block to get_current_user in deps/auth.py
curo1305
2026-06-06 21:55:13 +02:00
-
25c9142fe0
feat(07.4-02): add _compute_fgp helper + extend create_access_token with fgp claim
curo1305
2026-06-06 21:54:47 +02:00
-
-
8c817705b7
docs(phase-07.4): update tracking after wave 0 — plan 07.4-01 complete
curo1305
2026-06-06 21:52:35 +02:00
-
1adddf8cf4
chore: merge executor worktree (worktree-agent-a37beb50341e88a90)
curo1305
2026-06-06 21:51:52 +02:00
-
-
bbd7a11935
docs(07.4-01): complete Wave 0 xfail stub plan — 4 FGP stubs, SUMMARY.md
curo1305
2026-06-06 21:50:27 +02:00
-
7833edbf3b
test(07.4-01): add Wave 0 xfail stubs for FGP-01..FGP-04
curo1305
2026-06-06 21:49:46 +02:00
-
-
22fcb53d9d
docs(07.4): create phase plan — token fingerprinting / token binding

curo1305andClaude Sonnet 4.6
2026-06-06 21:44:21 +02:00
-
de0f3fb7c3
docs(07.4): create phase plan — 2 plans, Wave 0 xfail stubs + Wave 1 fgp implementation

curo1305andClaude Sonnet 4.6
2026-06-06 20:22:29 +02:00
-
50668cc916
docs(state): record phase 7.4 context session
curo1305
2026-06-06 19:42:13 +02:00
-
78316b6ed7
docs(07.4): capture phase context
curo1305
2026-06-06 19:42:08 +02:00
-
169c2e7e29
docs(phase-07.3): mark complete — 3/3 plans, 9/9 tests, remember_me shipped

curo1305andClaude Sonnet 4.6
2026-06-06 19:19:17 +02:00
-
739d5b3d9a
chore: merge executor worktree (worktree-agent-a9c4907ff53a1a111)
curo1305
2026-06-06 18:07:31 +02:00
-
-
e0f2d6c71f
docs(readme): add JWT_PRIVATE_KEY + JWT_PUBLIC_KEY to Quick Start step 3

curo1305andClaude Sonnet 4.6
2026-06-06 18:00:15 +02:00
-
21e5d27c90
feat(07.3-03): frontend remember_me — checkbox + ref threading + store pass-through
curo1305
2026-06-06 17:23:02 +02:00
-
9cc11b5446
feat(07.3-03): backend remember_me — TTL split + cookie Max-Age + 3 promoted tests
curo1305
2026-06-06 17:21:14 +02:00
-
8be792ab4c
feat(07.3-02): ES256 JWT algorithm upgrade + startup rotation hook
curo1305
2026-06-06 17:19:50 +02:00
-
99f55825aa
test(07.3-01): Wave 0 Nyquist scaffold — 9 xfail stubs for ES256 + remember_me
curo1305
2026-06-06 17:13:50 +02:00
-
cc959171ba
docs(phase-07.3): update tracking after wave 1

curo1305andClaude Sonnet 4.6
2026-06-06 17:10:37 +02:00
-
c606191f17
fix(07.3): add global ES256 test key fixture to conftest.py

curo1305andClaude Sonnet 4.6
2026-06-06 17:10:28 +02:00
-
0f01a7aa82
chore: merge executor worktree (worktree-agent-ad0ae14e8e88d89cf)
curo1305
2026-06-06 17:05:56 +02:00
-
-
e7e3f527a5
docs(07.3-02): complete plan 02 SUMMARY — ES256 core upgrade + startup rotation
curo1305
2026-06-06 17:05:31 +02:00
-
0d1ab05e45
chore(07.3-02): wire JWT env vars in docker-compose, README key-gen, .env.example, bump to 0.1.2
curo1305
2026-06-06 17:03:59 +02:00
-
8d261b0509
security(07.3-02): add _rotate_tokens_on_algorithm_change lifespan hook + promote tests
curo1305
2026-06-06 17:02:45 +02:00
-
fd3f611546
security(07.3-02): ES256 signing — swap 4 JWT sites + config keys + promote tests
curo1305
2026-06-06 16:59:38 +02:00
-
-
1eb1d59c8d
docs(phase-07.3): update tracking after wave 0

curo1305andClaude Sonnet 4.6
2026-06-06 16:54:48 +02:00
-
b9e1f2a464
chore: merge executor worktree (worktree-agent-a6bcbfd85b592800f)
curo1305
2026-06-06 16:53:02 +02:00
-
-
-
-
b1e3d0bc73
docs(07.3-01): add plan execution SUMMARY.md
curo1305
2026-06-06 16:51:40 +02:00
-
fac0e781f9
test(07.3-01): extend test_settings_has_jwt_config — red until Plan 02
curo1305
2026-06-06 16:50:32 +02:00
-
5c1a1f9504
test(07.3-01): add Wave 0 xfail scaffold — 9 ES256/RM/CFG stubs
curo1305
2026-06-06 16:49:58 +02:00
-
-
4d0ada6d06
docs(phase-07.2): mark VERIFICATION.md passed — CR-02 gap resolved

curo1305andClaude Sonnet 4.6
2026-06-06 12:37:59 +02:00
-
2265aaaba4
docs(phase-07.2): mark VALIDATION.md complete — nyquist_compliant: true

curo1305andClaude Sonnet 4.6
2026-06-06 11:54:57 +02:00
-
b8e0e3adec
test(07.2): complete automated UAT — 7/7 pass

curo1305andClaude Sonnet 4.6
2026-06-06 11:47:59 +02:00
-
95c6db5c42
security(07.2): add SECURITY.md audit — JTI claim + Redis NBF revocation

curo1305andClaude Sonnet 4.6
2026-06-06 00:33:31 +02:00
-
646736d4d3
docs(phase-07.2): complete phase execution
curo1305
2026-06-06 00:12:09 +02:00
-
8e4e199062
docs(07.2): add phase verification report
curo1305
2026-06-06 00:11:44 +02:00
-
d3deef4f95
fix(07.2): add user_nbf write to password_reset_confirm — CR-02 gap closure
curo1305
2026-06-06 00:11:41 +02:00
-
7e23a3ed0e
docs(07.2): add code review report
curo1305
2026-06-06 00:07:51 +02:00
-
a20d27123d
docs(07.2): update tracking after Wave 2 — plan 07.2-03 complete
curo1305
2026-06-06 00:04:58 +02:00
-
d3588ba055
docs(07.2-03): complete Wave 2 plan — user_nbf write sites in all 4 security-event handlers SUMMARY
curo1305
2026-06-06 00:04:45 +02:00
-
ae11a6e913
security(07.2-03): add import time + user_nbf write to admin deactivation handler; promote stubs to PASSED
curo1305
2026-06-06 00:02:27 +02:00
-
efeb75b279
feat(07.2-03): add import time + user_nbf writes to api/auth.py (change_password, enable_totp, disable_totp)
curo1305
2026-06-06 00:01:19 +02:00
-
2665a5085d
docs(07.2): update tracking after Wave 1 — plan 07.2-02 complete
curo1305
2026-06-05 19:21:48 +02:00
-
9f90d46649
chore: merge executor worktree (worktree-agent-a9a1eb8685f2efc98) — Wave 1 plan 07.2-02
curo1305
2026-06-05 19:21:09 +02:00
-
-
61199752b5
docs(07.2-02): complete Wave 1 plan — jti claim + user_nbf NBF check SUMMARY
curo1305
2026-06-05 19:20:42 +02:00
-
30ad9fd015
security(07.2-02): add user_nbf Redis NBF check to get_current_user
curo1305
2026-06-05 19:19:06 +02:00
-
c00c1fbaa7
feat(07.2-02): add jti UUID claim to create_access_token
curo1305
2026-06-05 19:15:01 +02:00
-
-
a80b632ac8
docs(07.2): update tracking after Wave 0 — plan 07.2-01 complete
curo1305
2026-06-05 19:12:41 +02:00
-
8d44018f40
chore: merge executor worktree (worktree-agent-a2f182fa26b9780c8) — Wave 0 plan 07.2-01
curo1305
2026-06-05 19:11:20 +02:00
-
-
f0ba9e6d8e
docs(07.2-01): complete Wave 0 test scaffolding plan — SUMMARY
curo1305
2026-06-05 19:10:03 +02:00
-
eb1647293f
test(07.2-01): add FakeRedis to admin_client + NBF-write xfail stubs for deactivation
curo1305
2026-06-05 19:08:27 +02:00
-
097cdcadf8
test(07.2-01): add NBF-write xfail stubs for change_password/enable_totp/disable_totp
curo1305
2026-06-05 19:07:30 +02:00
-
b7994efd06
docs(07.3): create phase plan — ES256 algorithm upgrade

curo1305andClaude Sonnet 4.6
2026-06-05 19:07:25 +02:00
-
c686d90e1f
test(07.2-01): add JTI claim xfail stub to test_task2_auth_service.py
curo1305
2026-06-05 19:06:22 +02:00
-
49c63337db
test(07.2-01): mount FakeRedis on test_auth_deps app + add NBF-check xfail stubs
curo1305
2026-06-05 19:05:55 +02:00
-
-
7ee87c001b
docs(07.2): create phase plan — JTI claim + Redis NBF access-token revocation

curo1305andClaude Sonnet 4.6
2026-06-05 18:56:49 +02:00
-
e9b2d88ba0
docs(07.3): research phase — ES256 algorithm upgrade, startup rotation, remember-me TTL

curo1305andClaude Sonnet 4.6
2026-06-05 15:00:08 +02:00
-
35ff0d52fa
docs(07.2): research phase — JTI claim + Redis access-token revocation

curo1305andClaude Sonnet 4.6
2026-06-05 14:57:11 +02:00
-
eda91f7512
test(load): add Locust load test result CSVs

curo1305andClaude Sonnet 4.6
2026-06-05 14:44:59 +02:00
-
6ec2748b84
docs(readme): add project README for v0.1 alpha

curo1305andClaude Sonnet 4.6
2026-06-05 14:44:54 +02:00
-
14c1bf437b
docs(milestone): add v0.1 milestone audit report

curo1305andClaude Sonnet 4.6
2026-06-05 14:44:50 +02:00
-
18de84d1a9
docs(phase-06): add pattern map and code review fix report

curo1305andClaude Sonnet 4.6
2026-06-05 14:44:38 +02:00
-
1fd7395893
docs(state): clean up HANDOFF.json and mark all v1.0 phases complete

curo1305andClaude Sonnet 4.6
2026-06-05 14:44:31 +02:00
-
77135df803
docs(07.3): capture phase context
curo1305
2026-06-05 14:42:05 +02:00
-
50b9ffc1f1
docs(state): record phase 7.2 context session
curo1305
2026-06-05 14:37:55 +02:00
-
8c29af7f90
docs(07.2): capture phase context
curo1305
2026-06-05 14:37:50 +02:00
-
c9fe69db3a
docs(phase-07.1): add Nyquist VALIDATION.md — nyquist_compliant: true

curo1305andClaude Sonnet 4.6
2026-06-05 12:54:19 +02:00
-
8f8bfa5539
test(phase-07.1): add Nyquist validation tests for sessions_revoked frontend behavior

curo1305andClaude Sonnet 4.6
2026-06-05 12:54:14 +02:00
-
89375e6d93
docs(phase-07): mark VALIDATION.md complete — 10/11 tests green, nyquist_compliant

curo1305andClaude Sonnet 4.6
2026-06-05 12:50:07 +02:00
-
c38c6b1c01
feat(07.1): session revocation on privilege change — CR-01/CR-02/CR-03

curo1305andClaude Sonnet 4.6
2026-06-05 12:47:16 +02:00
-
8d060a5da4
docs(state): mark Phase 7.1 planned — ready to execute

curo1305andClaude Sonnet 4.6
2026-06-05 12:32:12 +02:00
-
a3a97430a2
docs(07.1): create phase plan — 2 waves, CR-01..03 session revocation

curo1305andClaude Sonnet 4.6
2026-06-05 12:27:24 +02:00
-
0fa23f5211
fix(auth): catch IntegrityError on register race → 409 + locustfile pre-auth rewrite

curo1305andClaude Sonnet 4.6
2026-06-05 12:25:04 +02:00
-
3f0e2ab44c
docs(state): record phase 7.1 context session
curo1305
2026-06-05 11:23:16 +02:00
-
a7ee4fbd23
docs(07.1): capture phase context
curo1305
2026-06-05 11:23:07 +02:00
-
d86664d3f7
docs(phase-6): mark validation nyquist_compliant — 13/13 tests green

curo1305andClaude Sonnet 4.6
2026-06-05 11:10:15 +02:00
-
8629bc0854
docs(phase-7): add security threat verification — 12/12 CLOSED

curo1305andClaude Sonnet 4.6
2026-06-05 10:50:44 +02:00
-
1a625ec365
docs(state): mark Phase 7 complete — v1.0 milestone done

curo1305andClaude Sonnet 4.6
2026-06-05 10:44:24 +02:00
-
e58cb1eb01
docs(07-uat): mark all 11 UAT tests pass — phase 07 complete

curo1305andClaude Sonnet 4.6
2026-06-05 09:30:41 +02:00
-
76ebc3e96e
fix(07): add status field to _doc_to_dict + regression test

curo1305andClaude Sonnet 4.6
2026-06-05 09:30:03 +02:00
-
3b11b9a596
feat(07-uat): admin AI panel UX enhancements + DocumentCard status indicators

curo1305andClaude Sonnet 4.6
2026-06-05 09:26:02 +02:00
-
ac2dded35b
fix(celery+lmstudio): PYTHONPATH for forked workers + qwen3.5-9b thinking model support

curo1305andClaude Sonnet 4.6
2026-06-05 00:00:26 +02:00
-
ca43e653aa
fix(07): replace autodiscover_tasks with explicit imports — tasks/document_tasks not at tasks.tasks path

curo1305andClaude Sonnet 4.6
2026-06-04 23:35:15 +02:00
-
1f0808c303
docs(07-05): add plan summary — Tasks 1-3 complete, Task 4 human checkpoint pending
curo1305
2026-06-04 23:24:09 +02:00
-
c45d9e470d
feat(07-05): DocumentCard classification_failed badge + Re-analyze button + Vitest coverage
curo1305
2026-06-04 23:23:12 +02:00
-
0db412d66c
feat(07-05): frontend AI config client helpers + AdminAiConfigTab system section + Vitest tests
curo1305
2026-06-04 23:22:08 +02:00
-
e678930b8d
feat(07-05): admin AI-config endpoints + load_provider_config_by_id + atomic is_active flip
curo1305
2026-06-04 23:19:40 +02:00
-
fb4ce293ae
fix(06): CR-07 update test to use event_type prefix instead of full type

curo1305andClaude Sonnet 4.6
2026-06-04 23:14:25 +02:00
-
21366bd288
fix(06): WR-09 show error message when audit log fetch fails

curo1305andClaude Sonnet 4.6
2026-06-04 23:12:46 +02:00
-
7cd29e9454
fix(06): WR-07 replace print() with structlog for cloud delete errors

curo1305andClaude Sonnet 4.6
2026-06-04 23:12:20 +02:00
-
b0d2406acd
fix(06): WR-04 add 10.0.0.0/8 to trusted proxy CIDR list

curo1305andClaude Sonnet 4.6
2026-06-04 23:11:52 +02:00
-
013802aa74
fix(06): WR-03 fix locust load test document list shape mismatch

curo1305andClaude Sonnet 4.6
2026-06-04 23:11:38 +02:00
-
4a5719311b
fix(06): WR-01 reset auth_limiter between tests to prevent 429 cross-contamination

curo1305andClaude Sonnet 4.6
2026-06-04 23:11:23 +02:00
-
10970d9557
fix(06): CR-07 validate event_type against allowlist before LIKE filter

curo1305andClaude Sonnet 4.6
2026-06-04 23:11:07 +02:00
-
a37a91071c
fix(06): CR-06 emit request_complete log line with duration_ms and status_code

curo1305andClaude Sonnet 4.6
2026-06-04 23:10:25 +02:00