M44: harden release integrity and assurance
MobilityOps acceptance / backend (push) Failing after 20s
MobilityOps acceptance / frontend (push) Successful in 26s
MobilityOps acceptance / e2e (push) Skipped

This commit is contained in:
NuklearRabbit
2026-08-21 18:32:02 +02:00
parent 9e4fca5708
commit acd8b82b09
55 changed files with 1081 additions and 335 deletions
+1
View File
@@ -67,6 +67,7 @@
},
"additionalProperties": false
},
"endpoint": {"method": "POST", "path": "/api/v1/integrations/mcp/search-knowledge"},
"routing": {
"preferred": "ragcore",
"tenant": "northstar-mobility-demo",
+42 -23
View File
@@ -1,9 +1,11 @@
openapi: 3.1.0
info:
title: Fleet Ops API
description: Generated contract for Fleet Ops. The visible product name is Fleet
Ops; MobilityOps remains the technical repository and service identifier.
version: 0.1.0
description: Generated contract for Fleet Ops. The visible product name is Fleet Ops; MobilityOps remains
the technical repository and service identifier.
servers:
- url: http://localhost:8128
paths:
/health:
get:
@@ -22,7 +24,8 @@ paths:
/health/live:
get:
summary: Liveness
description: Process liveness only; external dependencies deliberately do not affect it.
description: Process liveness only; external dependencies deliberately do not
affect it.
operationId: liveness_health_live_get
responses:
'200':
@@ -37,7 +40,8 @@ paths:
/health/ready:
get:
summary: Readiness
description: 'Traffic readiness: the API is useful only while its canonical database responds.'
description: 'Traffic readiness: the API is useful only while its canonical
database responds.'
operationId: readiness_health_ready_get
responses:
'200':
@@ -622,7 +626,8 @@ paths:
type: array
items:
$ref: '#/components/schemas/AvailableVehicleOut'
title: Response List Available Vehicles Api V1 Bookings Availability Get
title: Response List Available Vehicles Api V1 Bookings Availability
Get
'422':
description: Validation Error
content:
@@ -1331,7 +1336,8 @@ paths:
tags:
- data-quality
summary: Status Recommendation
description: 'Non-mutating preview: computes the recommendation without changing anything,
description: 'Non-mutating preview: computes the recommendation without changing
anything,
resolving no issue and writing no audit event. Safe to call repeatedly.'
operationId: status_recommendation_api_v1_data_quality_issues__public_ref__status_recommendation_post
@@ -1462,7 +1468,8 @@ paths:
tags:
- integrations
summary: Workflow Heartbeat
description: Authenticated, idempotent execution evidence from a canonical n8n workflow.
description: Authenticated, idempotent execution evidence from a canonical n8n
workflow.
operationId: workflow_heartbeat_api_v1_integrations_n8n_heartbeat_post
parameters:
- name: X-Service-Token
@@ -1523,7 +1530,8 @@ paths:
schema:
type: object
additionalProperties: true
title: Response Return Callback Api V1 Integrations N8N Return Callback Post
title: Response Return Callback Api V1 Integrations N8N Return Callback
Post
'422':
description: Validation Error
content:
@@ -1535,13 +1543,17 @@ paths:
tags:
- integrations
summary: Scheduled Scan
description: 'Triggered by the scheduled n8n quality-scan workflow. Narrow, read-mostly, and
description: 'Triggered by the scheduled n8n quality-scan workflow. Narrow,
read-mostly, and
safe to call repeatedly: run_scan() only ever creates an issue for a condition that
safe to call repeatedly: run_scan() only ever creates an issue for a condition
that
doesn''t already have one open, so a duplicate or overlapping trigger does no
doesn''t already have one open, so a duplicate or overlapping trigger does
no
duplicate domain work -- it just reports zero new issues for anything already known.'
duplicate domain work -- it just reports zero new issues for anything already
known.'
operationId: scheduled_scan_api_v1_integrations_n8n_scheduled_scan_post
parameters:
- name: X-Service-Token
@@ -1568,11 +1580,14 @@ paths:
tags:
- integrations
summary: Workflow Error
description: 'Receives a bounded, secret-free failure report from the central n8n "Fleet Ops --
description: 'Receives a bounded, secret-free failure report from the central
n8n "Fleet Ops --
Workflow Error Handler" workflow, which is attached as the Error Workflow on every
Workflow Error Handler" workflow, which is attached as the Error Workflow
on every
other Fleet Ops n8n workflow. Idempotent on execution_id: n8n may redeliver the same
other Fleet Ops n8n workflow. Idempotent on execution_id: n8n may redeliver
the same
error report (e.g. after a timed-out response), so this must not double-record.'
operationId: workflow_error_api_v1_integrations_n8n_workflow_error_post
@@ -1607,7 +1622,8 @@ paths:
tags:
- integrations
summary: List Procedures
description: 'Read-only source list for the RAGcore Procedure Sync workflow: every procedure
description: 'Read-only source list for the RAGcore Procedure Sync workflow:
every procedure
Markdown file Fleet Ops ships, across every supported language, with a stable
@@ -1640,11 +1656,14 @@ paths:
tags:
- integrations
summary: Procedures Sync Result
description: 'Receives a summary (counts only, no document content) from the n8n "Fleet Ops --
description: 'Receives a summary (counts only, no document content) from the
n8n "Fleet Ops --
RAGcore Procedure Sync" workflow once it finishes uploading procedures to RAGcore.
RAGcore Procedure Sync" workflow once it finishes uploading procedures to
RAGcore.
Idempotent on execution_id, matching the workflow-error and return-callback pattern.'
Idempotent on execution_id, matching the workflow-error and return-callback
pattern.'
operationId: procedures_sync_result_api_v1_integrations_n8n_procedures_sync_result_post
parameters:
- name: X-Service-Token
@@ -1880,7 +1899,8 @@ paths:
type: array
items:
$ref: '#/components/schemas/AttentionVehicleOut'
title: Response Attention Vehicles Api V1 Integrations Mcp Attention Vehicles Get
title: Response Attention Vehicles Api V1 Integrations Mcp Attention
Vehicles Get
'422':
description: Validation Error
content:
@@ -4192,7 +4212,8 @@ components:
description: 'Body of the n8n return follow-up callback.
n8n forwards its whole item (``JSON.stringify($json)``), so unknown keys are ignored;
n8n forwards its whole item (``JSON.stringify($json)``), so unknown keys are
ignored;
only the fields we persist are validated and bounded.'
ReturnPreviewResult:
@@ -4800,5 +4821,3 @@ components:
- execution_id
- occurred_at
title: WorkflowErrorReportResult
servers:
- url: http://localhost:8128