Commit Graph
133 Commits
Author SHA1 Message Date
Cyrus GrayandGitHub 8e9aef60f6 feat(analytics): implement Google Analytics (#1533) 2026-05-12 11:50:49 -07:00
github-actions[bot] 3966df4037 chore(staging): v0.53.31 2026-05-12 17:49:07 +00:00
github-actions[bot] 15c744296d chore(staging): v0.53.30 2026-05-12 12:21:31 +00:00
github-actions[bot] ef556f8835 chore(staging): v0.53.29 2026-05-12 09:25:51 +00:00
github-actions[bot] dbc536f8b0 chore(staging): v0.53.28 2026-05-11 19:17:47 +00:00
github-actions[bot] 09c55609ca chore(staging): v0.53.27 2026-05-11 08:40:31 +00:00
Steven EnamakelandGitHub 83bc564838 feat(web): cloud-only boot picker + build:web target (#1466) 2026-05-10 22:14:18 -07:00
github-actions[bot] 8c6b1273e2 chore(staging): v0.53.26 2026-05-10 06:46:33 +00:00
github-actions[bot] c4fc70c376 chore(staging): v0.53.25 2026-05-10 02:54:10 +00:00
github-actions[bot] 8a4ceaac6d chore(staging): v0.53.24 2026-05-09 23:57:45 +00:00
github-actions[bot] 8b29772171 chore(staging): v0.53.23 2026-05-09 23:09:33 +00:00
Steven EnamakelandGitHub 6e2d69792d Add seed phrase onboarding and multi-chain wallet setup (#1407) 2026-05-09 13:54:10 -07:00
github-actions[bot] 90e9f48f3a chore(release): v0.53.22 2026-05-09 07:53:54 +00:00
github-actions[bot] cf4784e43b chore(release): v0.53.21 2026-05-09 06:47:20 +00:00
github-actions[bot] 26ff73a90a chore(staging): v0.53.20 2026-05-08 09:07:54 +00:00
34188130a0 feat(subconscious): memory-context-aware reflection threads + dedupe gates (#623) (#1344)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-07 12:29:13 -07:00
github-actions[bot] ca8e4f610b chore(staging): v0.53.19 2026-05-07 10:59:26 +00:00
sanil-23andGitHub 0c546fcffe feat(dev): Windows dev environment for pnpm dev:app:win (#1302) 2026-05-06 13:10:45 -07:00
github-actions[bot] a3a1843140 chore(staging): v0.53.18 2026-05-06 07:59:31 +00:00
github-actions[bot] afb569063c chore(release): v0.53.17 2026-05-06 01:57:19 +00:00
Steven EnamakelandGitHub f9f2360341 fix(mascot): swap to yellow mascot via @remotion/player (#1200) 2026-05-04 20:45:23 -07:00
github-actions[bot] 229e374025 chore(release): v0.53.16 2026-05-04 20:29:44 +00:00
Cyrus GrayandGitHub 2497282716 feat(onboarding): replace welcome-agent bot with react-joyride walkthrough (#1180) 2026-05-04 12:41:08 -07:00
github-actions[bot] 45a04da6e2 chore(staging): v0.53.15 2026-05-04 19:26:07 +00:00
github-actions[bot] ea97e64fea chore(staging): v0.53.14 2026-05-04 17:58:56 +00:00
github-actions[bot] 014aa2494b chore(staging): v0.53.13 2026-05-04 05:23:26 +00:00
github-actions[bot] 67410d5473 chore(staging): v0.53.12 2026-05-03 03:40:57 +00:00
github-actions[bot] dff8f953e1 chore(staging): v0.53.11 2026-05-02 21:29:02 +00:00
github-actions[bot] 416447d478 chore(staging): v0.53.10 2026-05-02 18:57:25 +00:00
github-actions[bot] dc4f91a151 chore(staging): v0.53.9 2026-05-02 18:33:54 +00:00
github-actions[bot] 2911b4ee3d chore(staging): v0.53.8 2026-05-02 13:51:22 +00:00
github-actions[bot] 4134e68f3b chore(staging): v0.53.7 2026-05-02 13:29:45 +00:00
github-actions[bot] 8ed9f397b8 chore(staging): v0.53.6 2026-05-02 13:24:08 +00:00
github-actions[bot] df800dcdb8 chore(staging): v0.53.5 2026-05-02 13:16:57 +00:00
Steven EnamakelandGitHub 016ad78086 fix(core,cef): run core in-process and stop orphaning CEF helpers on Cmd+Q (#1061) 2026-04-30 23:22:18 -07:00
VectorJetandGitHub fc063992ef chore(deps): upgrade to Vite 8 and Rolldown (#942) 2026-04-29 11:36:29 -07:00
dbe60389e6 chore(lint): add --cache flag to ESLint scripts (#1006)
Co-authored-by: Jwalin Shah <jshah1331@gmail.com>
2026-04-28 17:43:13 -07:00
github-actions[bot] 69495d4fa1 chore(release): v0.53.4 2026-04-27 09:40:50 +00:00
github-actions[bot] 0836632209 chore(release): v0.53.3 2026-04-27 04:31:28 +00:00
github-actions[bot] c5c812239a chore(release): v0.53.2 2026-04-26 23:55:04 +00:00
github-actions[bot] 339f44fe3a chore(release): v0.53.1 2026-04-26 06:19:09 +00:00
github-actions[bot] f94fe9951a chore(release): v0.53.0 2026-04-26 02:24:02 +00:00
Steven EnamakelandGitHub 7bd8f9d4c1 ci: parallelize rust tests, dedupe typecheck/clippy/sentry across workflows (#895) 2026-04-24 11:10:27 -07:00
VectorJetandGitHub a96d9da3a4 chore: migrate from yarn to pnpm (#886) 2026-04-24 10:52:16 -07:00
478c92e533 feat(commands): ⌘K palette + keyboard system + chat UX polish (#745)
- Implement command palette (⌘K) using cmdk and Radix Dialog with a global action registry.
- Add a keyboard shortcut system with a capture-phase hotkey manager and scope stack.
- Integrate seed navigation actions for Home, Chat, Intelligence, Skills, and Settings.
- Improve chat UX with a `useStickToBottom` hook for auto-scroll and fixed hydration errors.
- Refactor command UI to display shortcuts inline and remove the redundant help overlay.
- Fix Vite HMR connection issues within the Tauri/CEF environment.

Co-authored-by: Steven Enamakel <enamakel@tinyhumans.ai>
2026-04-23 22:52:54 -07:00
0c74c4206c test(e2e): add cron jobs cross-process flow spec (#783)
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Jwalin Shah <jshah1331@gmail.com>
2026-04-22 23:32:01 -07:00
CodeGhost21andGitHub bdbb83772e feat(observability): Sentry release tracking, source maps, and end-to-end DSN plumbing (#734)
* ci(release): bake Sentry DSN into shipped tauri bundle

Released builds weren't reporting anything to Sentry. Root cause: the
tauri.conf.json `beforeBuildCommand` re-runs `vite build` inside
`cargo tauri build`. The prior `yarn build` step set `VITE_SENTRY_DSN`
for its own run, but the tauri step did not — so the rebuild produced
a DSN-less `dist/` that overwrote the good one, and the shipped web UI
initialized Sentry with an empty DSN (`initSentry` returns early when
`!SENTRY_DSN`).

Fix:

- `release.yml` / `build-desktop` — declare `VITE_SENTRY_DSN` and
  `VITE_DEBUG` on the tauri-build step so the `beforeBuildCommand`
  rebuild bakes them into the final bundle.
- `release-packages.yml` / `build-cli-linux-arm64` — guard against a
  missing `vars.OPENHUMAN_SENTRY_DSN` so the Linux arm64 CLI tarball
  cannot ship without error reporting baked in via `option_env!`.

The core sidecar's `option_env!("OPENHUMAN_SENTRY_DSN")` already gets
the value from the dedicated "Build sidecar core binary" step; the
tauri shell doesn't rebuild it (separate crate, not a workspace dep),
so the baked DSN survives into the bundled installer.

* feat(observability): Sentry release tracking + source maps (#405)

Tags every Sentry event with a canonical release identifier shared by
the frontend and Rust core, uploads source maps so stack traces are
symbolicated in the dashboard, and adds a CLI probe for repeatable
verification of any future release.

Release identifier

  openhuman@<semver>[+<short_git_sha>]

- Frontend (`app/src/utils/config.ts::SENTRY_RELEASE`) builds the tag
  from `VITE_BUILD_SHA`.
- Core sidecar (`src/main.rs::build_release_tag`) builds the same tag
  from `option_env!("OPENHUMAN_BUILD_SHA")`, so events from both
  surfaces group under one release. Cargo's fingerprint already tracks
  `option_env!` changes.

Environment separation

- Frontend: new `APP_ENVIRONMENT` export (`development` | `staging` |
  `production`) derived from `VITE_OPENHUMAN_APP_ENV`, passed to
  `Sentry.init`.
- Core: `resolve_environment` honors `OPENHUMAN_APP_ENV` at runtime,
  falling back to `debug_assertions` detection.

Source-map upload

- `@sentry/vite-plugin` added as an app devDependency.
- `vite.config.ts` emits source maps unconditionally and registers the
  plugin only when `SENTRY_AUTH_TOKEN` is present, so local dev skips
  silently. The plugin uploads `dist/**/*.js{,.map}` under the
  canonical release name and then deletes the on-disk `.map` files so
  they never ship to end users.

CI wiring (`release.yml` + `release-packages.yml`)

- `Build frontend` and `Build and package Tauri app` both receive
  `VITE_BUILD_SHA`, `SENTRY_RELEASE`, `SENTRY_AUTH_TOKEN`, `SENTRY_ORG`,
  `SENTRY_PROJECT_FRONTEND`. The tauri step needs the same env because
  its `beforeBuildCommand` re-runs `vite build`.
- `Build sidecar core binary` receives `OPENHUMAN_BUILD_SHA` so
  `option_env!` bakes the short SHA into the release tag.
- `build-cli-linux-arm64` mirrors `OPENHUMAN_BUILD_SHA` and
  `OPENHUMAN_APP_ENV` for the arm64 CLI tarball.

Verification support

- New `openhuman sentry-test` CLI subcommand captures an `Error`-level
  event against the currently-initialized client, flushes, and prints
  the event UUID. Optional `--panic` flag exercises the panic
  integration. Requires a DSN resolvable at runtime or baked in at
  compile time; exits non-zero otherwise so misconfiguration is loud.
- `src/main.rs` now loads `.env` before `sentry::init`, so a DSN
  defined only in the repo-local dotenv file (common dev case) is
  honored by the startup-time Sentry client.

Docs

- `docs/sentry.md` covers the release identifier, environment table,
  source-map pipeline, required CI variables, and a verification
  runbook with troubleshooting tips.
- `.env.example` + `app/.env.example` document the new build-time vars.
2026-04-21 22:48:20 -07:00
github-actions[bot] ef657fbf00 chore(release): v0.52.28 2026-04-22 04:42:12 +00:00
github-actions[bot] 5bc799ffeb chore(release): v0.52.27 2026-04-21 14:57:32 +00:00
github-actions[bot] a04a7edb75 chore(release): v0.52.26 2026-04-18 17:37:27 +00:00