Unit 1 of the slpsoftware-api feature (FR-1/FR-2/FR-3): a new Client project in the Clients solution folder, intended to eventually become the deployed API for test.slpsoftware.nl/slpsoftware.nl, hosting the same four modules as SlpModularCms.Api plus a future Offerings module. - Extracts SlpModularCms.Api/Program.cs's hosting-pipeline composition into SlpModularCms.Core.Hosting.CmsHost (ConfigureServices/ConfigurePipeline), shared by both Client projects so they cannot drift apart - Moves StaticContentExtensions.cs + WebsitePlaceholder.html from Api into Core, since CmsHost cannot live in Api but Core cannot depend on Api - Adds SlpModularCms.Api.SlpSoftware with its own isolated local dev database and dev ports (5286/7223, distinct from Api's and Api.Slave's) - Adds SlpModularCms.Api.Tests with WebApplicationFactory-based pipeline regression tests (security headers, health check, SPA fallback, rate limiting), scoped to Api per NFR Design - Adds a frontend dev:slpsoftware pnpm script mirroring dev:slave - Fixes GlobalExceptionHandler logging routine 401s (e.g. an expired/missing refresh token) as unhandled errors -- pre-existing, unrelated to this feature's own scope, found while testing the new instance Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01FWyStNL2ZsjrS7FLd7xvvN
1.7 KiB
Requirements Clarification Questions (Round 2) — SlpSoftware Production API
Vul je keuze in achter de [Answer]:-tag. Kies de laatste optie (Anders) als niets past en geef dan zelf een naam op.
Ambiguity 1: Modulenaam is bewust generieker bedoeld dan "Packages"
Bij Question 9 in de vorige ronde koos je optie A (SlpModularCms.Modules.Packages), maar met de kanttekening dat die naam te specifiek/verwarrend aanvoelt: je wilt de module op termijn kunnen hergebruiken voor een heel ander soort klant/dienst (bijv. een fotograaf die fotoshoot-pakketten verkoopt), en "Packages" leest dan al snel als "software packages/library" in plaats van "dingen die een bedrijf aanbiedt op zijn marketingsite". Je vroeg om alternatieve suggesties.
Kernidee van de module (los van de naam): een set aanbiedingen/tiers met titel, beschrijving, prijs en features, getoond op een marketingsite, per "tenant"/site herbruikbaar — dus geen SlpSoftware-specifieke naam, en geen naam die aanvoelt als een NuGet/library-package.
Clarification Question 1
Welke naam past het best bij dit generieke, herbruikbare concept?
A) SlpModularCms.Modules.Offerings — "wat een bedrijf aanbiedt" (product óf dienst), generiek en leest niet als software-package
B) SlpModularCms.Modules.ServiceCatalog — benadrukt een catalogus van diensten/pakketten die getoond wordt
C) SlpModularCms.Modules.Pricing — legt de nadruk op de prijstiers/pricing-cards zelf, minder op "wat" er verkocht wordt
D) SlpModularCms.Modules.Catalog — maximaal generiek, bruikbaar voor vrijwel elk soort verkoopbaar item (niet alleen prijstiers)
X) Anders (geef zelf een naam op na de Answer:-tag)