docling-studio/profiles/fastapi-vue/profile.md
Pier-Jean Malandrino 941028e705 ci: add release-gate pipeline, fix CI duplication, add OSS playbook docs
- Add release-gate.yml: 11-job pipeline (lint, tests, Docker build/smoke,
  Trivy scan, dep audit, audit checks, e2e API+UI, PR summary comment)
- Fix CI double-trigger on release branches (push + PR)
- Add CODE_OF_CONDUCT.md, SECURITY.md, PR template
- Add docs: git-workflow, architecture (ADR), release, operations, community
- Add profiles/fastapi-vue for automated audit checks
- Add docs/PROCESSES.md: index of 19 available processes
2026-04-09 13:20:43 +02:00

2.5 KiB

Stack Profile — FastAPI + Vue 3

Profile for running the 12 release audits on Docling Studio.

Layer Mapping

Generic Layer Docling Studio Path Language
Domain document-parser/domain/ Python
Services document-parser/services/ Python
API document-parser/api/ Python
Infrastructure document-parser/infra/ Python
Persistence document-parser/persistence/ Python
Frontend frontend/src/ TypeScript / Vue
Tests (backend) document-parser/tests/ Python
Tests (frontend) frontend/src/**/*.test.* TypeScript
Tests (e2e API) e2e/api/ Karate (Gherkin)
Tests (e2e UI) e2e/ui/ Karate UI (Gherkin)
CI/CD .github/workflows/ YAML
Docker Dockerfile, docker-compose.yml, nginx.conf Docker / Nginx

Excluded Paths

These paths are excluded from audits:

  • document-parser/.venv/
  • document-parser/__pycache__/
  • frontend/node_modules/
  • frontend/dist/
  • e2e/**/target/

Framework Detection

Imports that should NOT appear in the domain layer:

# Forbidden in document-parser/domain/
from fastapi import ...
from pydantic import ...       # except BaseModel for value objects
import aiosqlite
from infra import ...
from persistence import ...
from api import ...

Imports that should NOT cross feature boundaries in the frontend:

// features/analysis/ should NOT import from features/chunking/store
// features/document/ should NOT import from features/analysis/store
// Cross-feature communication goes through shared/ or events

Tools & Commands

Task Command
Backend lint cd document-parser && ruff check .
Backend format cd document-parser && ruff format --check .
Backend tests cd document-parser && pytest tests/ -v
Frontend lint cd frontend && npx eslint src/
Frontend type-check cd frontend && npm run type-check
Frontend format cd frontend && npx prettier --check src/
Frontend tests cd frontend && npm run test:run
E2E API tests mvn test -f e2e/api/pom.xml -Dkarate.options="--tags @smoke"
E2E UI tests mvn test -f e2e/ui/pom.xml -Dkarate.options="--tags @critical"
Docker build docker compose build
Docker health curl -s http://localhost:3000/api/health
Dependency audit (Python) cd document-parser && pip audit
Dependency audit (Node) cd frontend && npm audit