Levanto Aion
← All runs

ci-pipeline

failurelive · refreshing every 2sat failure
41235c49-c413-4265-866f-09d662f68995
Ran for 3s (finished about 2 months ago)

State

Statusfailure
Current statefailure
Trace id78e9ff3a20c84eb38d1321b98582c5d3
Error

Agent timeline

  • build1 attempt
  • ci_quality1 attempt
  • pipeline-failure1 attempt
  • status-failure-quality1 attempt
  • status-pending-build1 attempt
  • status-pending-quality1 attempt
  • status-pending-tests1 attempt
  • status-success-build1 attempt
  • status-success-tests1 attempt
  • tests1 attempt

Event trace (0)

No events yet.

Scratchpad

Expand JSON
{
  "repo": "Levanto/Levanto-Aion",
  "build": {
    "report": {
      "passed": true,
      "targets": [
        {
          "tag": "levanto/aion-orchestrator:ci",
          "name": "orchestrator-api",
          "error": "skipped: $BUILD_AGENT_HOST_REPO not set (see build-agent docstring for setup)",
          "passed": true,
          "dockerfile": "apps/orchestrator-api/Dockerfile",
          "duration_ms": 0
        },
        {
          "tag": "levanto/aion-worker:ci",
          "name": "worker-runtime",
          "error": "skipped: $BUILD_AGENT_HOST_REPO not set (see build-agent docstring for setup)",
          "passed": true,
          "dockerfile": "apps/worker-runtime/Dockerfile",
          "duration_ms": 0
        },
        {
          "tag": "levanto/aion-dashboard:ci",
          "name": "dashboard",
          "error": "skipped: $BUILD_AGENT_HOST_REPO not set (see build-agent docstring for setup)",
          "passed": true,
          "dockerfile": "apps/dashboard/Dockerfile",
          "duration_ms": 0
        }
      ]
    }
  },
  "tests": {
    "report": {
      "failed": 0,
      "passed": 0,
      "skipped": 0,
      "failures": [],
      "added_tests": [],
      "coverage_pct": 0
    }
  },
  "base_ref": "docs/quickstart-plus-polish",
  "head_sha": "c968f270c0bc019a30afae6a18838a41463adc43",
  "pr_number": 0,
  "ci_quality": {
    "report": {
      "checks": [
        {
          "name": "ruff_lint",
          "output": "…\nntime/state-machine/runner.py:122:53: UP017 [*] Use `datetime.UTC` alias\nruntime/state-machine/runner.py:132:101: E501 Line too long (107 > 100)\nruntime/state-machine/runner.py:136:49: UP017 [*] Use `datetime.UTC` alias\nruntime/state-machine/runner.py:141:36: UP017 [*] Use `datetime.UTC` alias\nruntime/state-machine/runner.py:166:14: UP038 Use `X | Y` in `isinstance` call instead of `(X, Y)`\nruntime/tool-registry/loader.py:60:101: E501 Line too long (103 > 100)\nruntime/tool-registry/loader.py:61:32: RUF100 [*] Unused `noqa` directive (non-enabled: `BLE001`)\nruntime/tool-registry/loader.py:82:19: UP024 [*] Replace aliased errors with `OSError`\nruntime/tool-registry/registry.py:86:32: RUF100 [*] Unused `noqa` directive (non-enabled: `BLE001`)\nshared/events/__init__.py:7:1: I001 [*] Import block is un-sorted or un-formatted\nshared/events/agent.py:14:70: UP037 [*] Remove quotes from type annotation\nshared/events/agent.py:18:76: UP037 [*] Remove quotes from type annotation\nshared/events/agent.py:19:101: E501 Line too long (107 > 100)\nshared/events/agent.py:22:81: UP037 [*] Remove quotes from type annotation\nshared/events/agent.py:29:65: UP037 [*] Remove quotes from type annotation\nshared/events/agent.py:30:101: E501 Line too long (105 > 100)\nshared/events/base.py:27:72: UP017 [*] Use `datetime.UTC` alias\nshared/events/tool.py:14:64: UP037 [*] Remove quotes from type annotation\nshared/events/tool.py:18:65: UP037 [*] Remove quotes from type annotation\nshared/events/tool.py:19:101: E501 Line too long (103 > 100)\nshared/events/tool.py:22:56: UP037 [*] Remove quotes from type annotation\nshared/events/workflow.py:14:72: UP037 [*] Remove quotes from type annotation\nshared/events/workflow.py:15:101: E501 Line too long (104 > 100)\nshared/events/workflow.py:18:76: UP037 [*] Remove quotes from type annotation\nshared/events/workflow.py:25:59: UP037 [*] Remove quotes from type annotation\nshared/events/workflow.py:29:68: UP037 [*] Remove quotes from type annotation\nshared/utils/json_codec.py:25:8: UP038 Use `X | Y` in `isinstance` call instead of `(X, Y)`\nshared/utils/logging.py:20:17: RUF012 Mutable class attributes should be annotated with `typing.ClassVar`\nshared/utils/logging.py:33:58: UP017 [*] Use `datetime.UTC` alias\nshared/utils/redact.py:61:8: UP038 Use `X | Y` in `isinstance` call instead of `(X, Y)`\nshared/utils/retry.py:29:23: S311 Standard pseudo-random generators are not suitable for cryptographic purposes\nshared/utils/retry.py:59:101: E501 Line too long (103 > 100)\nshared/utils/retry.py:62:30: RUF100 [*] Unused `noqa` directive (non-enabled: `S101`)\nshared/utils/tests/test_json_extract.py:9:1: I001 [*] Import block is un-sorted or un-formatted\nshared/utils/time.py:9:25: UP017 [*] Use `datetime.UTC` alias\ntools/docker/tool.py:38:46: ASYNC109 Async function definition with a `timeout` parameter\ntools/docker/tool.py:50:16: UP041 [*] Replace aliased errors with `TimeoutError`\ntools/docker/tool.py:52:101: E501 Line too long (103 > 100)\ntools/docker/tool.py:69:28: RUF100 [*] Unused `noqa` directive (non-enabled: `BLE001`)\ntools/docker/tool.py:88:101: E501 Line too long (105 > 100)\ntools/github/tool.py:59:28: RUF100 [*] Unused `noqa` directive (non-enabled: `BLE001`)\ntools/playwright/tool.py:54:28: RUF100 [*] Unused `noqa` directive (non-enabled: `BLE001`)\ntools/playwright/tool.py:83:35: RUF100 [*] Unused `noqa` directive (non-enabled: `BLE001`)\ntools/playwright/tool.py:99:36: S108 Probable insecure usage of temporary file or directory: \"/tmp/aion-screenshot-\"\ntools/shell/tool.py:77:28: RUF100 [*] Unused `noqa` directive (non-enabled: `BLE001`)\ntools/shell/tool.py:85:9: ASYNC109 Async function definition with a `timeout` parameter\ntools/shell/tool.py:125:16: UP041 [*] Replace aliased errors with `TimeoutError`\nworkflows/feature-to-prod/workflow.py:28:5: F401 [*] `runtime.state_machine.Conditional` imported but unused\nFound 133 errors.\n[*] 82 fixable with the `--fix` option (5 hidden fixes can be enabled with the `--unsafe-fixes` option).\n",
          "passed": false,
          "duration_ms": 331
        },
        {
          "name": "ruff_format",
          "output": "Would reformat: agents/agent.py\nWould reformat: agents/architect-agent/agent.py\nWould reformat: agents/architect-agent/tests/test_agent.py\nWould reformat: agents/backend-agent/agent.py\nWould reformat: agents/backend-agent/tests/test_agent.py\nWould reformat: agents/build-agent/tests/test_agent.py\nWould reformat: agents/business-validation-agent/agent.py\nWould reformat: agents/business-validation-agent/tests/test_agent.py\nWould reformat: agents/cicd-agent/tests/test_agent.py\nWould reformat: agents/commit-status-agent/agent.py\nWould reformat: agents/commit-status-agent/tests/test_agent.py\nWould reformat: agents/deploy-agent/agent.py\nWould reformat: agents/deploy-agent/tests/test_agent.py\nWould reformat: agents/frontend-agent/agent.py\nWould reformat: agents/frontend-agent/tests/test_agent.py\nWould reformat: agents/pr-comment-agent/agent.py\nWould reformat: agents/pr-comment-agent/tests/test_agent.py\nWould reformat: agents/product-agent/agent.py\nWould reformat: agents/product-agent/tests/test_agent.py\nWould reformat: agents/qa-agent/agent.py\nWould reformat: agents/qa-agent/tests/test_agent.py\nWould reformat: agents/review-agent/tests/test_agent.py\nWould reformat: agents/sre-agent/agent.py\nWould reformat: agents/sre-agent/tests/test_agent.py\nWould reformat: apps/orchestrator-api/app/api/routes/agents.py\nWould reformat: apps/orchestrator-api/app/api/routes/events.py\nWould reformat: apps/orchestrator-api/app/api/routes/runs.py\nWould reformat: apps/orchestrator-api/app/api/routes/workflows.py\nWould reformat: apps/orchestrator-api/app/core/config.py\nWould reformat: apps/orchestrator-api/app/core/queue.py\nWould reformat: apps/orchestrator-api/app/core/runtime_bootstrap.py\nWould reformat: apps/orchestrator-api/app/models/workflow_event.py\nWould reformat: apps/orchestrator-api/app/models/workflow_run.py\nWould reformat: apps/worker-runtime/worker/config.py\nWould reformat: apps/worker-runtime/worker/dispatcher.py\nWould reformat: apps/worker-runtime/worker/loop.py\nWould reformat: apps/worker-runtime/worker/self_healing.py\nWould reformat: memory/retrieval/retriever.py\nWould reformat: memory/vector-db/pgvector_store.py\nWould reformat: runtime/base-agent/base.py\nWould reformat: runtime/base-agent/lifecycle.py\nWould reformat: runtime/loaders.py\nWould reformat: runtime/model-router/providers/claude_cli_provider.py\nWould reformat: runtime/model-router/providers/openai_provider.py\nWould reformat: runtime/model-router/router.py\nWould reformat: runtime/state-machine/machine.py\nWould reformat: runtime/state-machine/runner.py\nWould reformat: runtime/tool-registry/loader.py\nWould reformat: shared/events/agent.py\nWould reformat: shared/events/tool.py\nWould reformat: shared/events/workflow.py\nWould reformat: shared/prompts/loader.py\nWould reformat: shared/utils/logging.py\nWould reformat: shared/utils/retry.py\nWould reformat: tools/docker/tool.py\nWould reformat: tools/github/tool.py\nWould reformat: tools/playwright/tool.py\nWould reformat: tools/shell/tool.py\nWould reformat: workflows/feature-to-prod/workflow.py\nWould reformat: workflows/hotfix/workflow.py\nWould reformat: workflows/pr-review/workflow.py\nWould reformat: workflows/pr-review-loop/workflow.py\nWould reformat: workflows/rollback/workflow.py\n63 files would be reformatted, 90 files already formatted\n",
          "passed": false,
          "duration_ms": 133
        },
        {
          "name": "mypy",
          "output": "skipped: whole-repo mode (mypy cannot traverse hyphenated dirs)",
          "passed": true,
          "duration_ms": 0
        }
      ],
      "passed": false,
      "failing_files": [
        "agents/agent.py",
        "agents/architect-agent/agent.py",
        "agents/architect-agent/tests/test_agent.py",
        "agents/backend-agent/agent.py",
        "agents/backend-agent/tests/test_agent.py",
        "agents/build-agent/tests/test_agent.py",
        "agents/business-validation-agent/agent.py",
        "agents/business-validation-agent/tests/test_agent.py",
        "agents/cicd-agent/tests/test_agent.py",
        "agents/commit-status-agent/agent.py",
        "agents/commit-status-agent/tests/test_agent.py",
        "agents/deploy-agent/agent.py",
        "agents/deploy-agent/tests/test_agent.py",
        "agents/frontend-agent/agent.py",
        "agents/frontend-agent/tests/test_agent.py",
        "agents/pr-comment-agent/agent.py",
        "agents/pr-comment-agent/tests/test_agent.py",
        "agents/product-agent/agent.py",
        "agents/product-agent/tests/test_agent.py",
        "agents/qa-agent/agent.py",
        "agents/qa-agent/tests/test_agent.py",
        "agents/review-agent/tests/test_agent.py",
        "agents/sre-agent/agent.py",
        "agents/sre-agent/tests/test_agent.py",
        "apps/orchestrator-api/app/api/routes/agents.py",
        "apps/orchestrator-api/app/api/routes/events.py",
        "apps/orchestrator-api/app/api/routes/runs.py",
        "apps/orchestrator-api/app/api/routes/workflows.py",
        "apps/orchestrator-api/app/core/config.py",
        "apps/orchestrator-api/app/core/queue.py",
        "apps/orchestrator-api/app/core/runtime_bootstrap.py",
        "apps/orchestrator-api/app/models/workflow_event.py",
        "apps/orchestrator-api/app/models/workflow_run.py",
        "apps/worker-runtime/worker/config.py",
        "apps/worker-runtime/worker/dispatcher.py",
        "apps/worker-runtime/worker/loop.py",
        "apps/worker-runtime/worker/self_healing.py",
        "memory/retrieval/retriever.py",
        "memory/vector-db/pgvector_store.py",
        "ntime/state-machine/runner.py",
        "runtime/base-agent/base.py",
        "runtime/base-agent/lifecycle.py",
        "runtime/loaders.py",
        "runtime/model-router/providers/claude_cli_provider.py",
        "runtime/model-router/providers/openai_provider.py",
        "runtime/model-router/router.py",
        "runtime/state-machine/machine.py",
        "runtime/state-machine/runner.py",
        "runtime/tool-registry/loader.py",
        "runtime/tool-registry/registry.py",
        "shared/events/__init__.py",
        "shared/events/agent.py",
        "shared/events/base.py",
        "shared/events/tool.py",
        "shared/events/workflow.py",
        "shared/prompts/loader.py",
        "shared/utils/json_codec.py",
        "shared/utils/logging.py",
        "shared/utils/redact.py",
        "shared/utils/retry.py",
        "shared/utils/tests/test_json_extract.py",
        "shared/utils/time.py",
        "tools/docker/tool.py",
        "tools/github/tool.py",
        "tools/playwright/tool.py",
        "tools/shell/tool.py",
        "workflows/feature-to-prod/workflow.py",
        "workflows/hotfix/workflow.py",
        "workflows/pr-review-loop/workflow.py",
        "workflows/pr-review/workflow.py",
        "workflows/rollback/workflow.py"
      ]
    }
  },
  "changed_files": [],
  "dashboard_url": "http://aion.levanto.in/runs/41235c49-c413-4265-866f-09d662f68995",
  "pipeline-failure": {
    "posted": {
      "sha": "c968f270c0bc019a30afae6a18838a41463adc43",
      "state": "failure",
      "posted": true,
      "context": "aion/pipeline",
      "target_url": "http://aion.levanto.in/runs/41235c49-c413-4265-866f-09d662f68995"
    }
  },
  "status-pending-build": {
    "posted": {
      "sha": "c968f270c0bc019a30afae6a18838a41463adc43",
      "state": "pending",
      "posted": true,
      "context": "aion/build",
      "target_url": "http://aion.levanto.in/runs/41235c49-c413-4265-866f-09d662f68995"
    }
  },
  "status-pending-tests": {
    "posted": {
      "sha": "c968f270c0bc019a30afae6a18838a41463adc43",
      "state": "pending",
      "posted": true,
      "context": "aion/tests",
      "target_url": "http://aion.levanto.in/runs/41235c49-c413-4265-866f-09d662f68995"
    }
  },
  "status-success-build": {
    "posted": {
      "sha": "c968f270c0bc019a30afae6a18838a41463adc43",
      "state": "success",
      "posted": true,
      "context": "aion/build",
      "target_url": "http://aion.levanto.in/runs/41235c49-c413-4265-866f-09d662f68995"
    }
  },
  "status-success-tests": {
    "posted": {
      "sha": "c968f270c0bc019a30afae6a18838a41463adc43",
      "state": "success",
      "posted": true,
      "context": "aion/tests",
      "target_url": "http://aion.levanto.in/runs/41235c49-c413-4265-866f-09d662f68995"
    }
  },
  "status-failure-quality": {
    "posted": {
      "sha": "c968f270c0bc019a30afae6a18838a41463adc43",
      "state": "failure",
      "posted": true,
      "context": "aion/quality",
      "target_url": "http://aion.levanto.in/runs/41235c49-c413-4265-866f-09d662f68995"
    }
  },
  "status-pending-quality": {
    "posted": {
      "sha": "c968f270c0bc019a30afae6a18838a41463adc43",
      "state": "pending",
      "posted": true,
      "context": "aion/quality",
      "target_url": "http://aion.levanto.in/runs/41235c49-c413-4265-866f-09d662f68995"
    }
  }
}