15 KiB
15 KiB
File index
Tracked source, contract, documentation and configuration files. Release evidence and
screenshots live under artifacts/<release>/ and are omitted here for brevity.
Regenerate with git ls-files when the tree changes.
.env.example.gitattributes.gitea/workflows/ci.yml.gitignoreAGENTS.mdCLAUDE.mdFILE_INDEX.mdMASTER_BUILD_PROMPT.mdMakefilePROJECT_STATE.mdREADME.mdSTART_HERE.mdbackend/Dockerfilebackend/alembic.inibackend/alembic/env.pybackend/alembic/script.py.makobackend/alembic/versions/0a4c1d2e3f5b_idempotency_request_fingerprint.pybackend/alembic/versions/799d8800e241_outbox_last_error_code.pybackend/alembic/versions/a81d0ce9f662_oidc_identity.pybackend/alembic/versions/b7c7b536df85_operational_user_credentials.pybackend/alembic/versions/b913a72e8c14_customer_privacy_state.pybackend/alembic/versions/c24f6a9d013e_domain_constraints_indexes.pybackend/alembic/versions/c9498525abb5_initial_schema.pybackend/alembic/versions/d1f83bc64170_revoked_sessions.pybackend/alembic/versions/e7b08389f47f_idempotency_records.pybackend/alembic/versions/f43d829ab610_quality_work_queue.pybackend/app/__init__.pybackend/app/api/__init__.pybackend/app/api/deps.pybackend/app/api/routers/__init__.pybackend/app/api/routers/audit.pybackend/app/api/routers/auth.pybackend/app/api/routers/bookings.pybackend/app/api/routers/customers.pybackend/app/api/routers/dashboard.pybackend/app/api/routers/data_quality.pybackend/app/api/routers/demo.pybackend/app/api/routers/integration_status.pybackend/app/api/routers/integrations.pybackend/app/api/routers/knowledge.pybackend/app/api/routers/mcp_integrations.pybackend/app/api/routers/observability.pybackend/app/api/routers/privacy.pybackend/app/api/routers/search.pybackend/app/api/routers/users.pybackend/app/api/routers/vehicles.pybackend/app/api/routers/workflows.pybackend/app/cli.pybackend/app/core/__init__.pybackend/app/core/config.pybackend/app/core/db.pybackend/app/core/errors.pybackend/app/core/observability.pybackend/app/core/ratelimit.pybackend/app/core/security.pybackend/app/main.pybackend/app/models/__init__.pybackend/app/models/audit.pybackend/app/models/booking.pybackend/app/models/customer.pybackend/app/models/data_quality.pybackend/app/models/idempotency.pybackend/app/models/inspection.pybackend/app/models/maintenance.pybackend/app/models/mixins.pybackend/app/models/outbox.pybackend/app/models/revoked_session.pybackend/app/models/user.pybackend/app/models/vehicle.pybackend/app/schemas.pybackend/app/seed_loader.pybackend/app/services/__init__.pybackend/app/services/audit.pybackend/app/services/data_quality.pybackend/app/services/demo_manifest.pybackend/app/services/dispatcher.pybackend/app/services/integration_status.pybackend/app/services/knowledge/__init__.pybackend/app/services/knowledge/demo.pybackend/app/services/knowledge/procedures.pybackend/app/services/knowledge/ragcore.pybackend/app/services/operations.pybackend/app/services/returns.pybackend/app/services/sessions.pybackend/app/services/vehicle_status.pybackend/entrypoint.shbackend/pyproject.tomlbackend/requirements.lockbackend/scripts/generate_openapi.pybackend/tests/conftest.pybackend/tests/test_audit.pybackend/tests/test_auth.pybackend/tests/test_bookings.pybackend/tests/test_dashboard.pybackend/tests/test_data_quality.pybackend/tests/test_database_constraints.pybackend/tests/test_demo_manifest.pybackend/tests/test_dispatcher.pybackend/tests/test_hardening.pybackend/tests/test_health.pybackend/tests/test_integration_status.pybackend/tests/test_integrations.pybackend/tests/test_knowledge.pybackend/tests/test_mcp_integrations.pybackend/tests/test_migrations.pybackend/tests/test_observability.pybackend/tests/test_operational_auth.pybackend/tests/test_privacy.pybackend/tests/test_return.pybackend/tests/test_search.pybackend/tests/test_seed.pybackend/tests/test_users.pybackend/tests/test_vehicle_status.pybackend/tests/test_vehicles.pybackend/tests/test_workflows.pycompose.observability.yamlcompose.test.yamlcompose.unraid.yamlcompose.yamlcontracts/events.schema.jsoncontracts/mcp-tools.jsoncontracts/openapi.yamlcontracts/ragcore-contract-assumptions.mddeploy/observability/alerts.ymldeploy/observability/grafana/dashboards/mobilityops-overview.jsondeploy/observability/grafana/provisioning/dashboards/mobilityops.ymldeploy/observability/grafana/provisioning/datasources/prometheus.ymldeploy/observability/prometheus.ymldeploy/unraid/README.mddeploy/unraid/backup-postgres.shdeploy/unraid/configure-env.shdeploy/unraid/prune-postgres-backups.shdeploy/unraid/restore-postgres.shdeploy/unraid/scheduled-backup.shdeploy/unraid/setup-existing-n8n.shdeploy/unraid/setup-n8n.shdeploy/unraid/setup-scheduled-scan.shdeploy/unraid/verify-postgres-backups.shdocs/00-product-brief.mddocs/01-scope-and-non-goals.mddocs/02-user-stories.mddocs/03-architecture.mddocs/04-domain-model.mddocs/05-api-contract.mddocs/06-ui-ux.mddocs/07-data-quality.mddocs/08-return-workflow.mddocs/09-ragcore-integration.mddocs/10-mcp-hub-integration.mddocs/11-n8n-integration.mddocs/12-security-and-audit.mddocs/13-seed-and-demo-scenarios.mddocs/14-testing-and-acceptance.mddocs/15-build-plan.mddocs/16-portfolio-case-study.mddocs/17-runbook.mddocs/18-privacy-governance.mddocs/19-visual-product-roadmap.mddocs/deferred.mddocs/demo-release/current-demo-gap-audit.mddocs/demo-release/demo-concept.mddocs/demo-release/demo-data.mddocs/demo-release/demo-guide.mddocs/demo-release/demo-runbook.mddocs/demo-release/demo-scenarios.mddocs/design/current-ux-audit.mddocs/design/design-directions.mddocs/design/design-system.mddocs/design/implementation-validation.mddocs/design/stitch-manifest.mddocs/final-integrations/ai-operations-brief-runbook.mddocs/final-integrations/current-state-audit.mddocs/final-product-polish/audit.mddocs/fleet-ops-correction/current-gap-audit.mddocs/fleet-ops-correction/i18n-inventory.mddocs/fleet-ops-correction/vehicle-status-decision-table.mddocs/fleet-ops-final-localization/audit.mddocs/functional-completion/current-functional-audit.mddocs/functional-completion/server-baseline.mddocs/live-ai-integration/n8n-current-state.mdfrontend/Dockerfilefrontend/e2e/_capture-demo-screenshots.spec.tsfrontend/e2e/_capture-recruiter-screenshots.spec.tsfrontend/e2e/_capture-screenshots.spec.tsfrontend/e2e/clickable-rows.spec.tsfrontend/e2e/demo-accessibility.spec.tsfrontend/e2e/demo-entry.spec.tsfrontend/e2e/demo-guide.spec.tsfrontend/e2e/demo-legibility.spec.tsfrontend/e2e/demo.spec.tsfrontend/e2e/error-messages.spec.tsfrontend/e2e/fleet-ops-correction.spec.tsfrontend/e2e/greeting-live.spec.tsfrontend/e2e/greeting.spec.tsfrontend/e2e/guided-demo-full.spec.tsfrontend/e2e/i18n-coverage.spec.tsfrontend/e2e/interactive-elements.spec.tsfrontend/e2e/operational-workflows.spec.tsfrontend/e2e/privacy.spec.tsfrontend/e2e/recruiter-polish.spec.tsfrontend/e2e/responsive-i18n.spec.tsfrontend/e2e/roadmap-regression.spec.tsfrontend/e2e/ui-redesign.spec.tsfrontend/index.htmlfrontend/nginx.conffrontend/package-lock.jsonfrontend/package.jsonfrontend/playwright.config.tsfrontend/public/favicon.svgfrontend/public/og-fleet-ops.svgfrontend/src/App.tsxfrontend/src/api/apiError.tsfrontend/src/api/client.tsfrontend/src/api/errorMessages.tsfrontend/src/api/types.tsfrontend/src/components/Badge.tsxfrontend/src/components/CheckoutForm.tsxfrontend/src/components/DemoBadge.tsxfrontend/src/components/DemoGuide.tsxfrontend/src/components/Icons.tsxfrontend/src/components/LanguageSwitcher.tsxfrontend/src/components/Layout.tsxfrontend/src/components/PageChrome.tsxfrontend/src/components/Pagination.tsxfrontend/src/components/RequireAuth.tsxfrontend/src/components/ReturnForm.tsxfrontend/src/components/VehicleMaintenanceActions.tsxfrontend/src/context/AuthContext.tsxfrontend/src/context/DemoGuideContext.tsxfrontend/src/context/DemoManifestContext.tsxfrontend/src/data/demoGuideSteps.tsfrontend/src/data/evidenceSignals.tsfrontend/src/data/integrationLabels.tsfrontend/src/hooks/useViewportTier.tsfrontend/src/i18n/brusselsDateTime.tsfrontend/src/i18n/config.tsfrontend/src/i18n/format.tsfrontend/src/i18n/greeting.tsfrontend/src/i18n/locales/en-GB/accessibility.jsonfrontend/src/i18n/locales/en-GB/audit.jsonfrontend/src/i18n/locales/en-GB/auth.jsonfrontend/src/i18n/locales/en-GB/bookings.jsonfrontend/src/i18n/locales/en-GB/common.jsonfrontend/src/i18n/locales/en-GB/dashboard.jsonfrontend/src/i18n/locales/en-GB/demo.jsonfrontend/src/i18n/locales/en-GB/errors.jsonfrontend/src/i18n/locales/en-GB/fleet.jsonfrontend/src/i18n/locales/en-GB/integrations.jsonfrontend/src/i18n/locales/en-GB/knowledge.jsonfrontend/src/i18n/locales/en-GB/navigation.jsonfrontend/src/i18n/locales/en-GB/operations.jsonfrontend/src/i18n/locales/en-GB/privacy.jsonfrontend/src/i18n/locales/en-GB/quality.jsonfrontend/src/i18n/locales/en-GB/returns.jsonfrontend/src/i18n/locales/fr-BE/accessibility.jsonfrontend/src/i18n/locales/fr-BE/audit.jsonfrontend/src/i18n/locales/fr-BE/auth.jsonfrontend/src/i18n/locales/fr-BE/bookings.jsonfrontend/src/i18n/locales/fr-BE/common.jsonfrontend/src/i18n/locales/fr-BE/dashboard.jsonfrontend/src/i18n/locales/fr-BE/demo.jsonfrontend/src/i18n/locales/fr-BE/errors.jsonfrontend/src/i18n/locales/fr-BE/fleet.jsonfrontend/src/i18n/locales/fr-BE/integrations.jsonfrontend/src/i18n/locales/fr-BE/knowledge.jsonfrontend/src/i18n/locales/fr-BE/navigation.jsonfrontend/src/i18n/locales/fr-BE/operations.jsonfrontend/src/i18n/locales/fr-BE/privacy.jsonfrontend/src/i18n/locales/fr-BE/quality.jsonfrontend/src/i18n/locales/fr-BE/returns.jsonfrontend/src/i18n/locales/nl-BE/accessibility.jsonfrontend/src/i18n/locales/nl-BE/audit.jsonfrontend/src/i18n/locales/nl-BE/auth.jsonfrontend/src/i18n/locales/nl-BE/bookings.jsonfrontend/src/i18n/locales/nl-BE/common.jsonfrontend/src/i18n/locales/nl-BE/dashboard.jsonfrontend/src/i18n/locales/nl-BE/demo.jsonfrontend/src/i18n/locales/nl-BE/errors.jsonfrontend/src/i18n/locales/nl-BE/fleet.jsonfrontend/src/i18n/locales/nl-BE/integrations.jsonfrontend/src/i18n/locales/nl-BE/knowledge.jsonfrontend/src/i18n/locales/nl-BE/navigation.jsonfrontend/src/i18n/locales/nl-BE/operations.jsonfrontend/src/i18n/locales/nl-BE/privacy.jsonfrontend/src/i18n/locales/nl-BE/quality.jsonfrontend/src/i18n/locales/nl-BE/returns.jsonfrontend/src/i18n/useGreetingPeriod.tsfrontend/src/main.tsxfrontend/src/pages/AboutDemo.tsxfrontend/src/pages/Audit.tsxfrontend/src/pages/Automation.tsxfrontend/src/pages/BookingCreate.tsxfrontend/src/pages/BookingDetail.tsxfrontend/src/pages/Bookings.tsxfrontend/src/pages/Dashboard.tsxfrontend/src/pages/DataQuality.tsxfrontend/src/pages/DataQualityIssueDetail.tsxfrontend/src/pages/Highlights.tsxfrontend/src/pages/Knowledge.tsxfrontend/src/pages/Login.tsxfrontend/src/pages/Privacy.tsxfrontend/src/pages/Scenarios.tsxfrontend/src/pages/Users.tsxfrontend/src/pages/VehicleDetail.tsxfrontend/src/pages/Vehicles.tsxfrontend/src/product.tsfrontend/src/styles.cssfrontend/src/vite-env.d.tsfrontend/tsconfig.jsonfrontend/vite.config.tsknowledge/manifest.jsonknowledge/procedures/en-GB/01-vehicle-checkout.mdknowledge/procedures/en-GB/02-vehicle-return.mdknowledge/procedures/en-GB/03-damage-handling.mdknowledge/procedures/en-GB/04-odometer-anomalies.mdknowledge/procedures/en-GB/05-cleaning-checklist.mdknowledge/procedures/en-GB/06-maintenance-escalation.mdknowledge/procedures/en-GB/07-customer-documents.mdknowledge/procedures/en-GB/08-privacy.mdknowledge/procedures/en-GB/09-booking-conflicts.mdknowledge/procedures/en-GB/10-roles-and-escalation.mdknowledge/procedures/en-GB/11-vehicle-availability.mdknowledge/procedures/fr-BE/01-vehicle-checkout.mdknowledge/procedures/fr-BE/02-vehicle-return.mdknowledge/procedures/fr-BE/03-damage-handling.mdknowledge/procedures/fr-BE/04-odometer-anomalies.mdknowledge/procedures/fr-BE/05-cleaning-checklist.mdknowledge/procedures/fr-BE/06-maintenance-escalation.mdknowledge/procedures/fr-BE/07-customer-documents.mdknowledge/procedures/fr-BE/08-privacy.mdknowledge/procedures/fr-BE/09-booking-conflicts.mdknowledge/procedures/fr-BE/10-roles-and-escalation.mdknowledge/procedures/fr-BE/11-vehicle-availability.mdknowledge/procedures/nl-BE/01-vehicle-checkout.mdknowledge/procedures/nl-BE/02-vehicle-return.mdknowledge/procedures/nl-BE/03-damage-handling.mdknowledge/procedures/nl-BE/04-odometer-anomalies.mdknowledge/procedures/nl-BE/05-cleaning-checklist.mdknowledge/procedures/nl-BE/06-maintenance-escalation.mdknowledge/procedures/nl-BE/07-customer-documents.mdknowledge/procedures/nl-BE/08-privacy.mdknowledge/procedures/nl-BE/09-booking-conflicts.mdknowledge/procedures/nl-BE/10-roles-and-escalation.mdknowledge/procedures/nl-BE/11-vehicle-availability.mdn8n/README.mdn8n/workflows/MANIFEST.mdn8n/workflows/check_drift.pyn8n/workflows/fleet-ops-data-quality-scan.jsonn8n/workflows/fleet-ops-error-handler.jsonn8n/workflows/fleet-ops-ragcore-procedure-sync.jsonn8n/workflows/fleet-ops-vehicle-return.jsonn8n/workflows/merge_credential_refs.pyscripts/run-isolated-tests.shseed/README.mdseed/bookings.csvseed/customers.csvseed/data_quality_issues.csvseed/generate_seed.pyseed/inspections.csvseed/maintenance.csvseed/vehicles.csvseed/workflow_runs.csv