v0.1.2 — palette + nav fix
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