chore(typo): retire tous les tirets cadratins/demi-cadratins + garde CI
Some checks failed
CI / Build & test (Node 24) (push) Has been cancelled
CI / Pack & boot smoke (Node 22) (push) Has been cancelled
CI / No em/en dashes (push) Has been cancelled
CI / Build & test (Node 22) (push) Has been cancelled
Deploy site (production) / build-and-deploy (push) Successful in 20s

Remplace les 547 tirets cadratins (U+2014) et demi-cadratins (U+2013) des fichiers versionnés par la ponctuation contextuelle adaptée (point médian, deux-points, virgule, parenthèses ; tiret simple pour les plages), sur 122 fichiers (appli, vitrine, doc, tests, workflows, scripts).

Ajoute le job CI « lint-dashes » (git grep -P) qui échoue si un tiret cadratin/demi-cadratin réapparaît, hors logo binaire et captures brutes du terminal (fidélité des fixtures de détection de dialogue).
This commit is contained in:
2026-07-17 16:44:00 +02:00
parent 985531a986
commit 65ef616867
122 changed files with 538 additions and 521 deletions

View File

@@ -14,7 +14,7 @@ import {
launchAgentPlistPath,
} from '../src/cli/install.js';
describe('cli install detectPlatform', () => {
describe('cli install · detectPlatform', () => {
it('accepte linux et darwin', () => {
expect(detectPlatform('linux')).toBe('linux');
expect(detectPlatform('darwin')).toBe('darwin');
@@ -26,7 +26,7 @@ describe('cli install — detectPlatform', () => {
});
});
describe('cli install buildServiceArgs', () => {
describe('cli install · buildServiceArgs', () => {
it('aucun flag → aucun argument (le service garde les défauts loopback)', () => {
expect(buildServiceArgs(parseInstallArgs([]))).toEqual([]);
});
@@ -47,7 +47,7 @@ describe('cli install — buildServiceArgs', () => {
});
});
describe('cli install resolveBin', () => {
describe('cli install · resolveBin', () => {
it('par défaut : node (process.execPath) + dist/index.js', () => {
const { exec, args } = resolveBin({});
expect(exec).toBe(process.execPath);
@@ -64,7 +64,7 @@ describe('cli install — resolveBin', () => {
});
});
describe('cli install renderSystemdUnit', () => {
describe('cli install · renderSystemdUnit', () => {
it('contient le ExecStart calculé et les directives clés', () => {
const unit = renderSystemdUnit({ exec: '/usr/bin/node', scriptArgs: ['/opt/arboretum/index.js', '--port', '7317'] });
expect(unit).toContain('ExecStart=/usr/bin/node /opt/arboretum/index.js --port 7317');
@@ -101,7 +101,7 @@ describe('cli install — renderSystemdUnit', () => {
});
expect(unit).toMatchInlineSnapshot(`
"[Unit]
Description=Arboretum git worktree & Claude Code dashboard
Description=Arboretum · git worktree & Claude Code dashboard
After=network-online.target
Wants=network-online.target
@@ -120,7 +120,7 @@ describe('cli install — renderSystemdUnit', () => {
});
});
describe('cli install renderLaunchAgentPlist', () => {
describe('cli install · renderLaunchAgentPlist', () => {
const base = {
label: 'fr.lidge.arboretum',
programArguments: ['/usr/bin/node', '/opt/index.js', '--port', '7317'],
@@ -163,13 +163,13 @@ describe('cli install — renderLaunchAgentPlist', () => {
});
});
describe('cli install xmlEscape', () => {
describe('cli install · xmlEscape', () => {
it('échappe &, < et >', () => {
expect(xmlEscape('a & b < c > d')).toBe('a &amp; b &lt; c &gt; d');
});
});
describe('cli install chemins', () => {
describe('cli install · chemins', () => {
const savedXdg = process.env.XDG_CONFIG_HOME;
afterEach(() => {
if (savedXdg === undefined) delete process.env.XDG_CONFIG_HOME;