From be8250177c6c55ab4e449f72e8698c8515a81ca7 Mon Sep 17 00:00:00 2001 From: morganephilbert-coder Date: Mon, 2 Nov 2026 10:49:48 +0100 Subject: [PATCH] fix(story/la-poste-solutions-business): new title, drop tech stack Make story featuredTool optional, as the website schema already does, so a story can ship without tools. Co-Authored-By: Claude Opus 5.5 --- scripts/__tests__/schemas.test.js | 5 +++++ scripts/schemas/story.schema.js | 5 +++-- stories/fr/la-poste-solutions-business.md | 6 ++---- 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/scripts/__tests__/schemas.test.js b/scripts/__tests__/schemas.test.js index 47a62c1..7df4d1b 100644 --- a/scripts/__tests__/schemas.test.js +++ b/scripts/__tests__/schemas.test.js @@ -243,6 +243,11 @@ describe('story schema', () => { expect(validateStory({ ...validStory, featuredTool: 'salesforce' }).success).toBe(false); }); + it('accepts a story with no tools and no featuredTool', () => { + const { featuredTool: _, ...noFeatured } = validStory; + expect(validateStory({ ...noFeatured, tools: [] }).success).toBe(true); + }); + it('coerces JS Date in date field', () => { expect(validateStory({ ...validStory, date: new Date('2024-03-01') }).success).toBe(true); }); diff --git a/scripts/schemas/story.schema.js b/scripts/schemas/story.schema.js index 65ed81e..a9f3ab8 100644 --- a/scripts/schemas/story.schema.js +++ b/scripts/schemas/story.schema.js @@ -13,11 +13,12 @@ export const storySchema = z duration: z.string().min(1), scopes: z.array(z.string()), tools: z.array(z.string()), - featuredTool: z.string().min(1), + // Optional, as on the website: a story may show no tech stack at all. + featuredTool: z.string().min(1).optional(), quotes: z.array(z.string()).optional(), deliverables: z.array(z.string()).optional(), }) - .refine((d) => d.tools.includes(d.featuredTool), { + .refine((d) => d.featuredTool === undefined || d.tools.includes(d.featuredTool), { message: 'featuredTool must be one of the values in tools[]', path: ['featuredTool'], }); diff --git a/stories/fr/la-poste-solutions-business.md b/stories/fr/la-poste-solutions-business.md index 096213d..a355eec 100644 --- a/stories/fr/la-poste-solutions-business.md +++ b/stories/fr/la-poste-solutions-business.md @@ -1,7 +1,7 @@ --- name: La Poste Solutions Business date: 2026-11-02 -title: La Poste Solutions Business dispose d'un diagnostic partagé de son dispositif de commissionnement et d'un plan d'action à 12 mois pour le faire évoluer. +title: "La Poste Solutions Business objective son commissionnement : un diagnostic partagé et un plan d’action à 12 mois" subtitle: La Poste Solutions Business est la branche du Groupe La Poste dédiée aux entreprises. description: La Poste Solutions Business accompagne les entreprises de toutes tailles, des TPE aux grands comptes, avec une offre de solutions courrier, colis, marketing et numériques portée par des équipes commerciales présentes sur tout le territoire. speaker: Flora Seggar @@ -9,9 +9,7 @@ role: Directrice de la transformation duration: 6 semaines scopes: - Acquisition -tools: - - gsheet -featuredTool: gsheet +tools: [] quotes: - "Ocobo nous a apporté de la clarté et de quoi décider sereinement : un diagnostic partagé, des ajustements actionnables à court terme et une vision d'évolution à plus long terme. L'équipe a su embarquer nos interlocuteurs internes et remettre de la sérénité sur un sujet à fort enjeu." deliverables: