Commit Graph

409 Commits

Author SHA1 Message Date
Jesse 0ff9dc039f test(audit): register membership app route
Staging Backend Quality Gate / validate (push) Failing after 11m19s
Staging Backend Quality Gate / publish (push) Has been skipped
2026-08-07 18:43:02 +08:00
Jesse_Chen 07223b6b4a fix(staging): extend Gitea publish timeout
Staging Backend Quality Gate / validate (push) Successful in 20m7s
Staging Backend Quality Gate / publish (push) Successful in 14m51s
2026-08-07 15:24:55 +08:00
Jesse_Chen a2de662d1b test: retire remaining rectification handoff contract
Staging Backend Quality Gate / validate (push) Successful in 10m52s
Staging Backend Quality Gate / publish (push) Failing after 55m13s
2026-08-07 13:47:10 +08:00
Jesse_Chen f3946eaa6f chore: retire legacy rectification runtime
Staging Backend Quality Gate / validate (push) Failing after 9m57s
Staging Backend Quality Gate / publish (push) Has been skipped
2026-08-07 12:55:32 +08:00
Jesse_Chen 28147b40d0 Merge origin/main into admin release candidate
Staging Backend Quality Gate / validate (push) Successful in 12m49s
Staging Backend Quality Gate / publish (push) Has been cancelled
2026-08-07 12:27:47 +08:00
Jesse_Chen 66a6c96a5c fix(admin): fail safe across migration and auth boundaries
The recovery migration crossed the identity and RBAC ledgers without guarding schema prerequisites, while unknown configuration, provider, and database failures escaped the admin authorization boundary as 500s. Keep recovery in the DB ledger with explicit prerequisite no-ops, and sanitize unknown authorization failures to the existing 503 path.
2026-08-07 12:08:58 +08:00
Jesse_Chen 754505d40a fix(admin): preserve revoked owners and 503 status
Owner recovery lived in the identity-only migration path and could clear historical revocations on conflict. Admin layout also rethrew authorization 503s, turning service-unavailable failures into 500 responses.\n\nMove recovery behind the RBAC migration sequence, exclude revoked candidates without mutating their history, and terminate layout redirects at a no-store 503 route.
2026-08-07 11:33:48 +08:00
Jesse e7482c49c6 fix(web): restore starter card state after click
Staging Backend Quality Gate / validate (push) Successful in 15m14s
Staging Backend Quality Gate / publish (push) Successful in 10m19s
2026-08-07 11:32:05 +08:00
Jesse_Chen 0d7e5a26d5 fix(admin): break denied-session redirect loop
Preserve 403/503 responses instead of redirecting them through the Caddy root, and recover Owner only for the sole loginable synced identity admin.
2026-08-07 11:06:13 +08:00
Jesse aebd1b56c9 docs(staging): clarify report auth smoke 2026-08-07 02:33:55 +08:00
Jesse 91a39f2528 docs(staging): close exact-SHA release acceptance 2026-08-07 02:30:59 +08:00
Jesse e718b2c6d9 fix(staging): refresh dual-host edge verification
Staging Backend Quality Gate / validate (pull_request) Successful in 17m22s
Staging Backend Quality Gate / publish (pull_request) Has been skipped
2026-08-07 01:46:47 +08:00
Jesse 3221b6a9a4 fix(staging): await public release identity
Staging Backend Quality Gate / validate (pull_request) Successful in 13m57s
Staging Backend Quality Gate / publish (pull_request) Has been skipped
2026-08-07 01:07:08 +08:00
Jesse f145f52b01 fix(staging): bound frontend quality build
Staging Backend Quality Gate / validate (pull_request) Successful in 11m6s
Staging Backend Quality Gate / publish (pull_request) Has been skipped
2026-08-07 00:06:45 +08:00
Jesse 56dbed0d93 docs(staging): record runtime role drift repair
Staging Backend Quality Gate / validate (pull_request) Successful in 14m11s
Staging Backend Quality Gate / publish (pull_request) Has been skipped
2026-08-06 22:35:33 +08:00
Jesse f3b78bfee1 Merge remote-tracking branch 'origin/main' into fix/staging-gate-retry-and-admin-audit
Staging Backend Quality Gate / validate (pull_request) Successful in 14m24s
Staging Backend Quality Gate / publish (pull_request) Has been skipped
# Conflicts:
#	docs/BUG_HISTORY.md
#	frontend/tests/admin-users-contract.test.ts
2026-08-06 22:11:41 +08:00
Jesse_Chen 9a3d0d440f fix(frontend): declare admin users runtime locally
Staging Backend Quality Gate / validate (push) Successful in 16m8s
Staging Backend Quality Gate / publish (push) Successful in 12m59s
2026-08-06 21:20:12 +08:00
Jesse 015f1e501e fix(admin): declare users route runtime locally
Staging Backend Quality Gate / validate (pull_request) Successful in 19m9s
Staging Backend Quality Gate / publish (pull_request) Has been skipped
2026-08-06 21:17:19 +08:00
Jesse c1061695c7 fix(staging): retry exact gate checkout 2026-08-06 20:47:38 +08:00
Jesse_Chen 9d8c73561f test(deploy): integrate billing admin rollout checks
Staging Backend Quality Gate / validate (push) Failing after 7m30s
Staging Backend Quality Gate / publish (push) Has been skipped
2026-08-06 20:15:50 +08:00
Jesse 3f61188b07 docs(staging): close controller fetch incident 2026-08-06 20:04:47 +08:00
Jesse 8473146773 fix(staging): deploy gate-attested controllers
Staging Backend Quality Gate / validate (pull_request) Successful in 14m1s
Staging Backend Quality Gate / publish (pull_request) Has been skipped
2026-08-06 19:18:04 +08:00
Jesse fa8698c95b docs(staging): close bounded fetch incident
Staging Backend Quality Gate / validate (pull_request) Successful in 12m46s
Staging Backend Quality Gate / publish (pull_request) Has been skipped
2026-08-06 18:00:40 +08:00
Jesse 52b467cbe5 docs(bugs): clarify recovered staging fetch stall
Staging Backend Quality Gate / validate (pull_request) Successful in 15m11s
Staging Backend Quality Gate / publish (pull_request) Has been skipped
2026-08-06 17:43:06 +08:00
Jesse 975f5c346d fix(staging): bound trusted main fetch retries 2026-08-06 17:40:41 +08:00
Jesse 3431956de1 docs(staging): record personal report acceptance evidence 2026-08-06 17:01:17 +08:00
Jesse 0ddbe11eda docs(bugs): record staging credential incident resolved
Staging Backend Quality Gate / validate (pull_request) Successful in 14m56s
Staging Backend Quality Gate / publish (pull_request) Has been skipped
2026-08-06 15:52:37 +08:00
Jesse cfc7af6b46 fix(staging): rotate SSH secret handling and env ownership
Staging Backend Quality Gate / validate (pull_request) Successful in 16m32s
Staging Backend Quality Gate / publish (pull_request) Has been skipped
2026-08-06 15:34:31 +08:00
Jesse a277efb8f4 docs(ops): record staging env ownership drift 2026-08-06 14:30:39 +08:00
Jesse eb4ebf7c73 docs(ops): record staging host key rotation guard 2026-08-06 14:24:20 +08:00
Jesse 8a475198e3 docs(bugs): record report gate regressions resolved
Staging Backend Quality Gate / validate (pull_request) Successful in 16m17s
Staging Backend Quality Gate / publish (pull_request) Has been skipped
2026-08-06 13:53:11 +08:00
Jesse 94f051f4d0 test(report): register personal reports in database fixture
Staging Backend Quality Gate / validate (pull_request) Successful in 15m5s
Staging Backend Quality Gate / publish (pull_request) Has been skipped
2026-08-06 13:36:23 +08:00
Jesse 58894b201b test(report): register report reader in capability audit
Staging Backend Quality Gate / validate (pull_request) Failing after 12m13s
Staging Backend Quality Gate / publish (pull_request) Has been skipped
2026-08-06 13:21:04 +08:00
Jesse c949b224fe docs(staging): add personal report acceptance and rollback runbook
Staging Backend Quality Gate / validate (pull_request) Failing after 15m33s
Staging Backend Quality Gate / publish (pull_request) Has been skipped
2026-08-06 12:59:36 +08:00
Jesse d89073d296 feat(report): add browser-rendered report and PDF print 2026-08-06 12:52:05 +08:00
Jesse 685ed00e2f feat(sync): enforce one-way yinduzhanxing import policy 2026-08-06 11:25:34 +08:00
Jesse_Chen 5957803de4 Merge GitHub upstream into Gitea primary 2026-08-05 11:13:34 +08:00
Jesse_Chen a5bf0c64e6 fix(rectification): preserve event date precision 2026-08-05 00:58:53 +08:00
Jesse_Chen 79fe2d6c69 fix: gate rectification candidate adoption flow 2026-08-04 16:47:23 +08:00
Jesse_Chen 393f352a8d fix(rectification): stream persisted candidate choices 2026-08-04 14:32:09 +08:00
Jesse_Chen 8f6f4f511b feat: allow users to accept rectification candidates 2026-08-04 11:39:33 +08:00
Jesse_Chen b9fe6a6be3 fix rectification session persistence 2026-08-04 00:38:16 +08:00
Jesse_Chen 64a6a55868 fix rectification agent empty tool stream 2026-08-03 23:33:52 +08:00
Jesse_Chen 9523ad23e8 fix rectification PostgreSQL birth dates 2026-08-03 17:28:26 +08:00
Jesse_Chen 0b1a40a5a5 fix(rectification): rehydrate persisted birth dates 2026-08-03 16:44:49 +08:00
Jesse_Chen 21a121a6a7 fix(rectification): accept persisted birth dates 2026-08-03 16:07:18 +08:00
Jesse_Chen 1131e9eb3b fix(rectification): replace v4 entry with agent opening 2026-08-03 15:11:19 +08:00
Jesse_Chen e7c877c413 fix(rectification): start agent opening on mount 2026-08-02 23:57:30 +08:00
Jesse_Chen 7abc053278 fix(rectification): expose agentic route and runtime trace 2026-08-01 18:18:43 +08:00
Jesse_Chen 9417148b0a feat(rectification): add agentic birth-time rectification MVP
Add a new agentic rectification flow that lets an LLM drive the full
jyotish-vedic-astrology methodology on the web, with the Python engine as
its computation layer (mirroring local Claude Code):

- mastra/rectification-tools.ts: 7 engine tools (gate/scan/score/diagnostics/
  candidate-features/confirm/save-birth-time)
- mastra/agentic-rectification.ts: agent mounting the full skill + tools
- lib/rectification-agentic/session.ts: server-owned profile + confirmation
  gate; the LLM can only persist the exact minute the engine's high-rigor
  gate confirmed
- app/api/rectification/agent/route.ts: NDJSON streaming endpoint with
  credit reserve/settle
- components/rectification-agentic-chat.tsx + entry switch: new sessions use
  the agentic chat; in-progress v4 cases still resume on the v4 panel
- migration 20260801000000: service-role RPC writing profiles.active_birth_time
  with baseline concurrency guard
- tests for tools + session (12 cases); full suite passes 1076

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-01 02:20:00 +08:00