zeekay
a5f9a92fdf
feat: add tools/cache backed by luxfi/cache, migrate JWKS cache
...
Add tools/cache package that re-exports luxfi/cache Cacher interface
and LRU, plus a TTL wrapper for time-based expiration. Migrate the
hand-rolled JWKS key cache in tools/security to use cache.TTL.
2026-03-01 18:08:08 -07:00
zeekay
22c14df4fa
refactor: pool manager → dbx, base re-exports
...
PoolManager now lives in hanzoai/dbx v1.13.0 (canonical home).
base/plugins/platform/db_pool.go is a thin re-export wrapper.
Stack: dbx (pool) → orm (models) → base (platform)
One and only one way: dbx.NewPoolManager()
2026-03-02 14:14:26 -07:00
zeekay
634eecbe21
migrate: pocketbase/tygoja → hanzoai/tygoja v0.0.2
...
Zero pocketbase references remaining in go.mod or Go source.
All deps now under hanzoai org: hanzoai/dbx, hanzoai/tygoja.
2026-03-02 13:57:26 -07:00
zeekay
d02a70442d
migrate: pocketbase/dbx → hanzoai/dbx v1.12.0
...
Drop-in replacement — same API, same package name (dbx).
75 Go files updated. Zero pocketbase references in imports.
2026-03-02 13:54:55 -07:00
zeekay
2e4b599f52
chore: update dependencies
2026-03-02 13:59:54 -07:00
zeekay
b4a26d51a8
fix: use published kms SDK module path, remove local replace
...
Replace the local filesystem replace directive with the properly
published module at github.com/hanzoai/kms/sdk/go v1.0.0. The
local path /Users/z/work/hanzo/kms/sdk/go doesn't exist in CI.
2026-03-02 03:16:33 -07:00
zeekay
60c7751bff
feat: add kms plugin for zero-knowledge encrypted secrets with FHE queries
2026-03-01 21:18:54 -07:00
zeekay
83bfa41a57
chore: bump Go 1.26.1
2026-03-02 13:52:30 -07:00
zeekay
a9231b85fe
chore: update Go and UI dependencies
...
Go: goja, fatih/color, fsnotify, grpc, protobuf, sqlite, temporal, x/* libs
UI: npm update (3 packages)
2026-03-02 10:30:35 -07:00
zeekay
bb905e0226
feat(tasks): embed Temporal durable execution into base plugin
...
Adds native Temporal SDK integration to the tasks plugin:
- durable.go: DurableStore client (submit/cancel/signal/status workflows)
- workflows.go: AgentTaskWorkflow, PipelineWorkflow, FanOutWorkflow
- activities.go: ExecuteTaskActivity with heartbeat + pluggable executor
- worker.go: Embedded Temporal worker (polls task queue in-process)
SQLite remains authoritative state. Temporal provides crash-safe execution
that survives restarts. When durable is enabled:
- Task create → SQLite + Temporal workflow submission
- Task cancel → SQLite + Temporal workflow cancellation
- Task signal → forwarded to Temporal workflow
Multi-tenant via namespace-per-org (TASKS_NAMESPACE=org-acme).
Env config: TASKS_ENABLED, TASKS_ADDRESS, TASKS_NAMESPACE, TASKS_QUEUE.
Default cloud: tasks.hanzo.ai:7233. Falls back to SQLite-only if unreachable.
2026-03-01 17:12:06 -07:00
zeekay
ee7255323b
fix: replace remaining pb references with base in ApiClient.js
2026-03-01 21:59:17 -07:00
zeekay
cf0252a28e
Merge remote-tracking branch 'upstream/master'
...
# Conflicts:
# apis/record_auth_with_otp.go
# core/base_backup.go
# go.mod
# go.sum
# plugins/jsvm/internal/types/generated/types.d.ts
# tools/router/rereadable_read_closer_test.go
# ui/dist/assets/AuthMethodsDocs-C2aSYmNv.js
# ui/dist/assets/AuthRefreshDocs-BapWJLRK.js
# ui/dist/assets/AuthWithOAuth2Docs-Ck_pnbL8.js
# ui/dist/assets/AuthWithOtpDocs-D8uWq_C5.js
# ui/dist/assets/AuthWithPasswordDocs-BQyMhAeO.js
# ui/dist/assets/BatchApiDocs-rvUuWLZE.js
# ui/dist/assets/CodeEditor-DrMyw8z_.js
# ui/dist/assets/CreateApiDocs-XWzcGuMB.js
# ui/dist/assets/DeleteApiDocs-CScE0aw3.js
# ui/dist/assets/EmailChangeDocs-CxOtrB4s.js
# ui/dist/assets/FieldsQueryParam-BzNUQIb5.js
# ui/dist/assets/FilterAutocompleteInput-Dm2G2coC.js
# ui/dist/assets/Leaflet-DyumpnOc.js
# ui/dist/assets/ListApiDocs-CdOzMZnr.js
# ui/dist/assets/PageInstaller-vIXdffAJ.js
# ui/dist/assets/PageOAuth2RedirectFailure-ClpyaW_B.js
# ui/dist/assets/PageOAuth2RedirectSuccess-BLZml1eK.js
# ui/dist/assets/PageRecordConfirmEmailChange-Cm3O2YD1.js
# ui/dist/assets/PageRecordConfirmPasswordReset-D0XfuL45.js
# ui/dist/assets/PageRecordConfirmVerification-CYyNYH_v.js
# ui/dist/assets/PageSuperuserConfirmPasswordReset-BvlQ0_9t.js
# ui/dist/assets/PageSuperuserRequestPasswordReset-gUPMclJZ.js
# ui/dist/assets/PasswordResetDocs-DMF1vqE0.js
# ui/dist/assets/RealtimeApiDocs-CNVij_C2.js
# ui/dist/assets/UpdateApiDocs-CwQ3ZhFQ.js
# ui/dist/assets/VerificationDocs-DUeWWjrS.js
# ui/dist/assets/ViewApiDocs-gocWxbTE.js
# ui/dist/assets/index-CWGqJiyp.js
# ui/dist/index.html
2026-03-01 19:27:21 -07:00
Gani Georgiev
6cca5b45ec
updated modernc.org/sqlite to 1.46.2 (SQLite 3.51.3)
2026-03-02 18:45:54 +02:00
zeekay
3e4423286b
fix: add luxfi/zap dependency, fix Send() signature for Docker build
2026-03-02 15:06:24 -07:00
zeekay
85387a93ab
feat(base): add PostgreSQL dialect and DBConnect
...
SQLDialect interface abstracts SQLite vs PostgreSQL SQL differences:
- JSON ops (json_extract vs ->>, json_each vs jsonb_array_elements)
- Date formatting (strftime vs to_char)
- Schema introspection (PRAGMA vs information_schema)
- ID generation (randomblob vs gen_random_bytes)
Adds PostgresDBConnect via pgx driver and DataDSN/AuxDSN config fields
for connecting Base to Neon serverless PostgreSQL instead of SQLite.
2026-03-01 18:37:50 -08:00
zeekay
22b973449a
perf: Go 1.26, multi-arch native build, BuildKit cache
...
- Upgrade Go 1.24 -> 1.26 in go.mod and Dockerfile
- Remove hardcoded GOOS/GOARCH for native multi-arch builds
- Add BuildKit cache mounts for go modules and build cache
- Bump Alpine 3.19 -> 3.21 in production stage
- Switch docker.yml to hanzoai reusable docker-build workflow
- Add .dockerignore to reduce build context
- Gitignore AI agent context files
2026-03-02 11:52:16 -08:00
zeekay
4b229fae5b
Merge remote-tracking branch 'upstream/master'
...
# Conflicts:
# core/record_field_resolver_multi_match.go
# ui/dist/assets/AuthMethodsDocs-ChShXLwE.js
# ui/dist/assets/AuthMethodsDocs-Cqvl0T_l.js
# ui/dist/assets/AuthMethodsDocs-DIqhS7qY.js
# ui/dist/assets/AuthRefreshDocs-CHakkNnn.js
# ui/dist/assets/AuthRefreshDocs-DLb1qree.js
# ui/dist/assets/AuthRefreshDocs-DXgrlMdk.js
# ui/dist/assets/AuthWithOAuth2Docs-Bl8VRxNv.js
# ui/dist/assets/AuthWithOAuth2Docs-DVBOel22.js
# ui/dist/assets/AuthWithOAuth2Docs-I213UiJ7.js
# ui/dist/assets/AuthWithOtpDocs-B9tL6gIN.js
# ui/dist/assets/AuthWithOtpDocs-C2PPm9-Z.js
# ui/dist/assets/AuthWithOtpDocs-qEMoMG3D.js
# ui/dist/assets/AuthWithPasswordDocs-B8JWDbPL.js
# ui/dist/assets/AuthWithPasswordDocs-BTHeYJwE.js
# ui/dist/assets/AuthWithPasswordDocs-D9rqgLpO.js
# ui/dist/assets/BatchApiDocs-BV4PYYXn.js
# ui/dist/assets/BatchApiDocs-DXa997am.js
# ui/dist/assets/BatchApiDocs-Di2Qe2dV.js
# ui/dist/assets/DeleteApiDocs-C3IINRwz.js
# ui/dist/assets/DeleteApiDocs-LfmVp4Uf.js
# ui/dist/assets/DeleteApiDocs-SU4XdGhJ.js
# ui/dist/assets/EmailChangeDocs-COx1USU5.js
# ui/dist/assets/EmailChangeDocs-D-qNHT_P.js
# ui/dist/assets/EmailChangeDocs-DpfXIE_V.js
# ui/dist/assets/FieldsQueryParam-BYe9ZK-G.js
# ui/dist/assets/FieldsQueryParam-L8vpHeF4.js
# ui/dist/assets/FieldsQueryParam-z0dGQ6uY.js
# ui/dist/assets/ListApiDocs-BCTT-AOz.js
# ui/dist/assets/ListApiDocs-C0_GwI7k.js
# ui/dist/assets/ListApiDocs-T9_aO-pW.js
# ui/dist/assets/PageInstaller-B22bivaN.js
# ui/dist/assets/PageInstaller-C0BBhyBx.js
# ui/dist/assets/PageInstaller-IYSwJhZW.js
# ui/dist/assets/PageOAuth2RedirectFailure-BjbpqlFj.js
# ui/dist/assets/PageOAuth2RedirectFailure-COyNF79R.js
# ui/dist/assets/PageOAuth2RedirectFailure-DPmGG9zv.js
# ui/dist/assets/PageOAuth2RedirectSuccess-6cMXLFAX.js
# ui/dist/assets/PageOAuth2RedirectSuccess-CdkCarGH.js
# ui/dist/assets/PageOAuth2RedirectSuccess-DSEIHeQL.js
# ui/dist/assets/PageRecordConfirmEmailChange-BYW-6ASg.js
# ui/dist/assets/PageRecordConfirmEmailChange-Bm1CIYvq.js
# ui/dist/assets/PageRecordConfirmEmailChange-BpaqOT4u.js
# ui/dist/assets/PageRecordConfirmPasswordReset--wx_u2lI.js
# ui/dist/assets/PageRecordConfirmPasswordReset-CoeY2Z_C.js
# ui/dist/assets/PageRecordConfirmPasswordReset-Ptya5bfe.js
# ui/dist/assets/PageRecordConfirmVerification-6xjF3T0O.js
# ui/dist/assets/PageRecordConfirmVerification-C1UTIIJh.js
# ui/dist/assets/PageRecordConfirmVerification-C4LixXvA.js
# ui/dist/assets/PageSuperuserConfirmPasswordReset-19z2IFg4.js
# ui/dist/assets/PageSuperuserConfirmPasswordReset-DwNi0ugQ.js
# ui/dist/assets/PageSuperuserConfirmPasswordReset-SMnDTRNi.js
# ui/dist/assets/PageSuperuserRequestPasswordReset-BpDW217f.js
# ui/dist/assets/PageSuperuserRequestPasswordReset-DK63qE6z.js
# ui/dist/assets/PageSuperuserRequestPasswordReset-bG02qLIM.js
# ui/dist/assets/PasswordResetDocs-CE67mLC0.js
# ui/dist/assets/PasswordResetDocs-CHAK0vma.js
# ui/dist/assets/PasswordResetDocs-Dap-N4rx.js
# ui/dist/assets/RealtimeApiDocs-BooTSQCb.js
# ui/dist/assets/RealtimeApiDocs-CoHmYVEx.js
# ui/dist/assets/RealtimeApiDocs-D7ds3fHt.js
# ui/dist/assets/VerificationDocs-B42AIoCQ.js
# ui/dist/assets/VerificationDocs-BS7b11zH.js
# ui/dist/assets/VerificationDocs-ZhkdFVIl.js
# ui/dist/assets/ViewApiDocs-BXmRLHZ1.js
# ui/dist/assets/ViewApiDocs-DM5JJQjh.js
# ui/dist/assets/ViewApiDocs-DRpxcuJR.js
# ui/public/fonts/source-sans-pro/source-sans-pro-v18-latin_cyrillic-700.woff2
# ui/public/fonts/ubuntu-mono/ubuntu-mono-v17-cyrillic_latin-700.woff2
2026-02-22 01:17:16 -08:00
Gani Georgiev
3f60ce04bf
updated golang.org/x/ deps
2026-02-18 19:44:13 +02:00
Gani Georgiev
a267ca7355
updated modernc.org/sqlite to 1.46.1
2026-02-18 19:24:38 +02:00
zeekay
86273e0e2c
feat: rebrand to Hanzo Base with GeoPoint field support and token management
2026-02-13 22:12:10 -08:00
Gani Georgiev
0b9a8bca7a
updated goja deps
2026-02-13 20:07:31 +02:00
Gani Georgiev
2bc5412114
bumped go deps
2026-02-11 15:02:38 +02:00
Gani Georgiev
800d7810a1
updated go deps
2026-02-01 09:34:17 +02:00
Gani Georgiev
501870c4d6
updated goja
2026-01-27 16:51:55 +02:00
Gani Georgiev
853f4bdcde
updated modernc.org/sqlite to v1.44.3
2026-01-23 00:44:23 +02:00
Gani Georgiev
ad2b6ee171
updated modernc.org/sqlite to 1.44.2
2026-01-18 18:57:18 +02:00
Gani Georgiev
e6ba5fb820
updated modernc.org deps
2026-01-16 06:27:55 +02:00
Gani Georgiev
2556c928bc
updated 0.35.1 changelog to reflect the modernc.org/sqlite 1.42.0 retraction and updated the driver to 1.44.0
2026-01-15 14:45:26 +02:00
Gani Georgiev
96ec7e8530
updated modernc.org/sqlite to 1.43.0
2026-01-10 10:57:33 +02:00
Gani Georgiev
93b0cb0f5b
updated modernc.org/sqlite to 1.42.2
2026-01-03 11:23:26 +02:00
Gani Georgiev
dc9a08b1f1
bumped go deps and updated jsvm types
2025-12-21 08:11:36 +02:00
Gani Georgiev
40bd754a6d
updated modernc.org/sqlite to v1.41.0
2025-12-19 17:11:21 +02:00
Gani Georgiev
1458f96cb7
updated goja
2025-12-12 09:05:04 +02:00
Gani Georgiev
5540f746e4
updated go deps
2025-12-12 08:50:33 +02:00
Gani Georgiev
d65b730aac
updated go deps and bumped min go github version
2025-12-02 19:28:27 +02:00
Gani Georgiev
4bf3db45a6
updated go deps
2025-11-22 09:36:50 +02:00
Gani Georgiev
7bd62dfb63
updated modernc.org/sqlite
2025-11-18 22:24:49 +02:00
Gani Georgiev
35c8bb0dcc
updated goja and migrate timestamp
2025-11-13 09:59:14 +02:00
Gani Georgiev
fddc6729f1
updated x/sync and other go deps
2025-11-12 15:17:36 +02:00
Gani Georgiev
210a097f98
updated modernc.org/sqlite to 1.40.0
2025-11-08 11:17:26 +02:00
Gani Georgiev
d737a9bb27
updated jsvm types
2025-10-23 13:15:03 +03:00
Gani Georgiev
18c5dc2c3b
updated modernc.org/sqlite
2025-10-15 20:27:35 +03:00
Gani Georgiev
b00dc50b18
updated go deps
2025-10-08 19:44:46 +03:00
Gani Georgiev
ec7549e1c3
updated go deps
2025-09-22 23:04:20 +03:00
Gani Georgiev
e331a027af
revert sqlite dep update
2025-09-22 21:30:54 +03:00
Gani Georgiev
1bda313e97
updated sqlite dep
2025-09-22 20:44:04 +03:00
Gani Georgiev
ddb179f8d0
bumped go deps
2025-09-06 14:22:07 +03:00
Gani Georgiev
f9bdaa0fa8
updated go deps
2025-08-22 21:24:39 +03:00
Gani Georgiev
2bc5bae4cd
regenerated JSVM types
2025-08-12 21:46:18 +03:00
Gani Georgiev
6b25a65980
updated modernc.org/sqlite to 1.38.2
2025-08-02 08:05:06 +03:00