Adds the Offerings module and retargets the CI/CD pipeline to Api.SlpSoftware
Continuous Integration / config (pull_request) Successful in 12s
Continuous Integration / changes (pull_request) Successful in 22s
Continuous Integration / backend-build (pull_request) Successful in 5m53s
Continuous Integration / vulnerability-scan (pull_request) Successful in 5m46s
Continuous Integration / frontend-prepare (pull_request) Successful in 1m54s
Continuous Integration / backend-test (pull_request) Successful in 7m37s
Continuous Integration / frontend-build (pull_request) Successful in 2m14s
Continuous Integration / frontend-test (pull_request) Successful in 4m59s
Continuous Integration / frontend-lint (pull_request) Successful in 2m2s
Continuous Integration / publish-production (pull_request) Skipped
Continuous Integration / deploy-production (pull_request) Skipped
Continuous Integration / publish-test (pull_request) Successful in 7m34s
Continuous Integration / deploy-test (pull_request) Skipped

Implements Unit 2 "Offerings" (backend module, admin CRUD UI with
drag-and-drop reordering, public GET /api/v1/offerings endpoint) and
executes the feature's D-15 CI/CD cutover, switching the deploy
pipeline's build/publish target from SlpModularCms.Api to
SlpModularCms.Api.SlpSoftware.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FWyStNL2ZsjrS7FLd7xvvN
This commit is contained in:
2026-08-02 16:23:09 +02:00
co-authored by Claude Sonnet 5
parent b6e9c07c06
commit cfb06b28b6
79 changed files with 4069 additions and 94 deletions
@@ -34,12 +34,19 @@
"MasterUrl": "https://localhost:7223"
},
"Cors": {
// Port 5175, not 5173: that's Api's own frontend dev port (see frontend/package.json's
// plain `pnpm dev`). This project is reached via `pnpm dev:slpsoftware`, which runs the
// frontend dev server on 5175 (see .env.slpsoftware.local / package.json).
// 5175: this repo's admin frontend, reached via `pnpm dev:slpsoftware` (see
// .env.slpsoftware.local / package.json) — NOT the same as 5173, which is Api's own
// (Master) admin frontend dev port and would be the wrong origin to allow here.
// 5173: the actual public SlpSoftware website (separate repo/workspace,
// K:\Development\SlpSoftware\Projects\SlpSoftware), calling the anonymous
// GET /api/v1/offerings endpoint from its own Vite dev server. Coincidentally the same
// port number as Api's admin frontend above, but a different codebase/origin entirely —
// both need to be allowed here since Api.SlpSoftware serves both consumers.
"AllowedOrigins": [
"http://localhost:5175",
"https://localhost:5175"
"https://localhost:5175",
"http://localhost:5173",
"https://localhost:5173"
]
},
"RateLimiting": {