Skip to content

v0.1.2 — palette + nav fix

Choose a tag to compare

@criptogus criptogus released this 15 Sep 14:21
· 3 commits to main since this release

Fixes two silent registration-shape bugs that made clicks appear to do nothing.

1. Palette row was registered dead

A PaletteContribution lives inside data — the registry builds the row as { id: data.id, area, data }. The command was registered with label in data but run at the top level and no data.id, so it resolved to a null-id row with no runnable action.

Before / after

- data: { label: 'HermesOffice: abrir documentos', codicon: 'file-code' },
- run: () => host.navigate('/hermesoffice')
+ data: {
+   id: 'hermesoffice-embed.open',
+   label: 'HermesOffice · abrir documentos',
+   keywords: ['office', 'docx', 'xlsx', 'pptx', 'pdf'],
+   run: () => host.navigate('/hermesoffice')
+ }

2. Sidebar nav used a codicon the app does not ship

file-code is not in the app's glyph set — an unknown name renders an invisible box rather than failing. Now project, proven by both theme-forge and the bundled plugins.

Test coverage

The load test now asserts each area's contract — palette (data.id, data.label, data.run), route (data.path + render), nav (data.path + data.label + a proven codicon) — and is layout-agnostic, so the same file runs from the repo and from an installed copy. Verified it fails on the old shape and passes on the fix.

Install

hermes plugins install criptogus/hermesoffice-embed