mirror of
https://github.com/hanzoai/base.git
synced 2026-11-02 20:08:14 +00:00
* feat(base): cloud.Mount entry point per HIP-0106 Adds pkg/base/mount.go exposing the canonical Mount(app *zip.App, deps cloud.Deps) error contract. cmd/cloud imports this package via the blank-import side-effect; init() registers base with cloud.Registry at order 60 — after iam (50) and kms (10) so the per-tenant SQLite substrate is up before subsystems that need it. The mount strategy is "wrap, don't rewrite": Mount constructs a Base instance with the per-deployment data dir, runs the existing Bootstrap (data + aux DB, migrations, cached collections, settings reload), builds the http.Handler from apis.NewRouter(app).BuildMux(), and attaches it under /v1/base/* + /healthz via zip's net/http adaptor. /v1/base/health and /v1/base/readyz are native zip handlers so probes work even when Bootstrap refuses to boot. DATA_DIR and BASE_API_PREFIX env vars are set inside Mount so Base's NewWithConfig path picks up the cloud-scoped data directory and the /v1/base prefix without any flag wiring. go.mod gains require + replace stanzas for hanzoai/cloud and hanzoai/zip; matches the kms / vfs convention. The standalone base binary is unchanged. schema/base.zap declares the minimum ZAP-typed surface (Health) needed by the Mount contract; richer ZAP handlers will land alongside the in-process BaseClient interface from cloud/pkg/cloud/deps.go. * refactor: collapse pkg/base/ → root for clean import path Subsystem code lives in package base at repo root. Importers now use `github.com/hanzoai/base` (no /pkg/base/ nesting). Standalone shim moved to cmd/base/ where applicable. Per Hanzo Go-stdlib pattern: repo IS the package. * refactor: flatten import path — github.com/hanzoai/cloud (drop /pkg/cloud)
1 line
2.6 KiB
JSON
1 line
2.6 KiB
JSON
{"rustc_fingerprint":4071709193220320478,"outputs":{"7971740275564407648":{"success":true,"status":"","code":0,"stdout":"___\nlib___.rlib\nlib___.dylib\nlib___.dylib\nlib___.a\nlib___.dylib\n/Users/z/.rustup/toolchains/stable-aarch64-apple-darwin\noff\npacked\nunpacked\n___\ndebug_assertions\npanic=\"unwind\"\nproc_macro\ntarget_abi=\"\"\ntarget_arch=\"aarch64\"\ntarget_endian=\"little\"\ntarget_env=\"\"\ntarget_family=\"unix\"\ntarget_feature=\"aes\"\ntarget_feature=\"crc\"\ntarget_feature=\"dit\"\ntarget_feature=\"dotprod\"\ntarget_feature=\"dpb\"\ntarget_feature=\"dpb2\"\ntarget_feature=\"fcma\"\ntarget_feature=\"fhm\"\ntarget_feature=\"flagm\"\ntarget_feature=\"fp16\"\ntarget_feature=\"frintts\"\ntarget_feature=\"jsconv\"\ntarget_feature=\"lor\"\ntarget_feature=\"lse\"\ntarget_feature=\"neon\"\ntarget_feature=\"paca\"\ntarget_feature=\"pacg\"\ntarget_feature=\"pan\"\ntarget_feature=\"pmuv3\"\ntarget_feature=\"ras\"\ntarget_feature=\"rcpc\"\ntarget_feature=\"rcpc2\"\ntarget_feature=\"rdm\"\ntarget_feature=\"sb\"\ntarget_feature=\"sha2\"\ntarget_feature=\"sha3\"\ntarget_feature=\"ssbs\"\ntarget_feature=\"vh\"\ntarget_has_atomic=\"128\"\ntarget_has_atomic=\"16\"\ntarget_has_atomic=\"32\"\ntarget_has_atomic=\"64\"\ntarget_has_atomic=\"8\"\ntarget_has_atomic=\"ptr\"\ntarget_os=\"macos\"\ntarget_pointer_width=\"64\"\ntarget_vendor=\"apple\"\nunix\n","stderr":""},"17747080675513052775":{"success":true,"status":"","code":0,"stdout":"rustc 1.95.0 (59807616e 2026-04-14)\nbinary: rustc\ncommit-hash: 59807616e1fa2540724bfbac14d7976d7e4a3860\ncommit-date: 2026-04-14\nhost: aarch64-apple-darwin\nrelease: 1.95.0\nLLVM version: 22.1.2\n","stderr":""},"11652014622397750202":{"success":true,"status":"","code":0,"stdout":"___.wasm\nlib___.rlib\n___.wasm\nlib___.a\n/Users/z/.rustup/toolchains/stable-aarch64-apple-darwin\noff\n___\ndebug_assertions\npanic=\"abort\"\nproc_macro\ntarget_abi=\"\"\ntarget_arch=\"wasm32\"\ntarget_endian=\"little\"\ntarget_env=\"\"\ntarget_family=\"wasm\"\ntarget_feature=\"bulk-memory\"\ntarget_feature=\"multivalue\"\ntarget_feature=\"mutable-globals\"\ntarget_feature=\"nontrapping-fptoint\"\ntarget_feature=\"reference-types\"\ntarget_feature=\"sign-ext\"\ntarget_has_atomic=\"16\"\ntarget_has_atomic=\"32\"\ntarget_has_atomic=\"64\"\ntarget_has_atomic=\"8\"\ntarget_has_atomic=\"ptr\"\ntarget_os=\"unknown\"\ntarget_pointer_width=\"32\"\ntarget_vendor=\"unknown\"\n","stderr":"warning: dropping unsupported crate type `dylib` for target `wasm32-unknown-unknown`\n\nwarning: dropping unsupported crate type `proc-macro` for target `wasm32-unknown-unknown`\n\nwarning: 2 warnings emitted\n\n"}},"successes":{}} |