msolarczekandClaude Opus 5 952e74cddd L4 Einsatz mobil: Field-Services, Sync-API, Uploads und Tests
- services/field: Einsatz-Sessions (Anfahrt/Arbeit/Pause als TimeEntry-Segmente,
  eine aktive Session je User+Auftrag), Zeitkorrektur mit Recht + Grund + Audit,
  Checkliste, Material (Abweichung nur mit Begründung, Zusatzmaterial), Notizen,
  Fotos, Sprachnotizen (ohne Transkriptions-Processor Status disabled), Uploads
  (idempotent je Mandant), autorisierte Dokument-Auslieferung, Lesemodelle + Bundle
- services/sync: applyOperations mit Idempotenz, baseVersion-Konfliktprüfung,
  Registry für Ops anderer Lanes, lane-lokaler requireApiContext
- /api/v1/sync, /api/v1/uploads, /api/v1/field/bundle, /api/v1/field/documents/[id]
- lib/sync/ops.ts (Zod-Payloads je opType), lib/field/material-rules.ts
- Stubs mit Vertragssignatur: transitionWorkOrder (L2), storeFile (§4.3),
  getSiteHistory (L1)
- Processor image-derivatives + Registrierung, Audit-Entity-Labels
- Tests: test-einsatz-field (48 Prüfungen), test-einsatz-sync (38 Prüfungen)

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-14 12:29:48 +02:00
2026-09-14 11:44:58 +02:00
2026-09-14 11:39:52 +02:00
2026-09-14 11:44:58 +02:00

Craftvia

Handwerk. Digital auf Kurs. — mandantenfähige Einsatz-PWA für Handwerks- und Montagebetriebe.

Stand

Fundament aus Certvia übernommen (Auth/Identity/MFA/WebAuthn, Mandanten, RBAC, Audit-Log, Mail, Objektspeicher, Backup/DSGVO, Plattform-Administration, i18n). Die ISMS-Fachlichkeit ist entfernt; die Craftvia-Fachmodule haben Routen-Platzhalter, Modul-Gates, Navigation und Rollen/Permissions als Andockpunkte.

Schnellstart (lokal)

Voraussetzungen: Node 22, Docker.

cp .env.example .env          # AUTH_SECRET/PASSWORD_PEPPER erzeugen (siehe Kommentare)
npm ci
docker compose up -d postgres redis garage
GARAGE_ADMIN_URL=http://localhost:3903 npx tsx scripts/garage-provision.ts
npx prisma migrate deploy
npx prisma db seed
npm run dev                   # http://localhost:3000

Login: admin@demo.example / Demo1234! (weitere Demo-Nutzer siehe AGENTS.md).

Befehle

Befehl Zweck
npm run dev Entwicklungsserver
npm run lint / npx tsc --noEmit Lint / Typprüfung
npm run build Produktions-Build (inkl. Modul-Guard-Check)
npm run test alle scripts/test-*.ts gegen die lokale Infra
npm run gate generate + tsc + lint + build + test
npm run worker:mail / worker:backup Hintergrund-Worker
npm run brand:icons Favicon/PWA-Icons aus dem Signet erzeugen

Betrieb

Container-Build über das Multi-Stage-Dockerfile (Targets runner, migrate, garage), Deployment mit docker-compose.coolify.yml bzw. docker-compose.coolify.prebuilt.yml. Hinweise: docs/DEPLOY-COOLIFY.md, docs/SECRETS-REGISTER.md (aus dem Fundament übernommen, Namen teils noch Certvia).

S
Description
No description provided
Readme
10 MiB
Languages
TypeScript 91.3%
Python 7.9%
CSS 0.4%
Dockerfile 0.3%