openvibers/openvibe.games Commits

Games: /updates links the site icon (the browser watch saw a /favicon.ico 404) (#80)

OP OpenVibers committed 29 days ago · a42d453af5 · 2 files, +4 −0

The browser watch failed openvibe.games on the new `/updates` page (Games#78): it had no `<link rel="icon">`, so browsers asked for `/favicon.ico`, which is a 404, and logged an error (`/var/lib/openvibe-host/browser-watch/games.json`, check "errors").

The page now links `/favicon.svg` like every other Games page, through the Shared shell's `head` option. `updatesPage.test.ts` checks the link.

Changes

ddiff --git a/apps/server/src/net/updatesPage.test.ts b/apps/server/src/net/updatesPage.test.ts
iindex 461df5e..a74117a 100644
---- a/apps/server/src/net/updatesPage.test.ts
++++ b/apps/server/src/net/updatesPage.test.ts
@@@ -29,6 +29,8 @@ describe('GET /updates: the shared update log', () => {
expect(r.headers['content-type']).toMatch(/^text\/html/)
expect(r.headers['cache-control']).toBe('public, max-age=300')
expect(r.body).toContain('<h1>What shipped on OpenVibe.Games</h1>')
++ // The site's icon, or the browser asks for /favicon.ico and logs a 404 (browser-watch "errors", 2026-10-15).
++ expect(r.body).toContain('<link rel="icon" type="image/svg+xml" href="/favicon.svg" />')
expect(r.body).toContain('data-ov-shipped="log" data-service="games"')
expect((r.body.match(/<h1[\s>]/g) ?? []).length).toBe(1)
expect(r.body).toContain('<link rel="canonical" href="https://openvibe.games/updates">')
ddiff --git a/apps/server/src/net/updatesPage.ts b/apps/server/src/net/updatesPage.ts
iindex 60ff0d8..340446a 100644
---- a/apps/server/src/net/updatesPage.ts
++++ b/apps/server/src/net/updatesPage.ts
@@@ -42,6 +42,8 @@ export function updatesHandler(req: NodeRequire = createRequire(import.meta.url)
description: `Every change deployed to ${SITE_NAME}, newest first.`,
canonical: `${SITE_URL}/updates`,
robots: 'index, follow',
++ // The site's icon, as on every other page (apps/client/*.html): without it the browser asks for /favicon.ico (404).
++ head: '<link rel="icon" type="image/svg+xml" href="/favicon.svg" />',
navbar: {
service: 'games',
apiBase: NETWORK_URL,