integration: add route metadata, JSON-LD and harden the public shell

Ship prerendered SEO, crawl files and palette/map a11y so every locale route is indexable, honest and keyboard-usable without inventing claims.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-08-25 18:28:22 +02:00
parent 2ccac6b28a
commit 46c86447d1
48 changed files with 1597 additions and 207 deletions

View File

@@ -1,5 +1,7 @@
import { readFileSync } from 'node:fs';
import { join } from 'node:path';
import { COMMAND_IDS } from '../commands/command-ids';
import { APP_LOCALES } from '../i18n/locale';
import { COMMAND_IDS } from '../../shared/command-palette/commands';
import { SIGNATURE_COPY } from './signature-copy';
function leafPaths(value: unknown, prefix = ''): string[] {
@@ -46,6 +48,14 @@ describe('SIGNATURE_COPY', () => {
}
});
it('does not import from src/app/shared', () => {
const source = readFileSync(
join(process.cwd(), 'src/app/core/content/signature-copy.ts'),
'utf8',
);
expect(source).not.toMatch(/from ['"][^'"]*\/shared\//);
});
it('describes every CommandId in both locales', () => {
for (const locale of APP_LOCALES) {
const descriptions = SIGNATURE_COPY[locale].palette.commandDescriptions;