fix(release): refresh Cargo.lock on bump, attach uid to core Sentry, hide debug settings (#1465)

This commit is contained in:
Steven Enamakel
2026-05-10 20:44:23 -07:00
committed by GitHub
parent 12ef69b89f
commit 81d24b4d74
7 changed files with 87 additions and 58 deletions
+10 -1
View File
@@ -128,6 +128,15 @@ jobs:
- name: Verify release version sync (main_head)
if: inputs.release_source == 'main_head'
run: node scripts/release/verify-version-sync.js "${{ steps.bump.outputs.version }}"
- name: Refresh Cargo.lock files (main_head)
if: inputs.release_source == 'main_head'
# Cargo.toml [package].version is bumped above but the matching
# entries in both Cargo.lock files are not — without this step the
# lockfiles stay pinned to the previous version and the next local
# `cargo` invocation rewrites them, leaving an uncommitted diff.
run: |
cargo update --workspace --manifest-path Cargo.toml
cargo update --workspace --manifest-path app/src-tauri/Cargo.toml
- name: Ensure tag does not already exist (main_head)
if: inputs.release_source == 'main_head'
env:
@@ -148,7 +157,7 @@ jobs:
VERSION: ${{ steps.bump.outputs.version }}
TAG: ${{ steps.bump.outputs.tag }}
run: |
git add app/package.json app/src-tauri/tauri.conf.json app/src-tauri/Cargo.toml Cargo.toml
git add app/package.json app/src-tauri/tauri.conf.json app/src-tauri/Cargo.toml Cargo.toml app/src-tauri/Cargo.lock Cargo.lock
git commit -m "chore(release): v${VERSION}"
git push origin main
git tag -a "$TAG" -m "Release $TAG"
+9 -1
View File
@@ -102,6 +102,14 @@ jobs:
run: node scripts/release/bump-version.js patch
- name: Verify version sync
run: node scripts/release/verify-version-sync.js "${{ steps.bump.outputs.version }}"
- name: Refresh Cargo.lock files
# Cargo.toml [package].version is bumped above but the matching
# entries in both Cargo.lock files are not — without this step the
# lockfiles stay pinned to the previous version and the next local
# `cargo` invocation rewrites them, leaving an uncommitted diff.
run: |
cargo update --workspace --manifest-path Cargo.toml
cargo update --workspace --manifest-path app/src-tauri/Cargo.toml
- name: Compute staging tag
id: tagname
env:
@@ -127,7 +135,7 @@ jobs:
VERSION: ${{ steps.bump.outputs.version }}
TAG: ${{ steps.tagname.outputs.tag }}
run: |
git add app/package.json app/src-tauri/tauri.conf.json app/src-tauri/Cargo.toml Cargo.toml
git add app/package.json app/src-tauri/tauri.conf.json app/src-tauri/Cargo.toml Cargo.toml app/src-tauri/Cargo.lock Cargo.lock
git commit -m "chore(staging): v${VERSION}"
git push origin main
git tag -a "$TAG" -m "Staging cut $TAG"
Generated
+1 -1
View File
@@ -4520,7 +4520,7 @@ checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381"
[[package]]
name = "openhuman"
version = "0.53.25"
version = "0.53.26"
dependencies = [
"aes-gcm",
"anyhow",
+2 -2
View File
@@ -4,7 +4,7 @@ version = 4
[[package]]
name = "OpenHuman"
version = "0.53.23"
version = "0.53.26"
dependencies = [
"anyhow",
"async-trait",
@@ -4551,7 +4551,7 @@ dependencies = [
[[package]]
name = "openhuman"
version = "0.53.25"
version = "0.53.26"
dependencies = [
"aes-gcm",
"anyhow",
@@ -57,22 +57,24 @@ const developerItems = [
</svg>
),
},
{
id: 'screen-awareness-debug',
title: 'Screen Awareness Debug',
description: 'FPS tuning, vision model config, capture tests, and session diagnostics',
route: 'screen-awareness-debug',
icon: (
<svg className="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
<path
strokeLinecap="round"
strokeLinejoin="round"
strokeWidth={2}
d="M3 5h18v12H3zM8 21h8m-4-4v4"
/>
</svg>
),
},
// Screen Awareness Debug, Memory Data, and Memory Debug hidden — routes
// retained in `pages/Settings.tsx` for re-enable.
// {
// id: 'screen-awareness-debug',
// title: 'Screen Awareness Debug',
// description: 'FPS tuning, vision model config, capture tests, and session diagnostics',
// route: 'screen-awareness-debug',
// icon: (
// <svg className="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
// <path
// strokeLinecap="round"
// strokeLinejoin="round"
// strokeWidth={2}
// d="M3 5h18v12H3zM8 21h8m-4-4v4"
// />
// </svg>
// ),
// },
// Autocomplete Debug + Voice Debug hidden per #717 (routes retained for re-enable).
{
id: 'local-model-debug',
@@ -106,38 +108,38 @@ const developerItems = [
</svg>
),
},
{
id: 'memory-data',
title: 'Memory Data',
description: 'Knowledge graph, insights, activity heatmap, and file management',
route: 'memory-data',
icon: (
<svg className="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
<path
strokeLinecap="round"
strokeLinejoin="round"
strokeWidth={2}
d="M9.663 17h4.673M12 3v1m6.364 1.636l-.707.707M21 12h-1M4 12H3m3.343-5.657l-.707-.707m2.828 9.9a5 5 0 117.072 0l-.548.547A3.374 3.374 0 0014 18.469V19a2 2 0 11-4 0v-.531c0-.895-.356-1.754-.988-2.386l-.548-.547z"
/>
</svg>
),
},
{
id: 'memory-debug',
title: 'Memory Debug',
description: 'Inspect memory documents, namespaces, and test query/recall',
route: 'memory-debug',
icon: (
<svg className="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
<path
strokeLinecap="round"
strokeLinejoin="round"
strokeWidth={2}
d="M9 12h6m2 8H7a2 2 0 01-2-2V6a2 2 0 012-2h6l6 6v8a2 2 0 01-2 2z"
/>
</svg>
),
},
// {
// id: 'memory-data',
// title: 'Memory Data',
// description: 'Knowledge graph, insights, activity heatmap, and file management',
// route: 'memory-data',
// icon: (
// <svg className="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
// <path
// strokeLinecap="round"
// strokeLinejoin="round"
// strokeWidth={2}
// d="M9.663 17h4.673M12 3v1m6.364 1.636l-.707.707M21 12h-1M4 12H3m3.343-5.657l-.707-.707m2.828 9.9a5 5 0 117.072 0l-.548.547A3.374 3.374 0 0014 18.469V19a2 2 0 11-4 0v-.531c0-.895-.356-1.754-.988-2.386l-.548-.547z"
// />
// </svg>
// ),
// },
// {
// id: 'memory-debug',
// title: 'Memory Debug',
// description: 'Inspect memory documents, namespaces, and test query/recall',
// route: 'memory-debug',
// icon: (
// <svg className="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
// <path
// strokeLinecap="round"
// strokeLinejoin="round"
// strokeWidth={2}
// d="M9 12h6m2 8H7a2 2 0 01-2-2V6a2 2 0 012-2h6l6 6v8a2 2 0 01-2 2z"
// />
// </svg>
// ),
// },
{
id: 'intelligence',
title: 'Intelligence',
@@ -20,7 +20,7 @@ const formatRemaining = (remainingMs: number | null): string => {
};
const ScreenIntelligencePanel = () => {
const { navigateBack, navigateToSettings, breadcrumbs } = useSettingsNavigation();
const { navigateBack, breadcrumbs } = useSettingsNavigation();
const {
status,
lastRestartSummary,
@@ -237,7 +237,8 @@ const ScreenIntelligencePanel = () => {
</div>
)}
<button
{/* Screen Awareness Debug entry hidden alongside Developer Options entries. */}
{/* <button
type="button"
onClick={() => navigateToSettings('screen-awareness-debug')}
className="flex items-center gap-1.5 text-xs text-stone-400 hover:text-stone-600 transition-colors">
@@ -245,7 +246,7 @@ const ScreenIntelligencePanel = () => {
<svg className="w-3 h-3" fill="none" stroke="currentColor" viewBox="0 0 24 24">
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M9 5l7 7-7 7" />
</svg>
</button>
</button> */}
</div>
</div>
);
+11 -2
View File
@@ -48,8 +48,17 @@ fn main() {
before_send: Some(std::sync::Arc::new(|mut event| {
// Strip server_name (hostname) to avoid leaking machine identity
event.server_name = None;
// Strip user context entirely
event.user = None;
// Attach the cached account uid so Sentry can count unique users
// affected by an issue. We only carry `id` — never email, name,
// or IP — so this stays consistent with `send_default_pii: false`.
// Empty/missing on early-startup events (cache populates after
// the first `auth_get_me` RPC); that's expected.
event.user = openhuman_core::openhuman::app_state::peek_cached_current_user_identity()
.and_then(|identity| identity.id)
.map(|id| sentry::User {
id: Some(id),
..Default::default()
});
// Scrub exception messages for secrets
for exc in &mut event.exception.values {
if let Some(ref value) = exc.value {