- add config.yml as single source of truth for collected repos/categories - add collect.py CLI to pull lib/api/wiki site builds and mcp bundles from source repos and regenerate nginx.conf + _index/index.html - port mcp runtime (main.py/core.py/config.py): nginx + health + FastMCP servers started from config.yml - docker: python:3.13-slim + nginx, expose 8000-8006 + 9000 (html portal) - drone: publish html (6007:9000) and MCP ports 8000-8006 - move mongo-ops docs to wiki/, add auth-server (api) and hexa (lib) - refresh lib site builds (lib/ prefix) and collect mcp bundles
23 lines
2.1 KiB
JSON
23 lines
2.1 KiB
JSON
{
|
|
"module": "openapi_first.errors",
|
|
"content": {
|
|
"path": "openapi_first.errors",
|
|
"docstring": "# Summary\n\nExceptions for OpenAPI-first FastAPI applications.\n\nThis module defines a small hierarchy of explicit, intention-revealing\nexceptions used to signal contract violations between an OpenAPI\nspecification and its Python implementation.\n\nNotes:\n **Design Principles:**\n\n - Errors represent programmer mistakes, not runtime conditions.\n - All errors are raised during application startup.\n - Messages are actionable and suitable for CI/CD output.\n - Exceptions are explicit rather than reused from generic built-ins.\n\n These errors should normally cause immediate application failure.",
|
|
"objects": {
|
|
"OpenAPIFirstError": {
|
|
"name": "OpenAPIFirstError",
|
|
"kind": "class",
|
|
"path": "openapi_first.errors.OpenAPIFirstError",
|
|
"signature": "<bound method Class.signature of Class('OpenAPIFirstError', 22, 36)>",
|
|
"docstring": "Base exception for all OpenAPI-first enforcement errors.\n\nNotes:\n **Responsibilities:**\n\n - This exception exists to allow callers, test suites, and CI\n pipelines to catch and distinguish OpenAPI contract violations\n from unrelated runtime errors.\n - All exceptions raised by the OpenAPI-first core should inherit\n from this type."
|
|
},
|
|
"MissingOperationHandler": {
|
|
"name": "MissingOperationHandler",
|
|
"kind": "class",
|
|
"path": "openapi_first.errors.MissingOperationHandler",
|
|
"signature": "<bound method Class.signature of Class('MissingOperationHandler', 39, 77)>",
|
|
"docstring": "Raised when an OpenAPI operation cannot be resolved to a handler.\n\nNotes:\n **Scenarios:**\n\n - An OpenAPI operation does not define an `operationId`.\n - An `operationId` is defined but no matching function exists in\n the provided routes module.\n\n **Guarantees:**\n\n - This represents a violation of the OpenAPI-first contract and\n indicates that the specification and implementation are out of\n sync."
|
|
}
|
|
}
|
|
}
|
|
} |