release: refresh Desktop 0.15.5 candidate
Cross-platform packages / Validate source (push) Canceled after 0s
Cross-platform packages / Authorize desktop packaging (push) Canceled after 0s
Cross-platform packages / linux arm64 (push) Canceled after 0s
Cross-platform packages / macos arm64 (push) Canceled after 0s
Cross-platform packages / windows arm64 (push) Canceled after 0s
Cross-platform packages / linux x64 (push) Canceled after 0s
Cross-platform packages / macos x64 (push) Canceled after 0s
Cross-platform packages / windows x64 (push) Canceled after 0s
Cross-platform packages / Publish GitHub and OSS release (push) Canceled after 0s
GoodBuddy Agents / Validate Agent source (push) Canceled after 0s
GoodBuddy Agents / Build darwin arm64 Agent (push) Canceled after 0s
GoodBuddy Agents / Build linux arm64 Agent (push) Canceled after 0s
GoodBuddy Agents / Build linux x64 Agent (push) Canceled after 0s

Include note tags and layout, workspace controls, and OpenCode launch/tool-name updates in bilingual notes. Update schema 51 guidance and align the Electron Supervisor regression with the implemented suggestions UI.
This commit is contained in:
mesalogo
2026-09-30 19:18:09 +08:00
parent 6edfc0046b
commit 89fc100d4f
5 changed files with 44 additions and 8 deletions
+5 -3
View File
@@ -1077,7 +1077,8 @@ app
nestedMenus: panel.querySelectorAll('[role=tablist]').length,
reports: !!panel.querySelector('#heartbeat-reports-title'),
reportWidth: panel.querySelector('#heartbeat-panel-history > section')?.getBoundingClientRect().width,
suggestions: !!panel.querySelector('#heartbeat-memory-title'),
suggestions: !!panel.querySelector('#supervision-suggestions-title'),
suggestionItems: panel.querySelectorAll('.supervision-suggestions__list > li').length,
audit: !!panel.querySelector('#heartbeat-runs-title'),
plans: !!panel.querySelector('#heartbeat-panel-plans'),
settingsBadge: !!panel.querySelector('.scope-badge'),
@@ -1090,7 +1091,8 @@ app
assert.equal(menuLayout.reports, tab === 'plans')
if (tab === 'plans') assert(Math.abs(menuLayout.reportWidth - menuLayout.panelWidth) <= 1, 'Reports must use full reading width')
assert.equal(menuLayout.suggestions, tab === 'plans')
assert.equal(menuLayout.audit, tab === 'plans')
assert.equal(menuLayout.suggestionItems, tab === 'plans' ? 2 : 0)
assert.equal(menuLayout.audit, false, 'Run audit belongs to Activity, not Smart heartbeat')
assert.equal(menuLayout.plans, tab === 'plans')
if (tab === 'settings') {
assert(!menuLayout.settingsBadge && !menuLayout.refresh, 'Redundant settings badge/refresh')
@@ -1099,7 +1101,7 @@ app
reports.push({ scenario: 'menu-placement', theme, tab, ...menuLayout })
await writeFile(join(artifacts, `menu-${tab}-${theme}-${width}.png`), (await win.webContents.capturePage()).toPNG())
const anchors = tab === 'settings' ? ['.heartbeat-settings__editor:last-child']
: tab === 'plans' ? ['#heartbeat-panel-overview', '#heartbeat-panel-suggestions', '#heartbeat-panel-history', '[aria-labelledby=heartbeat-runs-title]'] : []
: tab === 'plans' ? ['#heartbeat-panel-overview', '.supervision-suggestions', '#heartbeat-panel-history'] : []
for (const [index, anchor] of anchors.entries()) {
await js(`document.querySelector('${anchor}').scrollIntoView({block:'start'})`)
await settle()