flameox 0.1.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- flameox-0.1.1/.devcontainer/devcontainer.json +27 -0
- flameox-0.1.1/.env.example +11 -0
- flameox-0.1.1/.github/CODEOWNERS +1 -0
- flameox-0.1.1/.github/ISSUE_TEMPLATE/bug_report.md +30 -0
- flameox-0.1.1/.github/ISSUE_TEMPLATE/feature_request.md +23 -0
- flameox-0.1.1/.github/labels.yml +45 -0
- flameox-0.1.1/.github/pull_request_template.md +20 -0
- flameox-0.1.1/.github/renovate.json +27 -0
- flameox-0.1.1/.github/workflows/ci.yml +151 -0
- flameox-0.1.1/.github/workflows/labels.yml +20 -0
- flameox-0.1.1/.github/workflows/release.yml +49 -0
- flameox-0.1.1/.gitignore +18 -0
- flameox-0.1.1/.gitleaks.toml +13 -0
- flameox-0.1.1/.import_linter_cache/.gitignore +2 -0
- flameox-0.1.1/.import_linter_cache/79180863b0bb2c106237f24db9d3bbd7f768d8d5.data.json +1 -0
- flameox-0.1.1/.import_linter_cache/CACHEDIR.TAG +3 -0
- flameox-0.1.1/.import_linter_cache/ea54b2bd85af3f0928e878c0c5844cbb11a7aacc.data.json +1 -0
- flameox-0.1.1/.import_linter_cache/flameox.meta.json +1 -0
- flameox-0.1.1/.import_linter_cache/flamo.meta.json +1 -0
- flameox-0.1.1/.jscpd.json +17 -0
- flameox-0.1.1/.pre-commit-config.yaml +63 -0
- flameox-0.1.1/.python-version +1 -0
- flameox-0.1.1/.releaserc +8 -0
- flameox-0.1.1/AGENTS.md +117 -0
- flameox-0.1.1/PKG-INFO +420 -0
- flameox-0.1.1/README.md +358 -0
- flameox-0.1.1/SECURITY.md +34 -0
- flameox-0.1.1/docs/acceptance.md +218 -0
- flameox-0.1.1/docs/adapters.md +234 -0
- flameox-0.1.1/docs/architecture-decisions.md +84 -0
- flameox-0.1.1/docs/architecture.md +368 -0
- flameox-0.1.1/docs/assets/flameox-flamegraph-hero.png +0 -0
- flameox-0.1.1/docs/interfaces.md +557 -0
- flameox-0.1.1/docs/investigations.md +403 -0
- flameox-0.1.1/docs/runtime-safety.md +293 -0
- flameox-0.1.1/docs/storage-and-evidence.md +917 -0
- flameox-0.1.1/npm/.oxlintrc.json +34 -0
- flameox-0.1.1/npm/README.md +12 -0
- flameox-0.1.1/npm/bin/flameox.cjs +77 -0
- flameox-0.1.1/npm/lib/jsonc-edit.cjs +47 -0
- flameox-0.1.1/npm/package-lock.json +1111 -0
- flameox-0.1.1/npm/package.json +39 -0
- flameox-0.1.1/npm/test/jsonc-edit.test.cjs +112 -0
- flameox-0.1.1/pyproject.toml +153 -0
- flameox-0.1.1/src/flameox/__init__.py +10 -0
- flameox-0.1.1/src/flameox/__main__.py +4 -0
- flameox-0.1.1/src/flameox/adapters/__init__.py +55 -0
- flameox-0.1.1/src/flameox/adapters/builtins.py +312 -0
- flameox-0.1.1/src/flameox/adapters/client_setup.py +485 -0
- flameox-0.1.1/src/flameox/adapters/compatibility.py +49 -0
- flameox-0.1.1/src/flameox/adapters/coverage.py +188 -0
- flameox-0.1.1/src/flameox/adapters/memray.py +231 -0
- flameox-0.1.1/src/flameox/adapters/observations.py +121 -0
- flameox-0.1.1/src/flameox/adapters/perfetto.py +573 -0
- flameox-0.1.1/src/flameox/adapters/pyperf.py +193 -0
- flameox-0.1.1/src/flameox/adapters/registry.py +225 -0
- flameox-0.1.1/src/flameox/adapters/setup_runtime.py +201 -0
- flameox-0.1.1/src/flameox/analysis/__init__.py +43 -0
- flameox-0.1.1/src/flameox/analysis/comparison.py +143 -0
- flameox-0.1.1/src/flameox/analysis/recipes.py +1438 -0
- flameox-0.1.1/src/flameox/application/__init__.py +201 -0
- flameox-0.1.1/src/flameox/application/analysis_provenance.py +115 -0
- flameox-0.1.1/src/flameox/application/analysis_records.py +299 -0
- flameox-0.1.1/src/flameox/application/analysis_rows.py +35 -0
- flameox-0.1.1/src/flameox/application/artifacts.py +141 -0
- flameox-0.1.1/src/flameox/application/async_work.py +30 -0
- flameox-0.1.1/src/flameox/application/capabilities.py +338 -0
- flameox-0.1.1/src/flameox/application/capture.py +1185 -0
- flameox-0.1.1/src/flameox/application/compaction.py +77 -0
- flameox-0.1.1/src/flameox/application/comparisons.py +746 -0
- flameox-0.1.1/src/flameox/application/drilldown.py +365 -0
- flameox-0.1.1/src/flameox/application/environment.py +42 -0
- flameox-0.1.1/src/flameox/application/evidence_lookup.py +110 -0
- flameox-0.1.1/src/flameox/application/evidence_query.py +159 -0
- flameox-0.1.1/src/flameox/application/evidence_rows.py +51 -0
- flameox-0.1.1/src/flameox/application/execution_policy.py +17 -0
- flameox-0.1.1/src/flameox/application/experiments.py +713 -0
- flameox-0.1.1/src/flameox/application/gc.py +425 -0
- flameox-0.1.1/src/flameox/application/imports.py +141 -0
- flameox-0.1.1/src/flameox/application/integrity.py +156 -0
- flameox-0.1.1/src/flameox/application/quarantine.py +317 -0
- flameox-0.1.1/src/flameox/application/records.py +353 -0
- flameox-0.1.1/src/flameox/application/recoverable_move.py +45 -0
- flameox-0.1.1/src/flameox/application/recovery.py +125 -0
- flameox-0.1.1/src/flameox/application/repair.py +140 -0
- flameox-0.1.1/src/flameox/application/run_rows.py +24 -0
- flameox-0.1.1/src/flameox/application/setup.py +556 -0
- flameox-0.1.1/src/flameox/application/source.py +222 -0
- flameox-0.1.1/src/flameox/application/status.py +132 -0
- flameox-0.1.1/src/flameox/application/viewers.py +157 -0
- flameox-0.1.1/src/flameox/application/workloads.py +368 -0
- flameox-0.1.1/src/flameox/catalog.py +398 -0
- flameox-0.1.1/src/flameox/cli.py +1767 -0
- flameox-0.1.1/src/flameox/collectors/__init__.py +1 -0
- flameox-0.1.1/src/flameox/collectors/torch_launcher.py +46 -0
- flameox-0.1.1/src/flameox/config.py +66 -0
- flameox-0.1.1/src/flameox/domain/__init__.py +98 -0
- flameox-0.1.1/src/flameox/domain/cursors.py +78 -0
- flameox-0.1.1/src/flameox/domain/errors.py +57 -0
- flameox-0.1.1/src/flameox/domain/identity.py +36 -0
- flameox-0.1.1/src/flameox/domain/models.py +576 -0
- flameox-0.1.1/src/flameox/evidence/__init__.py +11 -0
- flameox-0.1.1/src/flameox/evidence/publisher.py +279 -0
- flameox-0.1.1/src/flameox/evidence/schemas.py +386 -0
- flameox-0.1.1/src/flameox/evidence_scope.py +76 -0
- flameox-0.1.1/src/flameox/execution.py +350 -0
- flameox-0.1.1/src/flameox/mcp/__init__.py +3 -0
- flameox-0.1.1/src/flameox/mcp/server.py +1318 -0
- flameox-0.1.1/src/flameox/models.py +19 -0
- flameox-0.1.1/src/flameox/observability.py +107 -0
- flameox-0.1.1/src/flameox/py.typed +1 -0
- flameox-0.1.1/src/flameox/sdk.py +79 -0
- flameox-0.1.1/src/flameox/setup_ui.py +126 -0
- flameox-0.1.1/src/flameox/storage/__init__.py +27 -0
- flameox-0.1.1/src/flameox/storage/artifacts.py +204 -0
- flameox-0.1.1/src/flameox/storage/atomic.py +59 -0
- flameox-0.1.1/src/flameox/storage/corpus.py +141 -0
- flameox-0.1.1/src/flameox/storage/quotas.py +84 -0
- flameox-0.1.1/src/flameox/storage/records.py +135 -0
- flameox-0.1.1/src/flameox/storage/runs.py +92 -0
- flameox-0.1.1/src/flameox/storage/workspace.py +297 -0
- flameox-0.1.1/src/flameox/workers/__init__.py +1 -0
- flameox-0.1.1/src/flameox/workers/perfetto.py +191 -0
- flameox-0.1.1/tests/adapters/test_coverage.py +92 -0
- flameox-0.1.1/tests/adapters/test_memray.py +130 -0
- flameox-0.1.1/tests/adapters/test_perfetto.py +458 -0
- flameox-0.1.1/tests/adapters/test_pyperf.py +107 -0
- flameox-0.1.1/tests/adapters/test_setup_runtime.py +72 -0
- flameox-0.1.1/tests/analysis/test_comparison.py +70 -0
- flameox-0.1.1/tests/analysis/test_recipes.py +388 -0
- flameox-0.1.1/tests/application/test_analysis_records.py +68 -0
- flameox-0.1.1/tests/application/test_artifact_service.py +62 -0
- flameox-0.1.1/tests/application/test_capabilities.py +164 -0
- flameox-0.1.1/tests/application/test_evidence_query.py +65 -0
- flameox-0.1.1/tests/application/test_evidence_scope.py +52 -0
- flameox-0.1.1/tests/application/test_experiments.py +255 -0
- flameox-0.1.1/tests/application/test_gc.py +185 -0
- flameox-0.1.1/tests/application/test_integrity.py +24 -0
- flameox-0.1.1/tests/application/test_records_and_comparisons.py +500 -0
- flameox-0.1.1/tests/application/test_recovery.py +61 -0
- flameox-0.1.1/tests/application/test_repair.py +243 -0
- flameox-0.1.1/tests/application/test_setup.py +460 -0
- flameox-0.1.1/tests/application/test_source_identity.py +56 -0
- flameox-0.1.1/tests/application/test_status.py +71 -0
- flameox-0.1.1/tests/application/test_viewers.py +98 -0
- flameox-0.1.1/tests/application/test_workloads_and_capture.py +652 -0
- flameox-0.1.1/tests/domain/test_identity.py +26 -0
- flameox-0.1.1/tests/domain/test_models.py +85 -0
- flameox-0.1.1/tests/evidence/test_publication_and_catalog.py +334 -0
- flameox-0.1.1/tests/execution/test_broker.py +212 -0
- flameox-0.1.1/tests/golden/test_configuration_observations.py +140 -0
- flameox-0.1.1/tests/golden/test_memory_regression.py +110 -0
- flameox-0.1.1/tests/golden/test_reverse_scan.py +198 -0
- flameox-0.1.1/tests/mcp/test_server.py +382 -0
- flameox-0.1.1/tests/performance/test_catalog_scale.py +158 -0
- flameox-0.1.1/tests/security/test_offline.py +42 -0
- flameox-0.1.1/tests/storage/test_artifacts_and_runs.py +111 -0
- flameox-0.1.1/tests/storage/test_workspace.py +84 -0
- flameox-0.1.1/tests/test_cli_setup.py +56 -0
- flameox-0.1.1/tests/test_cli_smoke.py +110 -0
- flameox-0.1.1/tests/test_release_metadata.py +23 -0
- flameox-0.1.1/uv.lock +2762 -0
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "flameox",
|
|
3
|
+
"image": "mcr.microsoft.com/devcontainers/python:3.12",
|
|
4
|
+
"features": {
|
|
5
|
+
"ghcr.io/devcontainers/features/node:1": {
|
|
6
|
+
"version": "20"
|
|
7
|
+
}
|
|
8
|
+
},
|
|
9
|
+
"postCreateCommand": "uv sync --extra dev --extra python --extra execution --extra memory --extra trace --extra cpu && cd npm && npm install",
|
|
10
|
+
"customizations": {
|
|
11
|
+
"vscode": {
|
|
12
|
+
"extensions": [
|
|
13
|
+
"charliermarsh.ruff",
|
|
14
|
+
"ms-python.mypy-type-checker",
|
|
15
|
+
"ms-python.python",
|
|
16
|
+
"oxc.oxc-vscode"
|
|
17
|
+
],
|
|
18
|
+
"settings": {
|
|
19
|
+
"python.defaultInterpreterPath": "${containerWorkspaceFolder}/.venv/bin/python",
|
|
20
|
+
"[python]": {
|
|
21
|
+
"editor.defaultFormatter": "charliermarsh.ruff",
|
|
22
|
+
"editor.formatOnSave": true
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# flameox environment variables
|
|
2
|
+
# Copy this file to .env and adjust values for local development.
|
|
3
|
+
|
|
4
|
+
# Override the default .diagnostics/ workspace directory
|
|
5
|
+
# FLAMEOX_PROJECT_ROOT=.
|
|
6
|
+
|
|
7
|
+
# Path to Perfetto Trace Processor binary (optional, for trace analysis)
|
|
8
|
+
# FLAMEOX_PERFETTO_TRACE_PROCESSOR=/usr/bin/trace_processor
|
|
9
|
+
|
|
10
|
+
# Log level for the CLI (DEBUG, INFO, WARNING, ERROR)
|
|
11
|
+
# FLAMEOX_LOG_LEVEL=INFO
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
* @morluto
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Bug report
|
|
3
|
+
about: Report a bug in flameox
|
|
4
|
+
title: ""
|
|
5
|
+
labels: ["bug", "triage"]
|
|
6
|
+
assignees: []
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Description
|
|
10
|
+
|
|
11
|
+
<!-- What happened, and what did you expect to happen? -->
|
|
12
|
+
|
|
13
|
+
## Steps to reproduce
|
|
14
|
+
|
|
15
|
+
1.
|
|
16
|
+
2.
|
|
17
|
+
3.
|
|
18
|
+
|
|
19
|
+
## Environment
|
|
20
|
+
|
|
21
|
+
- flameox version (`flameox --version`):
|
|
22
|
+
- Python version (`python --version`):
|
|
23
|
+
- OS:
|
|
24
|
+
- MCP client (if applicable):
|
|
25
|
+
|
|
26
|
+
## Relevant output
|
|
27
|
+
|
|
28
|
+
```text
|
|
29
|
+
<!-- Paste CLI output, error messages, or MCP protocol logs here -->
|
|
30
|
+
```
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Feature request
|
|
3
|
+
about: Propose an enhancement for flameox
|
|
4
|
+
title: ""
|
|
5
|
+
labels: ["enhancement", "triage"]
|
|
6
|
+
assignees: []
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Problem
|
|
10
|
+
|
|
11
|
+
<!-- What gap or friction does this address? -->
|
|
12
|
+
|
|
13
|
+
## Proposed solution
|
|
14
|
+
|
|
15
|
+
<!-- Describe the feature and how an agent or human would use it. -->
|
|
16
|
+
|
|
17
|
+
## Alternatives considered
|
|
18
|
+
|
|
19
|
+
<!-- What other approaches did you think about? -->
|
|
20
|
+
|
|
21
|
+
## Impact
|
|
22
|
+
|
|
23
|
+
<!-- Which part of the investigation workflow does this improve? -->
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
- name: bug
|
|
2
|
+
color: "d73a4a"
|
|
3
|
+
description: Something isn't working
|
|
4
|
+
- name: enhancement
|
|
5
|
+
color: "a2eeef"
|
|
6
|
+
description: New feature or improvement
|
|
7
|
+
- name: documentation
|
|
8
|
+
color: "0075ca"
|
|
9
|
+
description: Documentation changes
|
|
10
|
+
- name: dependencies
|
|
11
|
+
color: "0366d6"
|
|
12
|
+
description: Dependency updates
|
|
13
|
+
- name: security
|
|
14
|
+
color: "d93f0b"
|
|
15
|
+
description: Security-related changes
|
|
16
|
+
- name: triage
|
|
17
|
+
color: "fbca04"
|
|
18
|
+
description: Needs initial assessment
|
|
19
|
+
- name: adapter/pyperf
|
|
20
|
+
color: "bfdadc"
|
|
21
|
+
description: pyperf integration
|
|
22
|
+
- name: adapter/py-spy
|
|
23
|
+
color: "bfdadc"
|
|
24
|
+
description: py-spy integration
|
|
25
|
+
- name: adapter/perfetto
|
|
26
|
+
color: "bfdadc"
|
|
27
|
+
description: Perfetto integration
|
|
28
|
+
- name: adapter/memray
|
|
29
|
+
color: "bfdadc"
|
|
30
|
+
description: Memray integration
|
|
31
|
+
- name: adapter/coverage
|
|
32
|
+
color: "bfdadc"
|
|
33
|
+
description: coverage.py integration
|
|
34
|
+
- name: area/storage
|
|
35
|
+
color: "5319e7"
|
|
36
|
+
description: Storage and evidence layer
|
|
37
|
+
- name: area/cli
|
|
38
|
+
color: "5319e7"
|
|
39
|
+
description: CLI interface
|
|
40
|
+
- name: area/mcp
|
|
41
|
+
color: "5319e7"
|
|
42
|
+
description: MCP server
|
|
43
|
+
- name: area/investigations
|
|
44
|
+
color: "5319e7"
|
|
45
|
+
description: Investigations and experiments
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
## Description
|
|
2
|
+
|
|
3
|
+
<!-- What problem does this PR solve? Link related issues. -->
|
|
4
|
+
|
|
5
|
+
## Approach
|
|
6
|
+
|
|
7
|
+
<!-- Briefly explain the chosen approach. -->
|
|
8
|
+
|
|
9
|
+
## Commands run
|
|
10
|
+
|
|
11
|
+
<!-- Commands you used to verify the change (lint, type-check, test, etc.) -->
|
|
12
|
+
```console
|
|
13
|
+
uv run ruff check src tests
|
|
14
|
+
uv run mypy src tests
|
|
15
|
+
uv run pytest -q
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Compatibility
|
|
19
|
+
|
|
20
|
+
<!-- Call out any breaking changes, platform sensitivity, or adapter impact. -->
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
|
|
3
|
+
"extends": [
|
|
4
|
+
"config:recommended",
|
|
5
|
+
":separateMajorMinor",
|
|
6
|
+
":combinePatchMinorUpdates"
|
|
7
|
+
],
|
|
8
|
+
"minimumReleaseAge": "3 days",
|
|
9
|
+
"labels": ["dependencies"],
|
|
10
|
+
"rangeStrategy": "pin",
|
|
11
|
+
"packageRules": [
|
|
12
|
+
{
|
|
13
|
+
"matchManagers": ["pep621"],
|
|
14
|
+
"matchDepTypes": ["project.dependencies"],
|
|
15
|
+
"rangeStrategy": "bump"
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"matchManagers": ["pep621"],
|
|
19
|
+
"matchDepTypes": ["dev"],
|
|
20
|
+
"groupName": "Python dev dependencies"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"matchManagers": ["npm"],
|
|
24
|
+
"groupName": "npm dependencies"
|
|
25
|
+
}
|
|
26
|
+
]
|
|
27
|
+
}
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
name: CI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
pull_request:
|
|
5
|
+
branches: [main]
|
|
6
|
+
push:
|
|
7
|
+
branches: [main]
|
|
8
|
+
|
|
9
|
+
concurrency:
|
|
10
|
+
group: ${{ github.workflow }}-${{ github.ref }}
|
|
11
|
+
cancel-in-progress: true
|
|
12
|
+
|
|
13
|
+
jobs:
|
|
14
|
+
lint:
|
|
15
|
+
name: Lint & Format
|
|
16
|
+
runs-on: ubuntu-latest
|
|
17
|
+
timeout-minutes: 5
|
|
18
|
+
steps:
|
|
19
|
+
- uses: actions/checkout@v4
|
|
20
|
+
- uses: astral-sh/setup-uv@v5
|
|
21
|
+
with:
|
|
22
|
+
python-version: "3.12"
|
|
23
|
+
- run: uv sync --extra dev --extra python --extra execution --extra memory --extra trace --extra cpu
|
|
24
|
+
- run: uv run ruff check src tests
|
|
25
|
+
- run: uv run ruff format --check src tests
|
|
26
|
+
|
|
27
|
+
type-check:
|
|
28
|
+
name: Type Check
|
|
29
|
+
runs-on: ubuntu-latest
|
|
30
|
+
timeout-minutes: 5
|
|
31
|
+
steps:
|
|
32
|
+
- uses: actions/checkout@v4
|
|
33
|
+
- uses: astral-sh/setup-uv@v5
|
|
34
|
+
with:
|
|
35
|
+
python-version: "3.12"
|
|
36
|
+
- run: uv sync --extra dev --extra python --extra execution --extra memory --extra trace --extra cpu
|
|
37
|
+
- run: uv run mypy src tests
|
|
38
|
+
|
|
39
|
+
test:
|
|
40
|
+
name: Test
|
|
41
|
+
runs-on: ubuntu-latest
|
|
42
|
+
timeout-minutes: 15
|
|
43
|
+
strategy:
|
|
44
|
+
matrix:
|
|
45
|
+
python-version: ["3.12"]
|
|
46
|
+
steps:
|
|
47
|
+
- uses: actions/checkout@v4
|
|
48
|
+
- uses: astral-sh/setup-uv@v5
|
|
49
|
+
with:
|
|
50
|
+
python-version: ${{ matrix.python-version }}
|
|
51
|
+
- run: uv sync --extra dev --extra python --extra execution --extra memory --extra trace --extra cpu
|
|
52
|
+
- run: uv run pytest -q --cov --cov-report=xml --cov-report=term
|
|
53
|
+
- uses: codecov/codecov-action@v5
|
|
54
|
+
if: github.event_name == 'pull_request'
|
|
55
|
+
with:
|
|
56
|
+
files: coverage.xml
|
|
57
|
+
|
|
58
|
+
dead-code:
|
|
59
|
+
name: Dead Code
|
|
60
|
+
runs-on: ubuntu-latest
|
|
61
|
+
timeout-minutes: 5
|
|
62
|
+
steps:
|
|
63
|
+
- uses: actions/checkout@v4
|
|
64
|
+
- uses: astral-sh/setup-uv@v5
|
|
65
|
+
with:
|
|
66
|
+
python-version: "3.12"
|
|
67
|
+
- run: uv sync --extra dev
|
|
68
|
+
- run: uv run vulture src/flameox --min-confidence 80
|
|
69
|
+
|
|
70
|
+
import-boundaries:
|
|
71
|
+
name: Import Boundaries
|
|
72
|
+
runs-on: ubuntu-latest
|
|
73
|
+
timeout-minutes: 5
|
|
74
|
+
steps:
|
|
75
|
+
- uses: actions/checkout@v4
|
|
76
|
+
- uses: astral-sh/setup-uv@v5
|
|
77
|
+
with:
|
|
78
|
+
python-version: "3.12"
|
|
79
|
+
- run: uv sync --extra dev
|
|
80
|
+
- run: uv run lint-imports
|
|
81
|
+
|
|
82
|
+
unused-deps:
|
|
83
|
+
name: Unused Dependencies
|
|
84
|
+
runs-on: ubuntu-latest
|
|
85
|
+
timeout-minutes: 5
|
|
86
|
+
steps:
|
|
87
|
+
- uses: actions/checkout@v4
|
|
88
|
+
- uses: astral-sh/setup-uv@v5
|
|
89
|
+
with:
|
|
90
|
+
python-version: "3.12"
|
|
91
|
+
- run: uv sync --extra dev
|
|
92
|
+
- run: uv run deptry src
|
|
93
|
+
continue-on-error: true
|
|
94
|
+
|
|
95
|
+
secret-scan:
|
|
96
|
+
name: Secret Scan
|
|
97
|
+
runs-on: ubuntu-latest
|
|
98
|
+
timeout-minutes: 5
|
|
99
|
+
steps:
|
|
100
|
+
- uses: actions/checkout@v4
|
|
101
|
+
with:
|
|
102
|
+
fetch-depth: 0
|
|
103
|
+
- uses: gitleaks/gitleaks-action@v2
|
|
104
|
+
with:
|
|
105
|
+
config-path: .gitleaks.toml
|
|
106
|
+
|
|
107
|
+
security-audit:
|
|
108
|
+
name: Security Audit
|
|
109
|
+
runs-on: ubuntu-latest
|
|
110
|
+
timeout-minutes: 5
|
|
111
|
+
steps:
|
|
112
|
+
- uses: actions/checkout@v4
|
|
113
|
+
- uses: astral-sh/setup-uv@v5
|
|
114
|
+
with:
|
|
115
|
+
python-version: "3.12"
|
|
116
|
+
- run: uv sync --extra dev
|
|
117
|
+
- run: uv run pip-audit
|
|
118
|
+
|
|
119
|
+
npm:
|
|
120
|
+
name: npm (lint & test)
|
|
121
|
+
runs-on: ubuntu-latest
|
|
122
|
+
timeout-minutes: 5
|
|
123
|
+
defaults:
|
|
124
|
+
run:
|
|
125
|
+
working-directory: npm
|
|
126
|
+
steps:
|
|
127
|
+
- uses: actions/checkout@v4
|
|
128
|
+
- uses: actions/setup-node@v4
|
|
129
|
+
with:
|
|
130
|
+
node-version: "20"
|
|
131
|
+
cache: npm
|
|
132
|
+
cache-dependency-path: npm/package-lock.json
|
|
133
|
+
- run: npm ci
|
|
134
|
+
- run: npx oxlint
|
|
135
|
+
- run: npx oxfmt --check .
|
|
136
|
+
- run: npm test
|
|
137
|
+
|
|
138
|
+
agents-md-validate:
|
|
139
|
+
name: Validate AGENTS.md
|
|
140
|
+
runs-on: ubuntu-latest
|
|
141
|
+
timeout-minutes: 5
|
|
142
|
+
steps:
|
|
143
|
+
- uses: actions/checkout@v4
|
|
144
|
+
- uses: astral-sh/setup-uv@v5
|
|
145
|
+
with:
|
|
146
|
+
python-version: "3.12"
|
|
147
|
+
- run: uv sync --extra dev --extra python --extra execution --extra memory --extra trace --extra cpu
|
|
148
|
+
- run: uv run flameox --help
|
|
149
|
+
- run: uv run ruff check src tests
|
|
150
|
+
- run: uv run mypy src tests
|
|
151
|
+
- run: uv run pytest --collect-only -q
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
name: Sync Labels
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [main]
|
|
6
|
+
paths:
|
|
7
|
+
- ".github/labels.yml"
|
|
8
|
+
- ".github/workflows/labels.yml"
|
|
9
|
+
|
|
10
|
+
jobs:
|
|
11
|
+
sync:
|
|
12
|
+
runs-on: ubuntu-latest
|
|
13
|
+
steps:
|
|
14
|
+
- uses: actions/checkout@v4
|
|
15
|
+
- uses: crazy-max/ghaction-github-labeler@v5
|
|
16
|
+
with:
|
|
17
|
+
github-token: ${{ secrets.GITHUB_TOKEN }}
|
|
18
|
+
yaml-file: .github/labels.yml
|
|
19
|
+
dry-run: false
|
|
20
|
+
skip-delete: false
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
name: Release
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
tags: ["v*"]
|
|
6
|
+
|
|
7
|
+
jobs:
|
|
8
|
+
pypi:
|
|
9
|
+
name: Publish to PyPI
|
|
10
|
+
runs-on: ubuntu-latest
|
|
11
|
+
permissions:
|
|
12
|
+
id-token: write
|
|
13
|
+
steps:
|
|
14
|
+
- uses: actions/checkout@v4
|
|
15
|
+
- uses: astral-sh/setup-uv@v5
|
|
16
|
+
with:
|
|
17
|
+
python-version: "3.12"
|
|
18
|
+
- run: uv build
|
|
19
|
+
- uses: pypa/gh-action-pypi-publish@release/v1
|
|
20
|
+
|
|
21
|
+
npm:
|
|
22
|
+
name: Publish to npm
|
|
23
|
+
runs-on: ubuntu-latest
|
|
24
|
+
defaults:
|
|
25
|
+
run:
|
|
26
|
+
working-directory: npm
|
|
27
|
+
steps:
|
|
28
|
+
- uses: actions/checkout@v4
|
|
29
|
+
- uses: actions/setup-node@v4
|
|
30
|
+
with:
|
|
31
|
+
node-version: "20"
|
|
32
|
+
registry-url: "https://registry.npmjs.org"
|
|
33
|
+
- run: npm ci
|
|
34
|
+
- run: npm publish --access public
|
|
35
|
+
env:
|
|
36
|
+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
|
37
|
+
|
|
38
|
+
release-notes:
|
|
39
|
+
name: Generate Release Notes
|
|
40
|
+
runs-on: ubuntu-latest
|
|
41
|
+
steps:
|
|
42
|
+
- uses: actions/checkout@v4
|
|
43
|
+
with:
|
|
44
|
+
fetch-depth: 0
|
|
45
|
+
- uses: cycjimmy/semantic-release-action@v4
|
|
46
|
+
with:
|
|
47
|
+
semantic_version: 24
|
|
48
|
+
env:
|
|
49
|
+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
flameox-0.1.1/.gitignore
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# Gitleaks configuration for flameox
|
|
2
|
+
# https://github.com/gitleaks/gitleaks
|
|
3
|
+
|
|
4
|
+
[allowlist]
|
|
5
|
+
description = "Global allowlist"
|
|
6
|
+
|
|
7
|
+
[[rules]]
|
|
8
|
+
id = "generic-api-key"
|
|
9
|
+
[rules.allowlist]
|
|
10
|
+
paths = [
|
|
11
|
+
'''npm/package-lock\.json''',
|
|
12
|
+
'''uv\.lock''',
|
|
13
|
+
]
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"flamo.application.setup":[["flamo.domain",25,"from flamo.domain import DomainError, ErrorCode"],["flamo.storage.atomic",27,"from flamo.storage.atomic import atomic_write_bytes, atomic_write_json, fsync_directory"],["flamo.models",26,"from flamo.models import ContractModel"],["flamo.adapters.setup_runtime",24,"from flamo.adapters.setup_runtime import ManagedRuntime, RuntimeInstallation"],["flamo.adapters.client_setup",16,"from flamo.adapters.client_setup import ("]],"flamo.catalog":[["flamo.evidence.schemas",18,"from flamo.evidence.schemas import SCHEMA_MAJOR, SCHEMA_MINOR, schema_for, table_names"],["flamo.storage.corpus",21,"from flamo.storage.corpus import CorpusCommit, GenerationManifest"],["flamo.storage.atomic",20,"from flamo.storage.atomic import fsync_directory"],["flamo.storage.workspace",22,"from flamo.storage.workspace import Workspace"],["flamo.domain.errors",17,"from flamo.domain.errors import DomainError, ErrorCode"],["flamo.observability",19,"from flamo.observability import OperationLogger, elapsed_ms"]],"flamo.application.comparisons":[["flamo.application.async_work",19,"from flamo.application.async_work import run_atomic_thread"],["flamo.models",35,"from flamo.models import ContractModel"],["flamo.analysis",13,"from flamo.analysis import compare_paired_samples"],["flamo.storage",36,"from flamo.storage import JsonRecordStore, RunStore, Workspace"],["flamo.evidence",34,"from flamo.evidence import GenerationPublisher"],["flamo.catalog",20,"from flamo.catalog import Catalog, Snapshot"],["flamo.domain",21,"from flamo.domain import ("],["flamo.application.analysis_provenance",14,"from flamo.application.analysis_provenance import ("]],"flamo.application.imports":[["flamo.evidence",26,"from flamo.evidence import GenerationPublisher"],["flamo.storage",28,"from flamo.storage import ArtifactStore, RunStore, Workspace"],["flamo.domain.errors",14,"from flamo.domain.errors import DomainError, ErrorCode"],["flamo.domain.identity",15,"from flamo.domain.identity import new_id"],["flamo.application.environment",6,"from flamo.application.environment import collect_environment"],["flamo.application.source",13,"from flamo.application.source import collect_partial_source_state"],["flamo.application.run_rows",12,"from flamo.application.run_rows import run_row"],["flamo.domain.models",16,"from flamo.domain.models import ("],["flamo.application.evidence_rows",7,"from flamo.application.evidence_rows import ("],["flamo.models",27,"from flamo.models import ContractModel"]],"flamo.application.status":[["flamo.catalog",14,"from flamo.catalog import Catalog"],["flamo.models",16,"from flamo.models import ContractModel"],["flamo.storage",17,"from flamo.storage import RunStore, Workspace, tree_bytes"],["flamo.application.capabilities",10,"from flamo.application.capabilities import CapabilityService"],["flamo.application.quarantine",12,"from flamo.application.quarantine import QuarantineService"],["flamo.application.integrity",11,"from flamo.application.integrity import IntegrityService"],["flamo.domain",15,"from flamo.domain import CapabilityStatus, DomainError, ExecutionStatus"],["flamo.application.recovery",13,"from flamo.application.recovery import RecoveryService"],["flamo.adapters",3,"from flamo.adapters import ("]],"flamo.application.records":[["flamo.domain",9,"from flamo.domain import ("],["flamo.evidence",22,"from flamo.evidence import GenerationPublisher"],["flamo.storage",24,"from flamo.storage import ArtifactStore, JsonRecordStore, RunStore, Workspace"],["flamo.catalog",8,"from flamo.catalog import Catalog"],["flamo.models",23,"from flamo.models import ContractModel"]],"flamo.application.evidence_lookup":[["flamo.storage",13,"from flamo.storage import GenerationManifest, RunStore, Workspace"],["flamo.domain",11,"from flamo.domain import DomainError, ErrorCode"],["flamo.application.artifacts",9,"from flamo.application.artifacts import ArtifactService"],["flamo.catalog",10,"from flamo.catalog import Catalog"],["flamo.models",12,"from flamo.models import ContractModel"]],"flamo.domain":[["flamo.domain.errors",2,"from flamo.domain.errors import DomainError, ErrorCode"],["flamo.domain.identity",3,"from flamo.domain.identity import canonical_json_bytes, content_id, digest_model, new_id"],["flamo.domain.cursors",1,"from flamo.domain.cursors import CursorCodec, CursorValue"],["flamo.domain.models",4,"from flamo.domain.models import ("]],"flamo.evidence_scope":[["flamo.models",5,"from flamo.models import ContractModel"],["flamo.domain",4,"from flamo.domain import DomainError, ErrorCode"],["flamo.catalog",3,"from flamo.catalog import Snapshot"]],"flamo.adapters.memray":[["flamo.storage",11,"from flamo.storage import ArtifactStore, RunStore, Workspace"],["flamo.models",10,"from flamo.models import ContractModel"],["flamo.evidence",9,"from flamo.evidence import GenerationPublisher"],["flamo.adapters.compatibility",7,"from flamo.adapters.compatibility import require_supported_producer_major"],["flamo.domain",8,"from flamo.domain import ArtifactKind, DomainError, ErrorCode, digest_model"]],"flamo.storage.atomic":[],"flamo.application.artifacts":[["flamo.domain",7,"from flamo.domain import ArtifactContent, Sensitivity"],["flamo.catalog",6,"from flamo.catalog import Catalog"],["flamo.storage",9,"from flamo.storage import ArtifactStore, Workspace"],["flamo.models",8,"from flamo.models import ContractModel"]],"flamo.adapters.builtins":[["flamo.domain",7,"from flamo.domain import ArtifactKind, DomainError, ErrorCode"]],"flamo.application":[["flamo.application.status",98,"from flamo.application.status import WorkspaceStatus, workspace_status"],["flamo.application.drilldown",29,"from flamo.application.drilldown import ("],["flamo.application.compaction",19,"from flamo.application.compaction import CompactionResult, CompactionService"],["flamo.application.comparisons",20,"from flamo.application.comparisons import ("],["flamo.application.setup",88,"from flamo.application.setup import ("],["flamo.application.viewers",99,"from flamo.application.viewers import ("],["flamo.application.gc",53,"from flamo.application.gc import ("],["flamo.application.experiments",46,"from flamo.application.experiments import ("],["flamo.application.recovery",82,"from flamo.application.recovery import ("],["flamo.application.capture",14,"from flamo.application.capture import ("],["flamo.application.quarantine",68,"from flamo.application.quarantine import ("],["flamo.application.records",73,"from flamo.application.records import ("],["flamo.application.integrity",63,"from flamo.application.integrity import ("],["flamo.application.capabilities",13,"from flamo.application.capabilities import CapabilityList, CapabilityService"],["flamo.application.workloads",104,"from flamo.application.workloads import ("],["flamo.application.analysis_records",1,"from flamo.application.analysis_records import ("],["flamo.application.evidence_lookup",36,"from flamo.application.evidence_lookup import ("],["flamo.application.imports",62,"from flamo.application.imports import ImportArtifactRequest, ImportResult, ImportService"],["flamo.application.evidence_query",40,"from flamo.application.evidence_query import ("],["flamo.application.artifacts",6,"from flamo.application.artifacts import ("],["flamo.application.execution_policy",45,"from flamo.application.execution_policy import ExecutionPolicy"],["flamo.application.repair",87,"from flamo.application.repair import RepairEntry, RepairPlan, RepairResult, RepairService"]],"flamo.storage.runs":[["flamo.domain.errors",5,"from flamo.domain.errors import DomainError, ErrorCode"],["flamo.domain.models",6,"from flamo.domain.models import RunManifest"],["flamo.storage.workspace",8,"from flamo.storage.workspace import Workspace"],["flamo.storage.atomic",7,"from flamo.storage.atomic import atomic_write_json"]],"flamo.mcp.server":[["flamo.adapters",16,"from flamo.adapters import ("],["flamo.application",38,"from flamo.application import ("],["flamo.catalog",84,"from flamo.catalog import Catalog"],["flamo.models",98,"from flamo.models import ContractModel"],["flamo.domain",85,"from flamo.domain import ("],["flamo.analysis",29,"from flamo.analysis import ("],["flamo.storage",99,"from flamo.storage import RunStore, Workspace"]],"flamo.application.compaction":[["flamo.models",5,"from flamo.models import ContractModel"],["flamo.storage",6,"from flamo.storage import GenerationManifest, Workspace"],["flamo.catalog",3,"from flamo.catalog import Catalog"],["flamo.evidence",4,"from flamo.evidence import GenerationPublisher, schema_for, table_names"]],"flamo.application.environment":[["flamo.domain.identity",10,"from flamo.domain.identity import digest_model"],["flamo.domain.models",11,"from flamo.domain.models import EnvironmentRecord, IdentityQuality, utc_now"]],"flamo.application.recoverable_move":[["flamo.storage.atomic",7,"from flamo.storage.atomic import fsync_directory"],["flamo.domain",6,"from flamo.domain import DomainError, ErrorCode"]],"flamo.workers.perfetto":[],"flamo.evidence.schemas":[],"flamo.storage.quotas":[["flamo.domain",9,"from flamo.domain import DomainError, ErrorCode"],["flamo.storage.workspace",10,"from flamo.storage.workspace import Workspace"]],"flamo.application.analysis_provenance":[["flamo.models",15,"from flamo.models import ContractModel"],["flamo.domain",9,"from flamo.domain import ("],["flamo.application.analysis_rows",8,"from flamo.application.analysis_rows import analysis_row"]],"flamo.application.run_rows":[["flamo.domain",3,"from flamo.domain import RunManifest"]],"flamo.application.repair":[["flamo.application.quarantine",6,"from flamo.application.quarantine import QuarantineManifest, QuarantineService"],["flamo.models",8,"from flamo.models import ContractModel"],["flamo.domain",7,"from flamo.domain import DomainError, ErrorCode, RunManifest, digest_model"],["flamo.storage",9,"from flamo.storage import Workspace"],["flamo.storage.atomic",10,"from flamo.storage.atomic import atomic_write_bytes"]],"flamo.storage.artifacts":[["flamo.domain.errors",14,"from flamo.domain.errors import DomainError, ErrorCode"],["flamo.storage.workspace",18,"from flamo.storage.workspace import Workspace"],["flamo.storage.quotas",17,"from flamo.storage.quotas import StorageQuota"],["flamo.storage.atomic",16,"from flamo.storage.atomic import atomic_write_json, fsync_directory"],["flamo.domain.models",15,"from flamo.domain.models import ArtifactContent, Integrity, utc_now"]],"flamo.application.evidence_query":[["flamo.models",5,"from flamo.models import ContractModel"],["flamo.catalog",3,"from flamo.catalog import Catalog"],["flamo.domain",4,"from flamo.domain import CursorCodec, DomainError, ErrorCode, digest_model"],["flamo.storage",6,"from flamo.storage import Workspace"]],"flamo.mcp":[["flamo.mcp.server",1,"from flamo.mcp.server import create_server, run_server"]],"flamo.collectors":[],"flamo.execution":[["flamo.domain.errors",14,"from flamo.domain.errors import DomainError, ErrorCode"],["flamo.models",16,"from flamo.models import ContractModel"],["flamo.domain.models",15,"from flamo.domain.models import ProcessResult"]],"flamo.observability":[["flamo.domain.models",12,"from flamo.domain.models import utc_now"],["flamo.models",13,"from flamo.models import ContractModel"]],"flamo.application.analysis_rows":[["flamo.domain",5,"from flamo.domain import AnalysisRecord"]],"flamo.adapters.perfetto":[["flamo.models",22,"from flamo.models import ContractModel"],["flamo.evidence",20,"from flamo.evidence import GenerationPublisher"],["flamo.execution",21,"from flamo.execution import ExecutionRequest, SubprocessBroker"],["flamo.domain",13,"from flamo.domain import ("],["flamo.storage",23,"from flamo.storage import ArtifactStore, RunStore, Workspace"],["flamo.storage.atomic",24,"from flamo.storage.atomic import atomic_write_json"]],"flamo.application.capabilities":[["flamo.domain",11,"from flamo.domain import CapabilityReport, CapabilityStatus, DomainError"],["flamo.adapters.registry",10,"from flamo.adapters.registry import AdapterRegistry"],["flamo.storage",15,"from flamo.storage import Workspace"],["flamo.adapters.builtins",9,"from flamo.adapters.builtins import BUILTIN_ADAPTERS, BuiltinAdapter, builtin_adapter"],["flamo.execution",13,"from flamo.execution import ExecutionRequest, SubprocessBroker"],["flamo.domain.models",12,"from flamo.domain.models import utc_now"],["flamo.models",14,"from flamo.models import ContractModel"]],"flamo.application.capture":[["flamo.application.async_work",22,"from flamo.application.async_work import run_atomic_thread"],["flamo.observability",57,"from flamo.observability import OperationLogger, elapsed_ms"],["flamo.adapters.builtins",18,"from flamo.adapters.builtins import ("],["flamo.storage",58,"from flamo.storage import ArtifactStore, RunStore, StorageQuota, Workspace"],["flamo.evidence",54,"from flamo.evidence import GenerationPublisher"],["flamo.application.capabilities",23,"from flamo.application.capabilities import CapabilityService"],["flamo.storage.atomic",59,"from flamo.storage.atomic import atomic_write_bytes"],["flamo.domain",34,"from flamo.domain import ("],["flamo.models",56,"from flamo.models import ContractModel"],["flamo.application.evidence_rows",25,"from flamo.application.evidence_rows import ("],["flamo.application.source",32,"from flamo.application.source import collect_source_state"],["flamo.domain.models",53,"from flamo.domain.models import utc_now"],["flamo.execution",55,"from flamo.execution import ExecutionRequest, SubprocessBroker"],["flamo.application.workloads",33,"from flamo.application.workloads import Scalar, WorkloadService"],["flamo.application.environment",24,"from flamo.application.environment import collect_environment"],["flamo.application.run_rows",31,"from flamo.application.run_rows import run_row"],["flamo.application.execution_policy",30,"from flamo.application.execution_policy import ExecutionPolicy"]],"flamo.analysis.comparison":[["flamo.domain.models",11,"from flamo.domain.models import ("],["flamo.domain.identity",10,"from flamo.domain.identity import new_id"]],"flamo.setup_ui":[["flamo.domain",12,"from flamo.domain import DomainError, ErrorCode"],["flamo.adapters.client_setup",10,"from flamo.adapters.client_setup import ALL_SETUP_CLIENTS, SetupClient"],["flamo.application.setup",11,"from flamo.application.setup import SetupInspection, SetupPlan, SetupReport"]],"flamo.domain.models":[["flamo.models",15,"from flamo.models import ContractModel"]],"flamo.application.viewers":[["flamo.domain",9,"from flamo.domain import ArtifactKind, DomainError, ErrorCode, ProcessResult"],["flamo.models",11,"from flamo.models import ContractModel"],["flamo.execution",10,"from flamo.execution import ExecutionRequest, SubprocessBroker"],["flamo.application.artifacts",8,"from flamo.application.artifacts import ArtifactService"],["flamo.storage",12,"from flamo.storage import ArtifactStore, Workspace"]],"flamo":[],"flamo.storage.records":[["flamo.storage.workspace",10,"from flamo.storage.workspace import Workspace"],["flamo.storage.atomic",9,"from flamo.storage.atomic import atomic_write_json"],["flamo.domain",8,"from flamo.domain import DomainError, ErrorCode"]],"flamo.workers":[],"flamo.config":[["flamo.models",10,"from flamo.models import ContractModel"]],"flamo.application.experiments":[["flamo.application.execution_policy",28,"from flamo.application.execution_policy import ExecutionPolicy"],["flamo.application.workloads",29,"from flamo.application.workloads import Scalar, WorkloadService"],["flamo.storage",48,"from flamo.storage import JsonRecordStore, RunStore, Workspace"],["flamo.domain.models",45,"from flamo.domain.models import utc_now"],["flamo.domain",30,"from flamo.domain import ("],["flamo.application.async_work",18,"from flamo.application.async_work import run_atomic_thread"],["flamo.evidence",46,"from flamo.evidence import GenerationPublisher, PublishedGeneration"],["flamo.models",47,"from flamo.models import ContractModel"],["flamo.adapters",17,"from flamo.adapters import PyPerfExtractor"],["flamo.application.capture",19,"from flamo.application.capture import CaptureService"],["flamo.application.comparisons",20,"from flamo.application.comparisons import ("]],"flamo.application.gc":[["flamo.models",16,"from flamo.models import ContractModel"],["flamo.catalog",14,"from flamo.catalog import Catalog"],["flamo.domain",15,"from flamo.domain import DomainError, ErrorCode, digest_model"],["flamo.storage",17,"from flamo.storage import GenerationManifest, Workspace, tree_bytes"],["flamo.storage.atomic",18,"from flamo.storage.atomic import atomic_write_json, fsync_directory"],["flamo.application.recoverable_move",9,"from flamo.application.recoverable_move import ("]],"flamo.domain.errors":[],"flamo.application.analysis_records":[["flamo.catalog",24,"from flamo.catalog import Catalog, Snapshot"],["flamo.domain",25,"from flamo.domain import ("],["flamo.evidence_scope",31,"from flamo.evidence_scope import resolve_evidence_scope"],["flamo.evidence",30,"from flamo.evidence import GenerationPublisher"],["flamo.analysis",9,"from flamo.analysis import ("],["flamo.models",32,"from flamo.models import ContractModel"],["flamo.application.async_work",23,"from flamo.application.async_work import run_atomic_thread"],["flamo.storage",33,"from flamo.storage import ArtifactStore, GenerationManifest, Workspace"],["flamo.application.analysis_provenance",18,"from flamo.application.analysis_provenance import ("]],"flamo.collectors.torch_launcher":[],"flamo.adapters.registry":[["flamo.storage",11,"from flamo.storage import Workspace"],["flamo.domain",9,"from flamo.domain import DomainError, ErrorCode, digest_model"],["flamo.models",10,"from flamo.models import ContractModel"],["flamo.storage.atomic",12,"from flamo.storage.atomic import atomic_write_json"]],"flamo.storage.corpus":[["flamo.domain.errors",10,"from flamo.domain.errors import DomainError, ErrorCode"],["flamo.models",13,"from flamo.models import ContractModel"],["flamo.domain.identity",11,"from flamo.domain.identity import digest_model"],["flamo.domain.models",12,"from flamo.domain.models import utc_now"],["flamo.storage.atomic",14,"from flamo.storage.atomic import atomic_write_json, atomic_write_text"]],"flamo.application.source":[["flamo.domain",13,"from flamo.domain import ("],["flamo.execution",20,"from flamo.execution import ExecutionRequest, SubprocessBroker"],["flamo.storage",21,"from flamo.storage import Workspace"]],"flamo.sdk":[],"flamo.adapters.client_setup":[["flamo.domain",13,"from flamo.domain import DomainError, ErrorCode"]],"flamo.domain.identity":[],"flamo.analysis.recipes":[["flamo.domain",17,"from flamo.domain import DomainError, ErrorCode"],["flamo.catalog",16,"from flamo.catalog import Catalog, Snapshot"],["flamo.evidence_scope",18,"from flamo.evidence_scope import resolve_evidence_scope"],["flamo.models",19,"from flamo.models import ContractModel"],["flamo.storage",20,"from flamo.storage import Workspace"]],"flamo.application.drilldown":[["flamo.catalog",5,"from flamo.catalog import Catalog, Snapshot"],["flamo.storage",9,"from flamo.storage import Workspace"],["flamo.domain",6,"from flamo.domain import CursorCodec, DomainError, ErrorCode, digest_model"],["flamo.models",8,"from flamo.models import ContractModel"],["flamo.evidence_scope",7,"from flamo.evidence_scope import resolve_evidence_scope"]],"flamo.application.recovery":[["flamo.evidence",16,"from flamo.evidence import GenerationPublisher"],["flamo.domain.models",15,"from flamo.domain.models import utc_now"],["flamo.application.run_rows",7,"from flamo.application.run_rows import run_row"],["flamo.application.quarantine",6,"from flamo.application.quarantine import QuarantineService"],["flamo.models",17,"from flamo.models import ContractModel"],["flamo.storage",18,"from flamo.storage import RunStore, Workspace"],["flamo.application.gc",5,"from flamo.application.gc import GarbageCollector"],["flamo.domain",8,"from flamo.domain import ("]],"flamo.adapters.coverage":[["flamo.evidence",15,"from flamo.evidence import GenerationPublisher"],["flamo.domain",8,"from flamo.domain import ("],["flamo.models",16,"from flamo.models import ContractModel"],["flamo.storage",17,"from flamo.storage import ArtifactStore, RunStore, Workspace"],["flamo.adapters.compatibility",7,"from flamo.adapters.compatibility import require_supported_producer_major"]],"flamo.adapters.compatibility":[["flamo.domain",7,"from flamo.domain import ArtifactRegistration, DomainError, ErrorCode"]],"flamo.analysis":[["flamo.analysis.comparison",1,"from flamo.analysis.comparison import compare_paired_samples"],["flamo.analysis.recipes",2,"from flamo.analysis.recipes import ("]],"flamo.__main__":[["flamo.cli",1,"from flamo.cli import app"]],"flamo.adapters.observations":[["flamo.domain",6,"from flamo.domain import ArtifactKind, DomainError, ErrorCode, digest_model"],["flamo.models",8,"from flamo.models import ContractModel"],["flamo.evidence",7,"from flamo.evidence import GenerationPublisher"],["flamo.storage",9,"from flamo.storage import ArtifactStore, RunStore, Workspace"]],"flamo.models":[],"flamo.cli":[["flamo.domain",65,"from flamo.domain import ArtifactKind, DomainError, ErrorCode, Sensitivity"],["flamo.adapters",19,"from flamo.adapters import ("],["flamo.mcp",66,"from flamo.mcp import create_server, run_server"],["flamo.application",29,"from flamo.application import ("],["flamo.analysis",28,"from flamo.analysis import RecipeService"],["flamo.catalog",64,"from flamo.catalog import Catalog"],["flamo",18,"from flamo import __version__, setup_ui"],["flamo.setup_ui",18,"from flamo import __version__, setup_ui"],["flamo.storage",67,"from flamo.storage import RunStore, Workspace"]],"flamo.adapters.pyperf":[["flamo.adapters.compatibility",8,"from flamo.adapters.compatibility import require_supported_producer_major"],["flamo.domain.errors",9,"from flamo.domain.errors import DomainError, ErrorCode"],["flamo.storage",14,"from flamo.storage import ArtifactStore, RunStore, Workspace"],["flamo.domain.identity",10,"from flamo.domain.identity import digest_model"],["flamo.models",13,"from flamo.models import ContractModel"],["flamo.evidence",12,"from flamo.evidence import GenerationPublisher"],["flamo.domain.models",11,"from flamo.domain.models import ArtifactKind, RunManifest"]],"flamo.application.async_work":[],"flamo.application.quarantine":[["flamo.storage",17,"from flamo.storage import Workspace"],["flamo.storage.atomic",18,"from flamo.storage.atomic import atomic_write_json"],["flamo.domain.models",15,"from flamo.domain.models import utc_now"],["flamo.domain",14,"from flamo.domain import DomainError, ErrorCode"],["flamo.models",16,"from flamo.models import ContractModel"],["flamo.application.recoverable_move",9,"from flamo.application.recoverable_move import ("]],"flamo.evidence.publisher":[["flamo.domain.models",18,"from flamo.domain.models import utc_now"],["flamo.observability",20,"from flamo.observability import OperationLogger, elapsed_ms"],["flamo.storage.workspace",29,"from flamo.storage.workspace import Workspace"],["flamo.evidence.schemas",19,"from flamo.evidence.schemas import SCHEMA_MAJOR, SCHEMA_MINOR, schema_for"],["flamo.storage.quotas",28,"from flamo.storage.quotas import StorageQuota"],["flamo.storage.atomic",21,"from flamo.storage.atomic import atomic_write_json, fsync_directory"],["flamo.domain.errors",17,"from flamo.domain.errors import DomainError, ErrorCode"],["flamo.storage.corpus",22,"from flamo.storage.corpus import ("]],"flamo.application.integrity":[["flamo.storage",13,"from flamo.storage import ArtifactStore, GenerationManifest, RunStore, Workspace"],["flamo.catalog",9,"from flamo.catalog import Catalog"],["flamo.models",12,"from flamo.models import ContractModel"],["flamo.domain",10,"from flamo.domain import DomainError"],["flamo.evidence.schemas",11,"from flamo.evidence.schemas import schema_for"]],"flamo.storage":[["flamo.storage.corpus",2,"from flamo.storage.corpus import ("],["flamo.storage.artifacts",1,"from flamo.storage.artifacts import ArtifactStore, StoredArtifact"],["flamo.storage.quotas",8,"from flamo.storage.quotas import StorageQuota, tree_bytes"],["flamo.storage.workspace",11,"from flamo.storage.workspace import Workspace, WorkspaceIdentity, WorkspacePaths"],["flamo.storage.records",9,"from flamo.storage.records import JsonRecordStore"],["flamo.storage.runs",10,"from flamo.storage.runs import RunStore"]],"flamo.evidence":[["flamo.evidence.publisher",1,"from flamo.evidence.publisher import GenerationPublisher, PublishedGeneration"],["flamo.evidence.schemas",2,"from flamo.evidence.schemas import SCHEMA_MAJOR, SCHEMA_MINOR, schema_for, table_names"]],"flamo.domain.cursors":[["flamo.domain.identity",8,"from flamo.domain.identity import digest_model"],["flamo.domain.errors",7,"from flamo.domain.errors import DomainError, ErrorCode"]],"flamo.application.execution_policy":[],"flamo.adapters.setup_runtime":[["flamo.storage.atomic",16,"from flamo.storage.atomic import atomic_write_json"],["flamo.domain",15,"from flamo.domain import DomainError, ErrorCode"]],"flamo.application.workloads":[["flamo.storage",23,"from flamo.storage import Workspace"],["flamo.domain",13,"from flamo.domain import ("],["flamo.models",22,"from flamo.models import ContractModel"],["flamo.storage.atomic",24,"from flamo.storage.atomic import atomic_write_json"]],"flamo.storage.workspace":[["flamo",16,"from flamo import __version__"],["flamo.models",20,"from flamo.models import ContractModel"],["flamo.config",17,"from flamo.config import WorkspaceConfig"],["flamo.storage.corpus",22,"from flamo.storage.corpus import CorpusStore"],["flamo.domain.models",19,"from flamo.domain.models import utc_now"],["flamo.domain.errors",18,"from flamo.domain.errors import DomainError, ErrorCode"],["flamo.storage.atomic",21,"from flamo.storage.atomic import atomic_write_json, atomic_write_text"],["flamo.catalog",195,"from flamo.catalog import Catalog"]],"flamo.adapters":[["flamo.adapters.setup_runtime",28,"from flamo.adapters.setup_runtime import ManagedRuntime, RuntimeInstallation"],["flamo.adapters.observations",11,"from flamo.adapters.observations import ("],["flamo.adapters.pyperf",21,"from flamo.adapters.pyperf import PyPerfExtractionResult, PyPerfExtractor"],["flamo.adapters.client_setup",1,"from flamo.adapters.client_setup import ("],["flamo.adapters.registry",22,"from flamo.adapters.registry import ("],["flamo.adapters.memray",10,"from flamo.adapters.memray import MemrayExtractionResult, MemrayExtractor"],["flamo.adapters.perfetto",15,"from flamo.adapters.perfetto import ("],["flamo.adapters.coverage",9,"from flamo.adapters.coverage import CoverageExtractionResult, CoverageExtractor"]],"flamo.application.evidence_rows":[["flamo.domain",5,"from flamo.domain import ArtifactRegistration, EnvironmentRecord, SourceState"]]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"flameox.analysis.comparison":[["flameox.domain.models",11,"from flameox.domain.models import ("],["flameox.domain.identity",10,"from flameox.domain.identity import new_id"]],"flameox.storage.workspace":[["flameox",16,"from flameox import __version__"],["flameox.catalog",195,"from flameox.catalog import Catalog"],["flameox.models",20,"from flameox.models import ContractModel"],["flameox.domain.models",19,"from flameox.domain.models import utc_now"],["flameox.storage.corpus",22,"from flameox.storage.corpus import CorpusStore"],["flameox.storage.atomic",21,"from flameox.storage.atomic import atomic_write_json, atomic_write_text"],["flameox.domain.errors",18,"from flameox.domain.errors import DomainError, ErrorCode"],["flameox.config",17,"from flameox.config import WorkspaceConfig"]],"flameox.cli":[["flameox",18,"from flameox import __version__, setup_ui"],["flameox.analysis",28,"from flameox.analysis import RecipeService"],["flameox.application",29,"from flameox.application import ("],["flameox.catalog",64,"from flameox.catalog import Catalog"],["flameox.storage",67,"from flameox.storage import RunStore, Workspace"],["flameox.mcp",66,"from flameox.mcp import create_server, run_server"],["flameox.domain",65,"from flameox.domain import ArtifactKind, DomainError, ErrorCode, Sensitivity"],["flameox.adapters",19,"from flameox.adapters import ("],["flameox.setup_ui",18,"from flameox import __version__, setup_ui"]],"flameox.evidence.schemas":[],"flameox.evidence.publisher":[["flameox.storage.quotas",28,"from flameox.storage.quotas import StorageQuota"],["flameox.evidence.schemas",19,"from flameox.evidence.schemas import SCHEMA_MAJOR, SCHEMA_MINOR, schema_for"],["flameox.observability",20,"from flameox.observability import OperationLogger, elapsed_ms"],["flameox.storage.atomic",21,"from flameox.storage.atomic import atomic_write_json, fsync_directory"],["flameox.domain.models",18,"from flameox.domain.models import utc_now"],["flameox.domain.errors",17,"from flameox.domain.errors import DomainError, ErrorCode"],["flameox.storage.workspace",29,"from flameox.storage.workspace import Workspace"],["flameox.storage.corpus",22,"from flameox.storage.corpus import ("]],"flameox.collectors.torch_launcher":[],"flameox.application.viewers":[["flameox.execution",10,"from flameox.execution import ExecutionRequest, SubprocessBroker"],["flameox.domain",9,"from flameox.domain import ArtifactKind, DomainError, ErrorCode, ProcessResult"],["flameox.application.artifacts",8,"from flameox.application.artifacts import ArtifactService"],["flameox.models",11,"from flameox.models import ContractModel"],["flameox.storage",12,"from flameox.storage import ArtifactStore, Workspace"]],"flameox.models":[],"flameox.config":[["flameox.models",10,"from flameox.models import ContractModel"]],"flameox.application.recovery":[["flameox.application.run_rows",7,"from flameox.application.run_rows import run_row"],["flameox.models",17,"from flameox.models import ContractModel"],["flameox.storage",18,"from flameox.storage import RunStore, Workspace"],["flameox.application.gc",5,"from flameox.application.gc import GarbageCollector"],["flameox.domain.models",15,"from flameox.domain.models import utc_now"],["flameox.evidence",16,"from flameox.evidence import GenerationPublisher"],["flameox.domain",8,"from flameox.domain import ("],["flameox.application.quarantine",6,"from flameox.application.quarantine import QuarantineService"]],"flameox.storage.records":[["flameox.storage.atomic",9,"from flameox.storage.atomic import atomic_write_json"],["flameox.storage.workspace",10,"from flameox.storage.workspace import Workspace"],["flameox.domain",8,"from flameox.domain import DomainError, ErrorCode"]],"flameox.application.integrity":[["flameox.storage",13,"from flameox.storage import ArtifactStore, GenerationManifest, RunStore, Workspace"],["flameox.domain",10,"from flameox.domain import DomainError"],["flameox.catalog",9,"from flameox.catalog import Catalog"],["flameox.models",12,"from flameox.models import ContractModel"],["flameox.evidence.schemas",11,"from flameox.evidence.schemas import schema_for"]],"flameox.application.capture":[["flameox.adapters.builtins",18,"from flameox.adapters.builtins import ("],["flameox.storage.atomic",59,"from flameox.storage.atomic import atomic_write_bytes"],["flameox.observability",57,"from flameox.observability import OperationLogger, elapsed_ms"],["flameox.models",56,"from flameox.models import ContractModel"],["flameox.evidence",54,"from flameox.evidence import GenerationPublisher"],["flameox.application.execution_policy",30,"from flameox.application.execution_policy import ExecutionPolicy"],["flameox.application.run_rows",31,"from flameox.application.run_rows import run_row"],["flameox.domain.models",53,"from flameox.domain.models import utc_now"],["flameox.application.environment",24,"from flameox.application.environment import collect_environment"],["flameox.storage",58,"from flameox.storage import ArtifactStore, RunStore, StorageQuota, Workspace"],["flameox.application.source",32,"from flameox.application.source import collect_source_state"],["flameox.execution",55,"from flameox.execution import ExecutionRequest, SubprocessBroker"],["flameox.application.async_work",22,"from flameox.application.async_work import run_atomic_thread"],["flameox.application.workloads",33,"from flameox.application.workloads import Scalar, WorkloadService"],["flameox.application.capabilities",23,"from flameox.application.capabilities import CapabilityService"],["flameox.domain",34,"from flameox.domain import ("],["flameox.application.evidence_rows",25,"from flameox.application.evidence_rows import ("]],"flameox.application.capabilities":[["flameox.adapters.builtins",9,"from flameox.adapters.builtins import BUILTIN_ADAPTERS, BuiltinAdapter, builtin_adapter"],["flameox.adapters.registry",10,"from flameox.adapters.registry import AdapterRegistry"],["flameox.storage",15,"from flameox.storage import Workspace"],["flameox.execution",13,"from flameox.execution import ExecutionRequest, SubprocessBroker"],["flameox.models",14,"from flameox.models import ContractModel"],["flameox.domain.models",12,"from flameox.domain.models import utc_now"],["flameox.domain",11,"from flameox.domain import CapabilityReport, CapabilityStatus, DomainError"]],"flameox.adapters.pyperf":[["flameox.evidence",12,"from flameox.evidence import GenerationPublisher"],["flameox.domain.errors",9,"from flameox.domain.errors import DomainError, ErrorCode"],["flameox.models",13,"from flameox.models import ContractModel"],["flameox.domain.identity",10,"from flameox.domain.identity import digest_model"],["flameox.storage",14,"from flameox.storage import ArtifactStore, RunStore, Workspace"],["flameox.adapters.compatibility",8,"from flameox.adapters.compatibility import require_supported_producer_major"],["flameox.domain.models",11,"from flameox.domain.models import ArtifactKind, RunManifest"]],"flameox.application.records":[["flameox.evidence",22,"from flameox.evidence import GenerationPublisher"],["flameox.storage",24,"from flameox.storage import ArtifactStore, JsonRecordStore, RunStore, Workspace"],["flameox.models",23,"from flameox.models import ContractModel"],["flameox.domain",9,"from flameox.domain import ("],["flameox.catalog",8,"from flameox.catalog import Catalog"]],"flameox.collectors":[],"flameox.domain.identity":[],"flameox.workers.perfetto":[],"flameox.__main__":[["flameox.cli",1,"from flameox.cli import app"]],"flameox.adapters.builtins":[["flameox.domain",7,"from flameox.domain import ArtifactKind, DomainError, ErrorCode"]],"flameox.application.evidence_lookup":[["flameox.domain",11,"from flameox.domain import DomainError, ErrorCode"],["flameox.catalog",10,"from flameox.catalog import Catalog"],["flameox.storage",13,"from flameox.storage import GenerationManifest, RunStore, Workspace"],["flameox.models",12,"from flameox.models import ContractModel"],["flameox.application.artifacts",9,"from flameox.application.artifacts import ArtifactService"]],"flameox.application.async_work":[],"flameox.application.analysis_rows":[["flameox.domain",5,"from flameox.domain import AnalysisRecord"]],"flameox.storage.atomic":[],"flameox.analysis":[["flameox.analysis.recipes",2,"from flameox.analysis.recipes import ("],["flameox.analysis.comparison",1,"from flameox.analysis.comparison import compare_paired_samples"]],"flameox.application.comparisons":[["flameox.application.analysis_provenance",14,"from flameox.application.analysis_provenance import ("],["flameox.models",35,"from flameox.models import ContractModel"],["flameox.analysis",13,"from flameox.analysis import compare_paired_samples"],["flameox.evidence",34,"from flameox.evidence import GenerationPublisher"],["flameox.domain",21,"from flameox.domain import ("],["flameox.storage",36,"from flameox.storage import JsonRecordStore, RunStore, Workspace"],["flameox.application.async_work",19,"from flameox.application.async_work import run_atomic_thread"],["flameox.catalog",20,"from flameox.catalog import Catalog, Snapshot"]],"flameox.adapters.memray":[["flameox.evidence",9,"from flameox.evidence import GenerationPublisher"],["flameox.adapters.compatibility",7,"from flameox.adapters.compatibility import require_supported_producer_major"],["flameox.domain",8,"from flameox.domain import ArtifactKind, DomainError, ErrorCode, digest_model"],["flameox.storage",11,"from flameox.storage import ArtifactStore, RunStore, Workspace"],["flameox.models",10,"from flameox.models import ContractModel"]],"flameox.adapters.compatibility":[["flameox.domain",7,"from flameox.domain import ArtifactRegistration, DomainError, ErrorCode"]],"flameox.adapters.coverage":[["flameox.domain",8,"from flameox.domain import ("],["flameox.models",16,"from flameox.models import ContractModel"],["flameox.storage",17,"from flameox.storage import ArtifactStore, RunStore, Workspace"],["flameox.evidence",15,"from flameox.evidence import GenerationPublisher"],["flameox.adapters.compatibility",7,"from flameox.adapters.compatibility import require_supported_producer_major"]],"flameox.workers":[],"flameox.storage.corpus":[["flameox.storage.atomic",14,"from flameox.storage.atomic import atomic_write_json, atomic_write_text"],["flameox.domain.models",12,"from flameox.domain.models import utc_now"],["flameox.models",13,"from flameox.models import ContractModel"],["flameox.domain.errors",10,"from flameox.domain.errors import DomainError, ErrorCode"],["flameox.domain.identity",11,"from flameox.domain.identity import digest_model"]],"flameox.application.recoverable_move":[["flameox.storage.atomic",7,"from flameox.storage.atomic import fsync_directory"],["flameox.domain",6,"from flameox.domain import DomainError, ErrorCode"]],"flameox.adapters":[["flameox.adapters.observations",11,"from flameox.adapters.observations import ("],["flameox.adapters.perfetto",15,"from flameox.adapters.perfetto import ("],["flameox.adapters.pyperf",21,"from flameox.adapters.pyperf import PyPerfExtractionResult, PyPerfExtractor"],["flameox.adapters.coverage",9,"from flameox.adapters.coverage import CoverageExtractionResult, CoverageExtractor"],["flameox.adapters.client_setup",1,"from flameox.adapters.client_setup import ("],["flameox.adapters.setup_runtime",28,"from flameox.adapters.setup_runtime import ManagedRuntime, RuntimeInstallation"],["flameox.adapters.memray",10,"from flameox.adapters.memray import MemrayExtractionResult, MemrayExtractor"],["flameox.adapters.registry",22,"from flameox.adapters.registry import ("]],"flameox.application.evidence_rows":[["flameox.domain",5,"from flameox.domain import ArtifactRegistration, EnvironmentRecord, SourceState"]],"flameox.evidence_scope":[["flameox.domain",4,"from flameox.domain import DomainError, ErrorCode"],["flameox.models",5,"from flameox.models import ContractModel"],["flameox.catalog",3,"from flameox.catalog import Snapshot"]],"flameox.application.environment":[["flameox.domain.models",11,"from flameox.domain.models import EnvironmentRecord, IdentityQuality, utc_now"],["flameox.domain.identity",10,"from flameox.domain.identity import digest_model"]],"flameox.adapters.client_setup":[["flameox.domain",13,"from flameox.domain import DomainError, ErrorCode"]],"flameox.mcp":[["flameox.mcp.server",1,"from flameox.mcp.server import create_server, run_server"]],"flameox.storage":[["flameox.storage.artifacts",1,"from flameox.storage.artifacts import ArtifactStore, StoredArtifact"],["flameox.storage.corpus",2,"from flameox.storage.corpus import ("],["flameox.storage.workspace",11,"from flameox.storage.workspace import Workspace, WorkspaceIdentity, WorkspacePaths"],["flameox.storage.quotas",8,"from flameox.storage.quotas import StorageQuota, tree_bytes"],["flameox.storage.records",9,"from flameox.storage.records import JsonRecordStore"],["flameox.storage.runs",10,"from flameox.storage.runs import RunStore"]],"flameox.adapters.observations":[["flameox.models",8,"from flameox.models import ContractModel"],["flameox.storage",9,"from flameox.storage import ArtifactStore, RunStore, Workspace"],["flameox.domain",6,"from flameox.domain import ArtifactKind, DomainError, ErrorCode, digest_model"],["flameox.evidence",7,"from flameox.evidence import GenerationPublisher"]],"flameox.application.artifacts":[["flameox.catalog",6,"from flameox.catalog import Catalog"],["flameox.storage",9,"from flameox.storage import ArtifactStore, Workspace"],["flameox.models",8,"from flameox.models import ContractModel"],["flameox.domain",7,"from flameox.domain import ArtifactContent, Sensitivity"]],"flameox.domain":[["flameox.domain.models",4,"from flameox.domain.models import ("],["flameox.domain.identity",3,"from flameox.domain.identity import canonical_json_bytes, content_id, digest_model, new_id"],["flameox.domain.cursors",1,"from flameox.domain.cursors import CursorCodec, CursorValue"],["flameox.domain.errors",2,"from flameox.domain.errors import DomainError, ErrorCode"]],"flameox.application.gc":[["flameox.storage",17,"from flameox.storage import GenerationManifest, Workspace, tree_bytes"],["flameox.catalog",14,"from flameox.catalog import Catalog"],["flameox.storage.atomic",18,"from flameox.storage.atomic import atomic_write_json, fsync_directory"],["flameox.application.recoverable_move",9,"from flameox.application.recoverable_move import ("],["flameox.domain",15,"from flameox.domain import DomainError, ErrorCode, digest_model"],["flameox.models",16,"from flameox.models import ContractModel"]],"flameox.application.execution_policy":[],"flameox.application.drilldown":[["flameox.domain",6,"from flameox.domain import CursorCodec, DomainError, ErrorCode, digest_model"],["flameox.catalog",5,"from flameox.catalog import Catalog, Snapshot"],["flameox.evidence_scope",7,"from flameox.evidence_scope import resolve_evidence_scope"],["flameox.storage",9,"from flameox.storage import Workspace"],["flameox.models",8,"from flameox.models import ContractModel"]],"flameox.mcp.server":[["flameox.adapters",16,"from flameox.adapters import ("],["flameox.models",98,"from flameox.models import ContractModel"],["flameox.catalog",84,"from flameox.catalog import Catalog"],["flameox.analysis",29,"from flameox.analysis import ("],["flameox.storage",99,"from flameox.storage import RunStore, Workspace"],["flameox.application",38,"from flameox.application import ("],["flameox.domain",85,"from flameox.domain import ("]],"flameox.application.evidence_query":[["flameox.catalog",3,"from flameox.catalog import Catalog"],["flameox.models",5,"from flameox.models import ContractModel"],["flameox.storage",6,"from flameox.storage import Workspace"],["flameox.domain",4,"from flameox.domain import CursorCodec, DomainError, ErrorCode, digest_model"]],"flameox.domain.errors":[],"flameox.application.source":[["flameox.execution",20,"from flameox.execution import ExecutionRequest, SubprocessBroker"],["flameox.domain",13,"from flameox.domain import ("],["flameox.storage",21,"from flameox.storage import Workspace"]],"flameox.execution":[["flameox.domain.models",15,"from flameox.domain.models import ProcessResult"],["flameox.models",16,"from flameox.models import ContractModel"],["flameox.domain.errors",14,"from flameox.domain.errors import DomainError, ErrorCode"]],"flameox.application":[["flameox.application.repair",87,"from flameox.application.repair import RepairEntry, RepairPlan, RepairResult, RepairService"],["flameox.application.workloads",104,"from flameox.application.workloads import ("],["flameox.application.setup",88,"from flameox.application.setup import ("],["flameox.application.quarantine",68,"from flameox.application.quarantine import ("],["flameox.application.status",98,"from flameox.application.status import WorkspaceStatus, workspace_status"],["flameox.application.experiments",46,"from flameox.application.experiments import ("],["flameox.application.capture",14,"from flameox.application.capture import ("],["flameox.application.integrity",63,"from flameox.application.integrity import ("],["flameox.application.gc",53,"from flameox.application.gc import ("],["flameox.application.evidence_lookup",36,"from flameox.application.evidence_lookup import ("],["flameox.application.imports",62,"from flameox.application.imports import ImportArtifactRequest, ImportResult, ImportService"],["flameox.application.viewers",99,"from flameox.application.viewers import ("],["flameox.application.artifacts",6,"from flameox.application.artifacts import ("],["flameox.application.drilldown",29,"from flameox.application.drilldown import ("],["flameox.application.comparisons",20,"from flameox.application.comparisons import ("],["flameox.application.records",73,"from flameox.application.records import ("],["flameox.application.compaction",19,"from flameox.application.compaction import CompactionResult, CompactionService"],["flameox.application.analysis_records",1,"from flameox.application.analysis_records import ("],["flameox.application.evidence_query",40,"from flameox.application.evidence_query import ("],["flameox.application.capabilities",13,"from flameox.application.capabilities import CapabilityList, CapabilityService"],["flameox.application.execution_policy",45,"from flameox.application.execution_policy import ExecutionPolicy"],["flameox.application.recovery",82,"from flameox.application.recovery import ("]],"flameox.evidence":[["flameox.evidence.publisher",1,"from flameox.evidence.publisher import GenerationPublisher, PublishedGeneration"],["flameox.evidence.schemas",2,"from flameox.evidence.schemas import SCHEMA_MAJOR, SCHEMA_MINOR, schema_for, table_names"]],"flameox.adapters.setup_runtime":[["flameox.storage.atomic",16,"from flameox.storage.atomic import atomic_write_json"],["flameox.domain",15,"from flameox.domain import DomainError, ErrorCode"]],"flameox.storage.quotas":[["flameox.domain",9,"from flameox.domain import DomainError, ErrorCode"],["flameox.storage.workspace",10,"from flameox.storage.workspace import Workspace"]],"flameox.storage.runs":[["flameox.storage.atomic",7,"from flameox.storage.atomic import atomic_write_json"],["flameox.domain.errors",5,"from flameox.domain.errors import DomainError, ErrorCode"],["flameox.storage.workspace",8,"from flameox.storage.workspace import Workspace"],["flameox.domain.models",6,"from flameox.domain.models import RunManifest"]],"flameox.application.compaction":[["flameox.catalog",3,"from flameox.catalog import Catalog"],["flameox.evidence",4,"from flameox.evidence import GenerationPublisher, schema_for, table_names"],["flameox.models",5,"from flameox.models import ContractModel"],["flameox.storage",6,"from flameox.storage import GenerationManifest, Workspace"]],"flameox.sdk":[],"flameox.catalog":[["flameox.storage.corpus",21,"from flameox.storage.corpus import CorpusCommit, GenerationManifest"],["flameox.domain.errors",17,"from flameox.domain.errors import DomainError, ErrorCode"],["flameox.observability",19,"from flameox.observability import OperationLogger, elapsed_ms"],["flameox.evidence.schemas",18,"from flameox.evidence.schemas import SCHEMA_MAJOR, SCHEMA_MINOR, schema_for, table_names"],["flameox.storage.workspace",22,"from flameox.storage.workspace import Workspace"],["flameox.storage.atomic",20,"from flameox.storage.atomic import fsync_directory"]],"flameox.domain.cursors":[["flameox.domain.identity",8,"from flameox.domain.identity import digest_model"],["flameox.domain.errors",7,"from flameox.domain.errors import DomainError, ErrorCode"]],"flameox.setup_ui":[["flameox.adapters.client_setup",10,"from flameox.adapters.client_setup import ALL_SETUP_CLIENTS, SetupClient"],["flameox.domain",12,"from flameox.domain import DomainError, ErrorCode"],["flameox.application.setup",11,"from flameox.application.setup import SetupInspection, SetupPlan, SetupReport"]],"flameox.application.workloads":[["flameox.storage.atomic",24,"from flameox.storage.atomic import atomic_write_json"],["flameox.domain",13,"from flameox.domain import ("],["flameox.storage",23,"from flameox.storage import Workspace"],["flameox.models",22,"from flameox.models import ContractModel"]],"flameox.domain.models":[["flameox.models",15,"from flameox.models import ContractModel"]],"flameox.application.quarantine":[["flameox.models",16,"from flameox.models import ContractModel"],["flameox.domain.models",15,"from flameox.domain.models import utc_now"],["flameox.application.recoverable_move",9,"from flameox.application.recoverable_move import ("],["flameox.storage",17,"from flameox.storage import Workspace"],["flameox.storage.atomic",18,"from flameox.storage.atomic import atomic_write_json"],["flameox.domain",14,"from flameox.domain import DomainError, ErrorCode"]],"flameox.observability":[["flameox.domain.models",12,"from flameox.domain.models import utc_now"],["flameox.models",13,"from flameox.models import ContractModel"]],"flameox.application.imports":[["flameox.evidence",26,"from flameox.evidence import GenerationPublisher"],["flameox.application.source",13,"from flameox.application.source import collect_partial_source_state"],["flameox.domain.errors",14,"from flameox.domain.errors import DomainError, ErrorCode"],["flameox.models",27,"from flameox.models import ContractModel"],["flameox.domain.identity",15,"from flameox.domain.identity import new_id"],["flameox.domain.models",16,"from flameox.domain.models import ("],["flameox.application.environment",6,"from flameox.application.environment import collect_environment"],["flameox.storage",28,"from flameox.storage import ArtifactStore, RunStore, Workspace"],["flameox.application.run_rows",12,"from flameox.application.run_rows import run_row"],["flameox.application.evidence_rows",7,"from flameox.application.evidence_rows import ("]],"flameox.application.analysis_records":[["flameox.evidence_scope",31,"from flameox.evidence_scope import resolve_evidence_scope"],["flameox.domain",25,"from flameox.domain import ("],["flameox.catalog",24,"from flameox.catalog import Catalog, Snapshot"],["flameox.application.analysis_provenance",18,"from flameox.application.analysis_provenance import ("],["flameox.storage",33,"from flameox.storage import ArtifactStore, GenerationManifest, Workspace"],["flameox.application.async_work",23,"from flameox.application.async_work import run_atomic_thread"],["flameox.models",32,"from flameox.models import ContractModel"],["flameox.evidence",30,"from flameox.evidence import GenerationPublisher"],["flameox.analysis",9,"from flameox.analysis import ("]],"flameox.application.experiments":[["flameox.domain.models",45,"from flameox.domain.models import utc_now"],["flameox.domain",30,"from flameox.domain import ("],["flameox.application.workloads",29,"from flameox.application.workloads import Scalar, WorkloadService"],["flameox.adapters",17,"from flameox.adapters import PyPerfExtractor"],["flameox.evidence",46,"from flameox.evidence import GenerationPublisher, PublishedGeneration"],["flameox.storage",48,"from flameox.storage import JsonRecordStore, RunStore, Workspace"],["flameox.application.execution_policy",28,"from flameox.application.execution_policy import ExecutionPolicy"],["flameox.application.capture",19,"from flameox.application.capture import CaptureService"],["flameox.application.async_work",18,"from flameox.application.async_work import run_atomic_thread"],["flameox.application.comparisons",20,"from flameox.application.comparisons import ("],["flameox.models",47,"from flameox.models import ContractModel"]],"flameox.storage.artifacts":[["flameox.domain.models",15,"from flameox.domain.models import ArtifactContent, Integrity, utc_now"],["flameox.storage.quotas",17,"from flameox.storage.quotas import StorageQuota"],["flameox.storage.atomic",16,"from flameox.storage.atomic import atomic_write_json, fsync_directory"],["flameox.domain.errors",14,"from flameox.domain.errors import DomainError, ErrorCode"],["flameox.storage.workspace",18,"from flameox.storage.workspace import Workspace"]],"flameox.application.setup":[["flameox.models",26,"from flameox.models import ContractModel"],["flameox.adapters.setup_runtime",24,"from flameox.adapters.setup_runtime import ManagedRuntime, RuntimeInstallation"],["flameox.adapters.client_setup",16,"from flameox.adapters.client_setup import ("],["flameox.domain",25,"from flameox.domain import DomainError, ErrorCode"],["flameox.storage.atomic",27,"from flameox.storage.atomic import atomic_write_bytes, atomic_write_json, fsync_directory"]],"flameox.adapters.registry":[["flameox.storage",11,"from flameox.storage import Workspace"],["flameox.models",10,"from flameox.models import ContractModel"],["flameox.storage.atomic",12,"from flameox.storage.atomic import atomic_write_json"],["flameox.domain",9,"from flameox.domain import DomainError, ErrorCode, digest_model"]],"flameox.application.analysis_provenance":[["flameox.application.analysis_rows",8,"from flameox.application.analysis_rows import analysis_row"],["flameox.domain",9,"from flameox.domain import ("],["flameox.models",15,"from flameox.models import ContractModel"]],"flameox.application.repair":[["flameox.storage.atomic",10,"from flameox.storage.atomic import atomic_write_bytes"],["flameox.storage",9,"from flameox.storage import Workspace"],["flameox.models",8,"from flameox.models import ContractModel"],["flameox.domain",7,"from flameox.domain import DomainError, ErrorCode, RunManifest, digest_model"],["flameox.application.quarantine",6,"from flameox.application.quarantine import QuarantineManifest, QuarantineService"]],"flameox.application.run_rows":[["flameox.domain",3,"from flameox.domain import RunManifest"]],"flameox.adapters.perfetto":[["flameox.execution",21,"from flameox.execution import ExecutionRequest, SubprocessBroker"],["flameox.evidence",20,"from flameox.evidence import GenerationPublisher"],["flameox.storage",23,"from flameox.storage import ArtifactStore, RunStore, Workspace"],["flameox.domain",13,"from flameox.domain import ("],["flameox.storage.atomic",24,"from flameox.storage.atomic import atomic_write_json"],["flameox.models",22,"from flameox.models import ContractModel"]],"flameox.analysis.recipes":[["flameox.storage",20,"from flameox.storage import Workspace"],["flameox.domain",17,"from flameox.domain import DomainError, ErrorCode"],["flameox.evidence_scope",18,"from flameox.evidence_scope import resolve_evidence_scope"],["flameox.models",19,"from flameox.models import ContractModel"],["flameox.catalog",16,"from flameox.catalog import Catalog, Snapshot"]],"flameox":[],"flameox.application.status":[["flameox.storage",17,"from flameox.storage import RunStore, Workspace, tree_bytes"],["flameox.application.recovery",13,"from flameox.application.recovery import RecoveryService"],["flameox.models",16,"from flameox.models import ContractModel"],["flameox.application.quarantine",12,"from flameox.application.quarantine import QuarantineService"],["flameox.application.capabilities",10,"from flameox.application.capabilities import CapabilityService"],["flameox.domain",15,"from flameox.domain import CapabilityStatus, DomainError, ExecutionStatus"],["flameox.application.integrity",11,"from flameox.application.integrity import IntegrityService"],["flameox.catalog",14,"from flameox.catalog import Catalog"],["flameox.adapters",3,"from flameox.adapters import ("]]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"flameox.storage.quotas": 1785056785.9423087, "flameox.application.run_rows": 1785056785.927308, "flameox.application.analysis_records": 1785056785.9183078, "flameox.application.workloads": 1785056785.9303083, "flameox.adapters.builtins": 1785056785.9093075, "flameox.storage.records": 1785056785.9433086, "flameox.application.analysis_rows": 1785056785.9183078, "flameox.application.evidence_lookup": 1785056785.922308, "flameox.adapters.perfetto": 1785056785.9133077, "flameox.application.execution_policy": 1785040031.7205591, "flameox.domain.cursors": 1785056785.9353085, "flameox.mcp.server": 1785056785.9403086, "flameox.cli": 1785056785.9323082, "flameox.application.experiments": 1785056785.923308, "flameox.application.compaction": 1785056785.9203079, "flameox.adapters.registry": 1785056785.9133077, "flameox.application.gc": 1785056785.924308, "flameox.application.quarantine": 1785056785.925308, "flameox.application": 1785056785.9163077, "flameox.domain.errors": 1785040031.7255592, "flameox.adapters.memray": 1785056785.9113076, "flameox.storage.workspace": 1785056785.9443088, "flameox.models": 1785056785.9403086, "flameox": 1785056785.9073074, "flameox.application.evidence_rows": 1785056785.923308, "flameox.adapters.setup_runtime": 1785056785.9143076, "flameox.application.async_work": 1785040031.718559, "flameox.application.repair": 1785056785.927308, "flameox.application.environment": 1785056785.922308, "flameox.domain.models": 1785056785.9363084, "flameox.domain": 1785056785.9333084, "flameox.collectors": 1784989806.1596882, "flameox.application.evidence_query": 1785056785.922308, "flameox.application.records": 1785056785.9263082, "flameox.adapters.observations": 1785056785.9123077, "flameox.catalog": 1785056785.9303083, "flameox.setup_ui": 1785056785.9413085, "flameox.adapters.compatibility": 1785056785.9103076, "flameox.application.artifacts": 1785056785.919308, "flameox.collectors.torch_launcher": 1784989806.1626885, "flameox.application.analysis_provenance": 1785056785.9163077, "flameox.application.capabilities": 1785056785.919308, "flameox.domain.identity": 1784991139.927809, "flameox.evidence_scope": 1785056785.9383085, "flameox.evidence.schemas": 1785056785.9383085, "flameox.adapters.pyperf": 1785056785.9133077, "flameox.workers": 1784993859.89885, "flameox.adapters.coverage": 1785056785.9113076, "flameox.storage.artifacts": 1785056785.9423087, "flameox.adapters": 1785056785.9083076, "flameox.analysis.recipes": 1785056785.9163077, "flameox.application.setup": 1785056785.9283082, "flameox.application.integrity": 1785056785.924308, "flameox.application.source": 1785056785.9293082, "flameox.storage.runs": 1785056785.9433086, "flameox.mcp": 1785056785.9393084, "flameox.application.drilldown": 1785056785.921308, "flameox.application.viewers": 1785056785.9293082, "flameox.application.recoverable_move": 1785056785.9263082, "flameox.storage": 1785056785.9413085, "flameox.application.imports": 1785056785.924308, "flameox.application.status": 1785056785.9293082, "flameox.application.recovery": 1785056785.927308, "flameox.analysis": 1785056785.9143076, "flameox.analysis.comparison": 1785056785.9143076, "flameox.config": 1785056785.9323082, "flameox.sdk": 1785056785.9413085, "flameox.application.comparisons": 1785056785.921308, "flameox.storage.atomic": 1784991139.9318092, "flameox.storage.corpus": 1785056785.9423087, "flameox.evidence.publisher": 1785056785.9363084, "flameox.evidence": 1785056785.9363084, "flameox.observability": 1785056785.9413085, "flameox.workers.perfetto": 1785040031.7295594, "flameox.adapters.client_setup": 1785056785.9093075, "flameox.__main__": 1785056785.9083076, "flameox.application.capture": 1785056918.9275973, "flameox.execution": 1785056785.9383085}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"flamo.analysis": 1785040031.7165592, "flamo.domain.errors": 1785040031.7255592, "flamo.models": 1785040031.7285595, "flamo.application.source": 1784991139.932809, "flamo.analysis.comparison": 1785040031.7165592, "flamo.config": 1785040031.7245593, "flamo.application.evidence_rows": 1785040031.7205591, "flamo.application.imports": 1785040031.7215593, "flamo.mcp.server": 1785040031.7275593, "flamo.adapters.pyperf": 1785040031.715559, "flamo.setup_ui": 1785052209.1790066, "flamo.storage.atomic": 1784991139.9318092, "flamo.workers": 1784993859.89885, "flamo.adapters.memray": 1785040031.715559, "flamo": 1785050866.6027927, "flamo.application.gc": 1785040031.7215593, "flamo.application.quarantine": 1785040031.7225592, "flamo.observability": 1785053263.556715, "flamo.storage.workspace": 1785040031.7295594, "flamo.evidence.schemas": 1785040031.7265594, "flamo.application.experiments": 1785040031.7215593, "flamo.adapters.builtins": 1785040031.714559, "flamo.application.capabilities": 1785040031.718559, "flamo.__main__": 1784991139.9158087, "flamo.evidence.publisher": 1785040031.7255592, "flamo.evidence": 1784991139.9148085, "flamo.storage.artifacts": 1785040031.7285595, "flamo.collectors.torch_launcher": 1784989806.1626885, "flamo.domain.models": 1785040031.7255592, "flamo.application.recovery": 1785040031.7225592, "flamo.catalog": 1785040031.7235594, "flamo.adapters.observations": 1785040031.715559, "flamo.application.analysis_provenance": 1785040031.717559, "flamo.storage.corpus": 1785040031.7295594, "flamo.application.compaction": 1785040031.7195592, "flamo.mcp": 1784991139.9218087, "flamo.application.run_rows": 1784992151.7250361, "flamo.application.analysis_records": 1785052209.1860068, "flamo.storage.records": 1784991139.932809, "flamo.application.comparisons": 1785040031.7195592, "flamo.evidence_scope": 1785040031.7265594, "flamo.application.records": 1785040031.7225592, "flamo.adapters": 1785050866.6027927, "flamo.cli": 1785052209.190007, "flamo.application.capture": 1785040031.7195592, "flamo.workers.perfetto": 1785040031.7295594, "flamo.analysis.recipes": 1785040031.717559, "flamo.application": 1785050866.6037927, "flamo.adapters.registry": 1785040031.7165592, "flamo.sdk": 1784991139.9318092, "flamo.execution": 1785040031.7275593, "flamo.application.drilldown": 1785040031.7195592, "flamo.application.async_work": 1785040031.718559, "flamo.application.repair": 1785040031.7225592, "flamo.domain": 1784993835.8499813, "flamo.collectors": 1784989806.1596882, "flamo.application.recoverable_move": 1785040031.7225592, "flamo.domain.cursors": 1785040031.7245593, "flamo.application.setup": 1785052209.1780066, "flamo.adapters.perfetto": 1785040031.715559, "flamo.application.evidence_query": 1785040031.7205591, "flamo.application.workloads": 1785040031.7235594, "flamo.adapters.setup_runtime": 1785052209.1840067, "flamo.application.analysis_rows": 1784994643.8100042, "flamo.domain.identity": 1784991139.927809, "flamo.application.artifacts": 1785040031.718559, "flamo.storage.quotas": 1785040031.7295594, "flamo.adapters.compatibility": 1785040031.714559, "flamo.application.integrity": 1785040031.7215593, "flamo.application.status": 1785040031.7235594, "flamo.application.viewers": 1785040031.7235594, "flamo.application.environment": 1784987335.731832, "flamo.storage.runs": 1784991139.932809, "flamo.application.evidence_lookup": 1785040031.7205591, "flamo.adapters.client_setup": 1785052209.1760066, "flamo.adapters.coverage": 1785040031.714559, "flamo.application.execution_policy": 1785040031.7205591, "flamo.storage": 1785040031.7285595}
|