2.7 KiB
2.7 KiB
Contributing — 0pt
0pt (SIAX Cloud Data OS) är proprietär mjukvara från SIAX Technology AB. Interna bidrag följer konventionerna nedan. Externt: kontakta
security@siax.io/simon@siax.ioinnan bidrag.
Repo-ryggrad
- Kategori: platform (K1) · Subkategori: data-os · SSOT:
siax.repo.json+siax.config.json - Kontrakt:
contracts/openapi.yaml— alla API-ändringar börjar här (SSOT), sedan routehandler. - Dokumentation:
CLAUDE.mdförst, sedandocs/ochdocs/compliance/. Om kod och docs avviker: skriv avvikelsen, fabricera inte.
Hårda regler (bryt aldrig)
- AR-1 — radera aldrig befintlig funktionalitet/endpoint. Bygg färdigt.
Undantag:
services/scrapers/*+services/infra/docker-compose.data-stack.ymlär medvetet behållna per användarbeslut — rör dem inte. - AR-2 — rör aldrig frysta kundrepon (contentroom, v0-datahub, prt-*, …).
- AR-4 — inga betald-SaaS-beroenden; inga Vercel/GCP/Azure/Google Fonts/
next/font/google; Cloudflare endast inom pågående migrering. - AR-5 — bevis, inte påståenden. Märk VERIFIERAT/ANTAGANDE/EJ VERIFIERAT.
- AR-6 — aldrig hemligheter i repo (Infisical). Inga
NEXT_PUBLIC_*-hemligheter. - AR-8 — beroenden pekar bara nedåt (K1; aldrig kundrepon).
- Tenant-id bunden till sessionen — aldrig litat på från request-body.
Arbetsflöde
- Branch från
main:git switch -c fix/my-change(conventional prefix). pnpm install --frozen-lockfile(eller--no-frozen-lockfileom lockfilen medvetet uppdateras).- Grindar innan push:
pnpm run typecheck # BLOCKERANDE (src/ + tests/) pnpm run test # BLOCKERANDE (vitest) pnpm run lint # rådgivande (legacy-noise finns) pnpm run build # BLOCKERANDE (next build) - Conventional Commits:
feat:/fix:/docs:/chore:/ci:/refactor:. .gitea/workflows/**och.gitignoreär skyddade påmain— ändringar där går via PR (push direkt avvisas av pre-receive-hook).- Öppna PR mot
main; CI måste vara grön innan merge. - Commit-meddelanden på engelska; UI-copy på svenska.
Testkonventioner
- Enheter + capability-tester:
tests/{auth,p0,validation}/. - Real-infra-tester (
*.realinfra.test.ts) skippar ärligt när ST0RE/N0D inte nås. - Lägg aldrig till en test som fabricerar påståenden om kod som inte finns.
Merge & release
- Merge via PR till
main(skyddad). CD:.gitea/workflows/cd.ymltriggar Coolify-redeploy — fails medvetet tills en Coolify-app provisionerats ochCOOLIFY_APP_ID/COOLIFY_TOKENsatts.