execweave 0.7.7__tar.gz → 0.7.9__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.
- execweave-0.7.9/.github/workflows/provider-capability-stage-integrity.yml +69 -0
- execweave-0.7.9/.github/workflows/viewer-agent-isolation.yml +45 -0
- {execweave-0.7.7 → execweave-0.7.9}/PKG-INFO +4 -4
- {execweave-0.7.7 → execweave-0.7.9}/README.de.md +3 -3
- {execweave-0.7.7 → execweave-0.7.9}/README.fr.md +3 -3
- {execweave-0.7.7 → execweave-0.7.9}/README.ja.md +3 -3
- {execweave-0.7.7 → execweave-0.7.9}/README.ko.md +3 -3
- {execweave-0.7.7 → execweave-0.7.9}/README.md +3 -3
- {execweave-0.7.7 → execweave-0.7.9}/README.ru.md +3 -3
- {execweave-0.7.7 → execweave-0.7.9}/README.zh-CN.md +3 -3
- {execweave-0.7.7 → execweave-0.7.9}/README.zh-TW.md +3 -3
- {execweave-0.7.7 → execweave-0.7.9}/pyproject.toml +2 -2
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/__init__.py +1 -1
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/_conversation_records_core.py +95 -2
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/codex_conversation.py +33 -7
- execweave-0.7.9/src/execweave/dashboard_shell.py +60 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/live.py +6 -43
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/live_core.py +12 -12
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/live_view.py +37 -15
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/theme.py +7 -1
- execweave-0.7.9/src/execweave/viewer_agent_panel.py +90 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/viewer_dashboard_clean.py +4 -0
- execweave-0.7.9/src/execweave/viewer_projection.py +90 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/multi_agent_run_fixture.py +83 -9
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_agent_message_viewer.py +10 -10
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_agent_node_labels.py +11 -25
- execweave-0.7.9/tests/test_agent_said_panel.py +92 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_agent_topology_evidence.py +18 -75
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_agent_trace_viewer_visibility.py +7 -7
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_antigravity_linkage_projection.py +5 -7
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_claude_hook_viewer.py +2 -1
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_claude_record.py +2 -1
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_codex_archive_full_fidelity.py +3 -1
- execweave-0.7.9/tests/test_codex_plain_routed_agent_message.py +87 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_codex_record.py +3 -1
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_conversation_access.py +9 -5
- execweave-0.7.9/tests/test_conversation_agent_focus.py +156 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_conversation_provider_parity.py +8 -7
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_dashboard_information_architecture.py +10 -15
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_dashboard_simplification.py +13 -3
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_dashboard_ux_and_hook_projection.py +5 -4
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_delegation_viewer.py +16 -16
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_execution_viewer.py +6 -9
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_live_auth.py +9 -1
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_live_delta.py +6 -20
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_live_logs_export.py +7 -6
- execweave-0.7.9/tests/test_per_agent_conversation_default.py +155 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_v069_dashboard_release.py +20 -9
- execweave-0.7.9/tests/test_v079_review_e2e.py +184 -0
- execweave-0.7.9/tests/test_v079_review_regressions.py +105 -0
- execweave-0.7.9/tests/test_viewer_agent_isolation_e2e.py +493 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_viewer_content_inspector.py +8 -13
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_viewer_projection.py +6 -3
- execweave-0.7.7/.github/workflows/provider-capability-stage-integrity.yml +0 -49
- execweave-0.7.7/.github/workflows/viewer-agent-isolation.yml +0 -40
- execweave-0.7.7/src/execweave/viewer_antigravity_linkage_inspector.py +0 -49
- execweave-0.7.7/src/execweave/viewer_conversation_panel.py +0 -101
- execweave-0.7.7/src/execweave/viewer_conversation_tree.py +0 -118
- execweave-0.7.7/src/execweave/viewer_execution_inspector.py +0 -43
- execweave-0.7.7/src/execweave/viewer_projection.py +0 -69
- execweave-0.7.7/tests/test_agent_said_panel.py +0 -246
- execweave-0.7.7/tests/test_conversation_agent_focus.py +0 -229
- execweave-0.7.7/tests/test_per_agent_conversation_default.py +0 -219
- execweave-0.7.7/tests/test_viewer_agent_isolation_e2e.py +0 -193
- {execweave-0.7.7 → execweave-0.7.9}/.github/workflows/ci.yml +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/.github/workflows/cleanup-workflow-history.yml +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/.github/workflows/i18n.yml +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/.github/workflows/package-benchmark.yml +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/.github/workflows/package-smoke.yml +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/.github/workflows/publish.yml +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/.github/workflows/scalability.yml +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/.github/workflows/wheel-smoke.yml +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/.github/workflows/windows-launcher.yml +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/.gitignore +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/LICENSE +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/RELEASE-PLAN-0.7.5-0.8.0.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/benchmarks/phase1_overhead.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/antigravity-hooks.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/assets/codex.gif +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/benchmarks/README.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/benchmarks/v0.6.0-github-actions.json +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/benchmarks/v0.6.0-github-actions.svg +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/claude-code-hooks.de.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/claude-code-hooks.fr.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/claude-code-hooks.ja.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/claude-code-hooks.ko.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/claude-code-hooks.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/claude-code-hooks.ru.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/claude-code-hooks.zh-CN.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/claude-code-hooks.zh-TW.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/codex-hooks.de.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/codex-hooks.fr.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/codex-hooks.ja.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/codex-hooks.ko.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/codex-hooks.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/codex-hooks.ru.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/codex-hooks.zh-CN.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/codex-hooks.zh-TW.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/cursor-hooks.de.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/cursor-hooks.fr.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/cursor-hooks.ja.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/cursor-hooks.ko.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/cursor-hooks.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/cursor-hooks.ru.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/cursor-hooks.zh-CN.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/cursor-hooks.zh-TW.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/evidence-grades.de.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/evidence-grades.fr.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/evidence-grades.ja.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/evidence-grades.ko.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/evidence-grades.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/evidence-grades.ru.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/evidence-grades.zh-CN.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/evidence-grades.zh-TW.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/gemini-hooks.de.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/gemini-hooks.fr.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/gemini-hooks.ja.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/gemini-hooks.ko.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/gemini-hooks.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/gemini-hooks.ru.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/gemini-hooks.zh-CN.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/gemini-hooks.zh-TW.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/inference-gateway.de.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/inference-gateway.fr.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/inference-gateway.ja.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/inference-gateway.ko.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/inference-gateway.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/inference-gateway.ru.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/inference-gateway.zh-CN.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/inference-gateway.zh-TW.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/internal/provider-capability-matrix.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/live-graph.de.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/live-graph.fr.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/live-graph.ja.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/live-graph.ko.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/live-graph.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/live-graph.ru.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/live-graph.zh-CN.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/live-graph.zh-TW.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/model-runtime.de.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/model-runtime.fr.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/model-runtime.ja.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/model-runtime.ko.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/model-runtime.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/model-runtime.ru.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/model-runtime.zh-CN.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/model-runtime.zh-TW.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/opencode-plugin.de.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/opencode-plugin.fr.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/opencode-plugin.ja.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/opencode-plugin.ko.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/opencode-plugin.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/opencode-plugin.ru.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/opencode-plugin.zh-CN.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/opencode-plugin.zh-TW.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/phase-1-runtime-collection.de.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/phase-1-runtime-collection.fr.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/phase-1-runtime-collection.ja.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/phase-1-runtime-collection.ko.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/phase-1-runtime-collection.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/phase-1-runtime-collection.ru.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/phase-1-runtime-collection.zh-CN.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/phase-1-runtime-collection.zh-TW.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/phase-2-execution-graph.de.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/phase-2-execution-graph.fr.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/phase-2-execution-graph.ja.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/phase-2-execution-graph.ko.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/phase-2-execution-graph.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/phase-2-execution-graph.ru.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/phase-2-execution-graph.zh-CN.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/phase-2-execution-graph.zh-TW.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/rule-packs.de.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/rule-packs.fr.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/rule-packs.ja.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/rule-packs.ko.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/rule-packs.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/rule-packs.ru.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/rule-packs.zh-CN.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/rule-packs.zh-TW.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/run-integrity.de.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/run-integrity.fr.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/run-integrity.ja.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/run-integrity.ko.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/run-integrity.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/run-integrity.ru.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/run-integrity.zh-CN.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/run-integrity.zh-TW.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/runtime-threat-model.de.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/runtime-threat-model.fr.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/runtime-threat-model.ja.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/runtime-threat-model.ko.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/runtime-threat-model.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/runtime-threat-model.ru.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/runtime-threat-model.zh-CN.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/runtime-threat-model.zh-TW.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/security-analysis.de.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/security-analysis.fr.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/security-analysis.ja.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/security-analysis.ko.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/security-analysis.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/security-analysis.ru.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/security-analysis.zh-CN.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/security-analysis.zh-TW.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/semantic-telemetry.de.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/semantic-telemetry.fr.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/semantic-telemetry.ja.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/semantic-telemetry.ko.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/semantic-telemetry.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/semantic-telemetry.ru.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/semantic-telemetry.zh-CN.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/semantic-telemetry.zh-TW.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/docs/v0.6.5-hardening-decisions.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/scripts/audit_i18n_parity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/scripts/check_claude_hook.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/scripts/check_claude_record_graph.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/scripts/check_codex_hook.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/scripts/check_conversation_records.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/scripts/check_correlation_graph.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/scripts/check_inference_gateway_cli.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/scripts/check_model_runtime_cli.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/scripts/check_openai_compatible_cli.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/scripts/check_release_stage_integrity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/scripts/check_semantic_graph.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/scripts/check_viewer_js.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/scripts/check_wheel_install.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/scripts/check_windows_launchers.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/scripts/emit_claude_hook_smoke.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/scripts/emit_codex_hook_smoke.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/scripts/emit_cursor_hook_smoke.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/scripts/emit_gemini_hook_smoke.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/scripts/emit_opencode_plugin_smoke.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/scripts/make_semantic_smoke.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/scripts/probe_provider_capability.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/scripts/sync_i18n_nav.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/__main__.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/agent_bootstrap.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/agent_topology.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/agent_trace.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/analysis.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/anthropic.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/anthropic_cli.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/anthropic_full_fidelity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/antigravity_adapter.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/antigravity_adapter_base.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/antigravity_full_fidelity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/antigravity_full_fidelity_base.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/antigravity_full_fidelity_collaboration_base.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/antigravity_hook_cli.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/antigravity_record.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/antigravity_subagent_linkage.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/antigravity_trace_capability.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/auto_specialized.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/backends.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/benchmark.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/claude_adapter.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/claude_delegation.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/claude_full_fidelity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/claude_hook_cli.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/claude_hook_contract.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/claude_model_observer.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/claude_record.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/cli.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/codex_adapter.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/codex_full_fidelity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/codex_hook_cli.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/codex_hook_lifecycle.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/codex_message_diagnostics.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/codex_message_transport_diagnostics.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/codex_record.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/codex_rollout_structures.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/codex_rollout_trace.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/codex_rollout_trace_base.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/collector.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/command.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/content_evidence.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/content_store.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/conversation_archive.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/conversation_message_identity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/conversation_preview.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/conversation_records.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/correlation.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/cursor_adapter.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/cursor_delegation.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/cursor_delegation_base.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/cursor_full_fidelity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/cursor_hook_cli.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/cursor_hook_contract.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/cursor_record.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/entry.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/evidence_availability.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/evidence_grade.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/fidelity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/filesystem.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/focus.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/gemini_adapter.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/gemini_full_fidelity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/gemini_hook_cli.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/gemini_hook_contract.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/gemini_record.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/graph.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/graph_ops.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/http_proxy.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/http_proxy_cli.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/inference_gateway.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/inference_gateway_cli.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/inference_gateway_full_fidelity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/inference_identity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/inference_identity_cli.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/integrity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/integrity_cli.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/litellm_callback.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/litellm_callback_cli.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/live_view_extra_style.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/live_view_markup.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/live_view_script_a.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/live_view_script_b.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/live_view_script_c.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/live_view_script_d.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/live_view_style.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/model_runtime.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/model_runtime_cli.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/model_runtime_full_fidelity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/openai_compatible.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/openai_compatible_cli.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/openai_compatible_full_fidelity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/opencode_adapter.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/opencode_event_contract.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/opencode_full_fidelity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/opencode_hook_cli.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/opencode_plugin_cli.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/opencode_record.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/opencode_task_linkage.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/overhead_benchmark.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/provider_capability.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/provider_lifecycle.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/provider_record.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/rule_pack.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/rule_pack_cli.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/scalability_benchmark.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/schema.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/scope.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/semantic.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/sink.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/strace_backend.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/stream_assembly.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/top.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/top_cli.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/validate.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/view_cli.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/viewer.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/viewer_content_inspector.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/viewer_dashboard_focus.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/viewer_live_layout.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/viewer_projection_base.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/src/execweave/workflow.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/fixtures/codex_multi_agent/PROVENANCE.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/fixtures/codex_multi_agent/hook-payloads.json +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/fixtures/codex_multi_agent/rollout-main.jsonl +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/fixtures/hooks/README.md +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/fixtures/hooks/claude.json +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/fixtures/hooks/codex.json +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/fixtures/hooks/cursor.json +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/fixtures/hooks/gemini.json +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/fixtures/hooks/manifest.json +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/fixtures/hooks/opencode.json +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_agent_bootstrap.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_agent_trace_lifecycle.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_analysis.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_anthropic.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_antigravity_agent_collaboration.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_antigravity_cursor_launch.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_antigravity_lifecycle.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_antigravity_official_contract.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_antigravity_subagent_transcript_linkage.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_antigravity_trace_capability_cli.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_auto_specialized.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_backends.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_claude_adapter.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_claude_delegation.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_claude_full_fidelity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_claude_hook_contract.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_claude_hook_metadata.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_claude_model_observer.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_codex_adapter.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_codex_conversation_isolation.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_codex_full_fidelity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_codex_hook_lifecycle.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_codex_hook_partial_capture.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_codex_message_diagnostics.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_codex_message_transport_diagnostics.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_codex_real_multi_agent_conversation.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_codex_reducer_command.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_codex_rollout_structures.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_codex_rollout_trace.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_codex_routing_native_identity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_collector.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_command.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_condense.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_conversation_agent_isolation.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_conversation_identity_merge.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_conversation_message_observation_dedupe.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_correlation.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_correlation_canonical_path.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_correlation_checker.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_correlation_process_exe.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_cross_provider_agent_trace.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_cursor_adapter.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_cursor_delegation.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_cursor_full_fidelity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_cursor_hook_contract.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_cursor_hook_fail_open.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_cursor_record.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_cursor_task_linkage.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_evidence_grade.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_fidelity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_filesystem_resilience.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_focus.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_full_fidelity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_gemini_adapter.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_gemini_full_fidelity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_gemini_hook_contract.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_gemini_lifecycle.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_gemini_record.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_graph.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_graph_ops.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_hook_fixture_corpus.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_http_proxy.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_inference_gateway.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_inference_gateway_full_fidelity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_inference_identity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_integrity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_litellm_callback.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_live.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_live_dashboard.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_live_dashboard_js.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_live_theme.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_lmstudio_auto_specialized.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_local_runtime_live_capture.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_model_runtime.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_model_runtime_full_fidelity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_openai_compatible.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_opencode_adapter.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_opencode_event_contract.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_opencode_event_lifecycle.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_opencode_full_fidelity.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_opencode_plugin.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_opencode_record.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_opencode_task_session_linkage.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_overhead_benchmark.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_provider_capability.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_provider_conversation_evidence.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_provider_lifecycle.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_rule_pack.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_schema.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_scope.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_semantic.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_strace_backend.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_stream_assembly.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_threat_model.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_top_detached.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_v063_features.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_v064_live_auto_integrations.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_v064_live_evidence.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_validate.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_version.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_viewer.py +0 -0
- {execweave-0.7.7 → execweave-0.7.9}/tests/test_workflow.py +0 -0
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
name: Provider Capability Stage Integrity
|
|
2
|
+
|
|
3
|
+
# No path filter. This job guards release red lines — the disabled CONNECT handler,
|
|
4
|
+
# the existing test set, the conversation completeness vocabulary, release metadata —
|
|
5
|
+
# so it must run on every pull request. A filter listing only the capability-probe
|
|
6
|
+
# files would arm the guard exactly when the guarded files are NOT the ones changing:
|
|
7
|
+
# a pull request that weakens http_proxy.py, deletes a test, or bumps the version
|
|
8
|
+
# while touching none of those paths would skip this job entirely.
|
|
9
|
+
on:
|
|
10
|
+
pull_request:
|
|
11
|
+
workflow_dispatch:
|
|
12
|
+
inputs:
|
|
13
|
+
baseline_ref:
|
|
14
|
+
description: Base commit or ref used to reconstruct baseline test node IDs
|
|
15
|
+
required: true
|
|
16
|
+
type: string
|
|
17
|
+
|
|
18
|
+
permissions:
|
|
19
|
+
contents: read
|
|
20
|
+
|
|
21
|
+
jobs:
|
|
22
|
+
integrity:
|
|
23
|
+
runs-on: ubuntu-latest
|
|
24
|
+
steps:
|
|
25
|
+
- name: Check out pull request
|
|
26
|
+
uses: actions/checkout@v4
|
|
27
|
+
with:
|
|
28
|
+
fetch-depth: 0
|
|
29
|
+
|
|
30
|
+
- name: Set up Python
|
|
31
|
+
uses: actions/setup-python@v5
|
|
32
|
+
with:
|
|
33
|
+
python-version: "3.12"
|
|
34
|
+
cache: pip
|
|
35
|
+
|
|
36
|
+
- name: Install
|
|
37
|
+
run: python -m pip install -e ".[dev]"
|
|
38
|
+
|
|
39
|
+
- name: Validate stage integrity
|
|
40
|
+
run: >-
|
|
41
|
+
python scripts/check_release_stage_integrity.py
|
|
42
|
+
--baseline-ref "${{ github.event.pull_request.base.sha || inputs.baseline_ref }}"
|
|
43
|
+
--allow-test-change "tests/multi_agent_run_fixture.py=v0.7.9 checks four inspector contracts in the browser that were only asserted against source text, so the shared run fixture gains the shapes they need: a second archive owned by the same agent carrying nothing usable, one provider-encrypted delegation, and one answer that quotes routing words as prose. This module is the fixture builder and declares no test node IDs; no existing shape or assertion is removed"
|
|
44
|
+
--allow-test-change "tests/test_agent_message_viewer.py=v0.7.9 removes the standalone Message Evidence inspector; the same test IDs now assert that exact message-stage relations and payload references survive in the unified static snapshot without the removed panel"
|
|
45
|
+
--allow-test-change "tests/test_agent_node_labels.py=v0.7.9 removes the standalone conversation fallback; the same test ID now verifies that namespaced agent paths and authenticated conversation refresh are owned by the unified selected-agent inspector without creating a second conversation DOM"
|
|
46
|
+
--allow-test-change "tests/test_agent_said_panel.py=v0.7.9 replaces the who-said-what transcript renderer with compact Prompt/Final-response and Task/Thinking/Response cards; the same test IDs now pin plaintext, encrypted, and ownership boundaries in that replacement inspector"
|
|
47
|
+
--allow-test-change "tests/test_agent_topology_evidence.py=v0.7.9 removes the standalone conversation-tree root selector; the same test IDs now verify canonical root/child topology, multi-entry aggregation, and no first-record fallback through the unified selected-agent inspector"
|
|
48
|
+
--allow-test-change "tests/test_agent_trace_viewer_visibility.py=v0.7.9 removes the standalone provider-visibility prose panel; the same test IDs now verify capability nodes and provider visibility values remain embedded in the unified graph snapshot"
|
|
49
|
+
--allow-test-change "tests/test_antigravity_linkage_projection.py=v0.7.9 removes the Antigravity-specific standalone inspector; the same test ID now verifies exact identity/linkage evidence remains in the unified snapshot without transcript-path leakage"
|
|
50
|
+
--allow-test-change "tests/test_claude_hook_viewer.py=v0.7.9 removes the standalone Agent communications panel; the same lifecycle test now verifies Claude task relations remain in the unified graph snapshot"
|
|
51
|
+
--allow-test-change "tests/test_claude_record.py=v0.7.9 removes the standalone correlation-section DOM; the same record test now verifies correlation metadata is embedded in the unified static graph"
|
|
52
|
+
--allow-test-change "tests/test_codex_archive_full_fidelity.py=v0.7.9 no longer renders provider-encrypted payload prose; the same full-fidelity test now verifies the encrypted content_state remains embedded while plaintext Task/Response projection stays intact"
|
|
53
|
+
--allow-test-change "tests/test_codex_record.py=v0.7.9 removes the standalone correlation-section DOM; the same record test now verifies correlation metadata is embedded in the unified static graph"
|
|
54
|
+
--allow-test-change "tests/test_conversation_access.py=v0.7.9 removes the visible standalone Conversation records panel from viewer.html; the same test now verifies run-local records are embedded in static conversations and the sidecar index files still exist"
|
|
55
|
+
--allow-test-change "tests/test_conversation_agent_focus.py=v0.7.9 removes the conversation-tree focus implementation; all original test IDs now pin selected-agent routing in the shared compact inspector while keeping Markdown agent identity checks"
|
|
56
|
+
--allow-test-change "tests/test_conversation_provider_parity.py=v0.7.9 removes legacy visible provider-neutral and raw-evidence copy from the Dashboard; the same test ID now verifies provider-neutral semantics through the conversation-index schema and unified inspector without hidden comment sentinels"
|
|
57
|
+
--allow-test-change "tests/test_dashboard_information_architecture.py=v0.7.9 removes the standalone rooted conversation tree from Live; the same test ID now verifies the compact selected-agent inspector, encrypted-observed wording, and absence of the legacy conversation DOM"
|
|
58
|
+
--allow-test-change "tests/test_dashboard_simplification.py=v0.7.9 removes standalone conversation-tree DOM from the static viewer while retaining the shared live dashboard projection; the same test ID now asserts the unified static bootstrap and preserved evidence"
|
|
59
|
+
--allow-test-change "tests/test_dashboard_ux_and_hook_projection.py=v0.7.9 makes the visible Dashboard theme-toggle the sole theme owner; the same test ID now verifies the canonical control instead of the retired final-only execweave-theme-toggle injector"
|
|
60
|
+
--allow-test-change "tests/test_delegation_viewer.py=v0.7.9 removes the standalone Delegation Evidence inspector; the same test IDs now verify exact delegation relations, payload paths, and absence of invented linkage in the unified snapshot"
|
|
61
|
+
--allow-test-change "tests/test_execution_viewer.py=v0.7.9 removes the standalone Execution Evidence inspector; the same test ID now verifies exact execution/error relations and payload paths remain in the unified snapshot"
|
|
62
|
+
--allow-test-change "tests/test_live_auth.py=v0.7.9 removes the authenticated finished-page /final fetch; the same test ID now verifies the live token stays in memory and is sent as a header for authenticated evidence requests, and asserts completion never fetches, navigates to, or document.write()s a separate document"
|
|
63
|
+
--allow-test-change "tests/test_live_delta.py=v0.7.9 makes the unified Dashboard own its theme and terminal live state; the same test ID now verifies FINISHED state with the canonical theme-toggle and without the legacy execweave-theme-toggle injector"
|
|
64
|
+
--allow-test-change "tests/test_live_logs_export.py=v0.7.9 removes the finished-page /final document replacement; the same test ID now verifies authenticated Live remains in-place while replay and GIF export stay supported"
|
|
65
|
+
--allow-test-change "tests/test_per_agent_conversation_default.py=v0.7.9 removes the default multi-agent conversation tree; all original test IDs now pin namespaced path resolution and sibling isolation in the selected-agent compact inspector"
|
|
66
|
+
--allow-test-change "tests/test_v069_dashboard_release.py=v0.7.9 retires the separate final-window renderer; the same historical test ID now verifies finished Live remains in the current Dashboard DOM and uses the canonical theme-toggle"
|
|
67
|
+
--allow-test-change "tests/test_viewer_agent_isolation_e2e.py=v0.7.9 replaces the two rendered viewer surfaces with one live dashboard shell; the same four browser test node IDs now assert the stricter visible product contract and live/viewer parity instead of the removed conversation-tree UI"
|
|
68
|
+
--allow-test-change "tests/test_viewer_content_inspector.py=v0.7.9 removes the standalone content/activity inspectors; the same test IDs now verify safe content references and communication evidence remain embedded without reviving the removed UI"
|
|
69
|
+
--allow-test-change "tests/test_viewer_projection.py=v0.7.9 embeds projected clusters through the unified static graph instead of the legacy graph-data renderer; the same test ID now verifies expansion metadata survives without the removed Expand cluster copy"
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
name: Viewer Agent Isolation
|
|
2
|
+
|
|
3
|
+
# The release gate opens the actual dashboard in Chromium. It reads the visible
|
|
4
|
+
# root/subagent/non-agent inspectors, compares live with viewer.html, and archives
|
|
5
|
+
# screenshots plus the rendered live.html for a human visual pass.
|
|
6
|
+
on:
|
|
7
|
+
pull_request:
|
|
8
|
+
push:
|
|
9
|
+
branches: [main]
|
|
10
|
+
workflow_dispatch:
|
|
11
|
+
|
|
12
|
+
permissions:
|
|
13
|
+
contents: read
|
|
14
|
+
|
|
15
|
+
jobs:
|
|
16
|
+
viewers:
|
|
17
|
+
runs-on: ubuntu-latest
|
|
18
|
+
steps:
|
|
19
|
+
- uses: actions/checkout@v4
|
|
20
|
+
|
|
21
|
+
- uses: actions/setup-python@v5
|
|
22
|
+
with:
|
|
23
|
+
python-version: "3.12"
|
|
24
|
+
cache: pip
|
|
25
|
+
|
|
26
|
+
- name: Install
|
|
27
|
+
run: python -m pip install -e ".[dev,e2e]"
|
|
28
|
+
|
|
29
|
+
- name: Install Chromium
|
|
30
|
+
run: python -m playwright install --with-deps chromium
|
|
31
|
+
|
|
32
|
+
- name: Read live and viewer.html in a browser
|
|
33
|
+
env:
|
|
34
|
+
EXECWEAVE_E2E_REQUIRED: "1"
|
|
35
|
+
EXECWEAVE_VISUAL_ARTIFACT_DIR: visual-artifacts
|
|
36
|
+
run: python -m pytest -m viewer_e2e -v
|
|
37
|
+
|
|
38
|
+
- name: Upload visual release evidence
|
|
39
|
+
if: always()
|
|
40
|
+
uses: actions/upload-artifact@v4
|
|
41
|
+
with:
|
|
42
|
+
name: unified-dashboard-visuals
|
|
43
|
+
path: visual-artifacts
|
|
44
|
+
if-no-files-found: error
|
|
45
|
+
retention-days: 7
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: execweave
|
|
3
|
-
Version: 0.7.
|
|
3
|
+
Version: 0.7.9
|
|
4
4
|
Summary: Turn AI-agent runtime behavior into a local interactive execution graph.
|
|
5
5
|
Project-URL: Homepage, https://github.com/Irish-kw/ExecWeave
|
|
6
6
|
Project-URL: Repository, https://github.com/Irish-kw/ExecWeave
|
|
@@ -84,7 +84,7 @@ Install the latest published wheel/sdist from PyPI:
|
|
|
84
84
|
python -m pip install -U execweave
|
|
85
85
|
```
|
|
86
86
|
|
|
87
|
-
The current release is **v0.7.
|
|
87
|
+
The current release is **v0.7.9**.
|
|
88
88
|
|
|
89
89
|
For development:
|
|
90
90
|
|
|
@@ -120,7 +120,7 @@ execweave record --open -- python my_agent.py
|
|
|
120
120
|
|
|
121
121
|
`execweave top -- codex` keeps the Agent interactive in the launch terminal while opening/attaching the detached Top dashboard according to the host environment.
|
|
122
122
|
|
|
123
|
-
**v0.7.
|
|
123
|
+
**v0.7.9 — one dashboard, while the run happens and afterwards.** Live, the finished run and viewer.html were three renderings of the same evidence, and completion fetched a separate document and wrote it over the page a reader was watching. There is now one shell: finishing a run changes its state in place, and viewer.html is that same dashboard saved offline. Selecting an agent answers one question and stops — a root shows its Prompt and its Final response, a subagent shows its Task, its Thinking where the provider exposed plaintext, and its Response — while a process, a file, a network endpoint or a model shows no conversation at all, because a conversation belongs to an agent. A turn the provider encrypted reads as observed without plaintext rather than as never recorded, the block a provider prepends to every subagent is never presented as one agent's assignment, and an answer that quotes routing words survives intact. The provider-neutral, agent-local multi-agent conversations each agent owns are aggregated across every archive a run wrote, so an agent recorded many times still shows what it said. Release checks drive the shipped dashboard in a real browser through every selection a person can make, in both its live and its finished form.
|
|
124
124
|
|
|
125
125
|
The unified dashboard brings the execution graph, logs, and conversation records into the same inspection flow. Finalized runs generate `conversations.md` and `conversations.json`, while validated provider transcripts are copied into the run-local SHA-256 content store. Claude Code, OpenAI Codex, Cursor, OpenCode, and Google Antigravity use the strongest provider-exposed multi-agent evidence available to each integration. For gateways and local runtimes that expose only root request/response traffic, ExecWeave shows only that root conversation and does not invent subagents or hidden routing.
|
|
126
126
|
|
|
@@ -329,7 +329,7 @@ Conversation isolation is an attribution/display rule, not a redaction boundary.
|
|
|
329
329
|
|
|
330
330
|
## Current status
|
|
331
331
|
|
|
332
|
-
v0.7.
|
|
332
|
+
v0.7.9 combines cross-platform runtime collection, materialized execution graphs, standalone/live dashboards, conservative provider↔runtime correlation, full-fidelity content-addressed provider evidence, attributable multi-agent execution traces, direct run-local conversation access, agent-local conversation isolation across provider-neutral projections, and per-agent conversation focus in the standalone and live dashboards. Supported integrations preserve the strongest identity/routing evidence actually exposed by each provider and abstain when that evidence is unavailable. Observed evidence and inference remain separate by design.
|
|
333
333
|
|
|
334
334
|
## Documentation
|
|
335
335
|
|
|
@@ -31,7 +31,7 @@ Installieren Sie das neueste veröffentlichte wheel/sdist von PyPI:
|
|
|
31
31
|
python -m pip install -U execweave
|
|
32
32
|
```
|
|
33
33
|
|
|
34
|
-
Die aktuelle Version ist **v0.7.
|
|
34
|
+
Die aktuelle Version ist **v0.7.9**.
|
|
35
35
|
|
|
36
36
|
Für die Entwicklung:
|
|
37
37
|
|
|
@@ -67,7 +67,7 @@ execweave record --open -- python my_agent.py
|
|
|
67
67
|
|
|
68
68
|
`execweave top -- codex` hält den Agent im Startterminal interaktiv und öffnet bzw. verbindet gleichzeitig das detached Top dashboard entsprechend der Host-Umgebung.
|
|
69
69
|
|
|
70
|
-
**v0.7.
|
|
70
|
+
**v0.7.9 — ein Dashboard, während des Runs und danach.** Live, der beendete Run und viewer.html waren drei Darstellungen derselben Evidenz, und der Abschluss holte ein eigenes Dokument und schrieb es über die Seite, die ein Leser gerade betrachtete. Es gibt jetzt nur eine Hülle: Das Beenden eines Runs ändert dessen Zustand an Ort und Stelle, und viewer.html ist genau dieses Dashboard offline gespeichert. Die Auswahl eines Agents beantwortet eine Frage und hört auf — eine Wurzel zeigt ihren Prompt und ihre finale Antwort, ein Subagent zeigt seine Aufgabe, sein Denken dort, wo der Provider Klartext offengelegt hat, und seine Antwort — während ein Prozess, eine Datei, ein Netzwerk-Endpunkt oder ein Modell überhaupt keine Conversation zeigt, denn eine Conversation gehört einem Agent. Ein vom Provider verschlüsselter Turn liest sich als beobachtet ohne Klartext und nicht als nie aufgezeichnet, der Block, den ein Provider jedem Subagent voranstellt, wird nie als die Zuweisung eines Agents dargestellt, und eine Antwort, die Routing-Wörter zitiert, bleibt unversehrt. Die provider-neutralen, agent-lokalen Multi-Agent-Conversations, die jeder Agent besitzt, werden über alle Archive hinweg zusammengeführt, die ein Run geschrieben hat, sodass ein mehrfach aufgezeichneter Agent weiterhin zeigt, was er gesagt hat. Release-Prüfungen fahren das ausgelieferte Dashboard in einem echten Browser durch jede Auswahl, die eine Person treffen kann, in seiner Live- wie in seiner beendeten Form.
|
|
71
71
|
|
|
72
72
|
Das vereinheitlichte Dashboard bringt execution graph, logs und conversation records in denselben Inspection-Flow. Finalisierte Runs erzeugen `conversations.md` und `conversations.json`; validierte Provider-Transcripts werden in den run-local SHA-256 content store kopiert. Claude Code, OpenAI Codex, Cursor, OpenCode und Google Antigravity verwenden jeweils die stärkste Multi-Agent-Evidence, die ihre Integration tatsächlich offenlegt. Wenn ein Gateway oder lokaler Runtime nur root request/response sichtbar macht, zeigt ExecWeave nur diese Root-Conversation und erfindet weder Subagents noch hidden routing.
|
|
73
73
|
|
|
@@ -276,7 +276,7 @@ Conversation isolation ist eine Attribution-/Display-Regel, keine Redaction Boun
|
|
|
276
276
|
|
|
277
277
|
## Aktueller Stand
|
|
278
278
|
|
|
279
|
-
v0.7.
|
|
279
|
+
v0.7.9 kombiniert cross-platform runtime collection, materialized execution graphs, standalone/live dashboards, konservative provider↔runtime correlation, full-fidelity content-addressed provider evidence, attributable multi-agent execution traces, direkten run-local conversation access agent-local conversation isolation in provider-neutralen Projektionen und per-agent conversation focus in den Standalone- und Live-Dashboards. Jede Integration bewahrt nur die stärkste identity/routing evidence, die der Provider tatsächlich offenlegt, und enthält sich, wenn diese Evidence fehlt. Observed evidence und inference bleiben konstruktiv getrennt.
|
|
280
280
|
|
|
281
281
|
## Dokumentation
|
|
282
282
|
|
|
@@ -31,7 +31,7 @@ Installez le dernier wheel/sdist publié depuis PyPI :
|
|
|
31
31
|
python -m pip install -U execweave
|
|
32
32
|
```
|
|
33
33
|
|
|
34
|
-
La version courante est **v0.7.
|
|
34
|
+
La version courante est **v0.7.9**.
|
|
35
35
|
|
|
36
36
|
Pour le développement :
|
|
37
37
|
|
|
@@ -67,7 +67,7 @@ execweave record --open -- python my_agent.py
|
|
|
67
67
|
|
|
68
68
|
`execweave top -- codex` garde l’Agent interactif dans le terminal de lancement tout en ouvrant ou en attachant le dashboard Top détaché selon l’environnement hôte.
|
|
69
69
|
|
|
70
|
-
**v0.7.
|
|
70
|
+
**v0.7.9 — un seul tableau de bord, pendant le run et après.** Le live, le run terminé et viewer.html étaient trois rendus des mêmes preuves, et la fin d'un run allait chercher un document séparé pour l'écrire par-dessus la page que le lecteur regardait. Il n'y a plus qu'une coque : terminer un run change son état sur place, et viewer.html est ce même tableau de bord enregistré hors ligne. Sélectionner un agent répond à une question et s'arrête — une racine montre son Prompt et sa Réponse finale, un subagent montre sa Tâche, son Raisonnement là où le provider a exposé du texte en clair, et sa Réponse — tandis qu'un processus, un fichier, un point de terminaison réseau ou un modèle ne montre aucune conversation, parce qu'une conversation appartient à un agent. Un turn chiffré par le provider se lit comme observé sans clair plutôt que comme jamais enregistré, le bloc qu'un provider ajoute devant chaque subagent n'est jamais présenté comme l'assignation d'un agent, et une réponse qui cite des mots de routage reste intacte. Les conversations multi-agent provider-neutral et agent-local que chaque agent possède sont agrégées sur toutes les archives qu'un run a écrites, si bien qu'un agent enregistré plusieurs fois montre encore ce qu'il a dit. Les vérifications de release pilotent le tableau de bord livré dans un vrai navigateur, à travers chaque sélection possible, dans sa forme live comme dans sa forme terminée.
|
|
71
71
|
|
|
72
72
|
Le dashboard unifié rassemble execution graph, logs et conversation records dans le même flux d’inspection. Les runs finalisés génèrent `conversations.md` et `conversations.json`, et les transcripts provider validés sont copiés dans le content store SHA-256 local au run. Claude Code, OpenAI Codex, Cursor, OpenCode et Google Antigravity exploitent chacun le niveau de multi-agent evidence réellement exposé par leur integration. Lorsqu’un gateway ou un local runtime n’expose que des request/response root, ExecWeave affiche uniquement cette root conversation et n’invente ni subagent ni hidden routing.
|
|
73
73
|
|
|
@@ -276,7 +276,7 @@ La conversation isolation est une règle d’attribution et d’affichage, pas u
|
|
|
276
276
|
|
|
277
277
|
## État actuel
|
|
278
278
|
|
|
279
|
-
v0.7.
|
|
279
|
+
v0.7.9 combine cross-platform runtime collection, materialized execution graphs, standalone/live dashboards, conservative provider↔runtime correlation, full-fidelity content-addressed provider evidence, attributable multi-agent execution traces, accès direct aux conversations run-local agent-local conversation isolation dans les projections provider-neutral et per-agent conversation focus dans les dashboards standalone et live. Chaque integration conserve uniquement la meilleure identity/routing evidence réellement exposée par le provider et s’abstient lorsque cette evidence manque. Observed evidence et inference restent séparées par conception.
|
|
280
280
|
|
|
281
281
|
## Documentation
|
|
282
282
|
|
|
@@ -31,7 +31,7 @@ PyPI から最新の wheel/sdist をインストールします。
|
|
|
31
31
|
python -m pip install -U execweave
|
|
32
32
|
```
|
|
33
33
|
|
|
34
|
-
現在のリリースは **v0.7.
|
|
34
|
+
現在のリリースは **v0.7.9** です。
|
|
35
35
|
|
|
36
36
|
開発環境では次のようにインストールできます。
|
|
37
37
|
|
|
@@ -67,7 +67,7 @@ execweave record --open -- python my_agent.py
|
|
|
67
67
|
|
|
68
68
|
`execweave top -- codex` は Agent を起動 terminal 上でインタラクティブなまま保ち、ホスト環境に応じて detached Top dashboard を開くか既存のものに attach します。
|
|
69
69
|
|
|
70
|
-
**v0.7.
|
|
70
|
+
**v0.7.9 — 実行中も実行後も、ひとつの Dashboard。** Live、完了後の画面、viewer.html は同じ証拠の三つの描画であり、完了時には別の文書を取得して読者が見ているページに上書きしていました。いまはひとつの shell だけです。完了は開いている画面の状態を変えるだけで、viewer.html はその同じ Dashboard のオフライン保存です。agent を選ぶとひとつの問いに答えて止まります。root は Prompt と Final response を、subagent は Task、provider が平文を公開した場合の Thinking、そして Response を示します。process、file、network endpoint、model は conversation をまったく示しません。conversation は agent のものだからです。provider が暗号化した turn は「観測済みだが平文は非公開」と読まれ、記録されなかったとは読まれません。provider がすべての subagent に前置きするブロックが、ある agent の assignment として示されることはありません。routing の語を引用した回答もそのまま残ります。各 agent が保持する provider-neutral かつ agent-local な multi-agent conversation は、その実行が書き出したすべてのアーカイブを横断して集約されるため、何度も記録された agent も自分が述べたことを示せます。リリース前の検査は、出荷される Dashboard を live と finished の両方の状態で、実物のブラウザで人が行えるあらゆる選択にわたって駆動します。
|
|
71
71
|
|
|
72
72
|
統合 dashboard では execution graph、logs、conversation records を同じ inspection flow で確認できます。Finalized run は `conversations.md` と `conversations.json` を生成し、検証済み provider transcript は run-local SHA-256 content store にコピーされます。Claude Code、OpenAI Codex、Cursor、OpenCode、Google Antigravity は、それぞれが実際に公開する最も強い multi-agent evidence を利用します。gateway や local runtime が root request/response しか公開しない場合、ExecWeave は root conversation だけを表示し、subagent や hidden routing を捏造しません。
|
|
73
73
|
|
|
@@ -276,7 +276,7 @@ Conversation isolation は attribution/display の規則であり redaction boun
|
|
|
276
276
|
|
|
277
277
|
## 現在の状態
|
|
278
278
|
|
|
279
|
-
v0.7.
|
|
279
|
+
v0.7.9 は cross-platform runtime collection、materialized execution graph、standalone/live dashboard、保守的な provider↔runtime correlation、content-addressed full-fidelity provider evidence、attributable multi-agent execution trace、run-local conversation access、provider-neutral projection 上の agent-local conversation isolation、standalone および live dashboard での per-agent conversation focus を統合します。各 integration は provider が実際に公開した最も強い identity/routing evidence のみを保持し、不足する場合は abstain します。Observed evidence と inference は設計上分離されたままです。
|
|
280
280
|
|
|
281
281
|
## ドキュメント
|
|
282
282
|
|
|
@@ -31,7 +31,7 @@ PyPI에서 최신 wheel/sdist를 설치합니다.
|
|
|
31
31
|
python -m pip install -U execweave
|
|
32
32
|
```
|
|
33
33
|
|
|
34
|
-
현재 릴리스는 **v0.7.
|
|
34
|
+
현재 릴리스는 **v0.7.9** 입니다.
|
|
35
35
|
|
|
36
36
|
개발 설치:
|
|
37
37
|
|
|
@@ -67,7 +67,7 @@ execweave record --open -- python my_agent.py
|
|
|
67
67
|
|
|
68
68
|
`execweave top -- codex`는 Agent를 시작 terminal에서 interactive 상태로 유지하면서 host 환경에 따라 detached Top dashboard를 열거나 attach합니다.
|
|
69
69
|
|
|
70
|
-
**v0.7.
|
|
70
|
+
**v0.7.9 — 실행 중에도 실행 후에도, 하나의 Dashboard.** Live, 완료된 화면, viewer.html 은 같은 증거의 세 가지 렌더링이었고, 완료 시점에는 별도의 문서를 가져와 읽는 사람이 보고 있던 페이지 위에 덮어썼습니다. 이제 shell 은 하나입니다. 완료는 열려 있는 화면의 상태를 바꿀 뿐이고, viewer.html 은 바로 그 Dashboard 의 오프라인 저장본입니다. agent 를 선택하면 하나의 질문에 답하고 멈춥니다. root 는 Prompt 와 Final response 를, subagent 는 Task 와, provider 가 평문을 노출한 경우의 Thinking, 그리고 Response 를 보여 줍니다. process, file, network endpoint, model 은 conversation 을 전혀 보여 주지 않습니다. conversation 은 agent 의 것이기 때문입니다. provider 가 암호화한 turn 은 기록되지 않은 것이 아니라 관측되었으나 평문이 노출되지 않은 것으로 읽힙니다. provider 가 모든 subagent 앞에 붙이는 블록이 어느 agent 의 assignment 로 제시되는 일도 없습니다. routing 어휘를 인용한 답변도 온전히 남습니다. 각 agent 가 소유한 provider-neutral, agent-local multi-agent conversation 은 그 실행이 남긴 모든 아카이브에 걸쳐 집계되므로, 여러 번 기록된 agent 도 자신이 말한 것을 보여 줍니다. 릴리스 검사는 출시되는 Dashboard 를 live 와 finished 두 상태 모두에서 실제 브라우저로, 사람이 할 수 있는 모든 선택에 걸쳐 구동합니다.
|
|
71
71
|
|
|
72
72
|
통합 dashboard는 execution graph, logs, conversation records를 하나의 inspection flow에서 제공합니다. Finalized run은 `conversations.md`와 `conversations.json`을 만들며, 검증된 provider transcript는 run-local SHA-256 content store로 복사됩니다. Claude Code, OpenAI Codex, Cursor, OpenCode, Google Antigravity는 각 integration이 실제로 노출하는 가장 강한 multi-agent evidence를 사용합니다. gateway나 local runtime이 root request/response만 노출하면 ExecWeave는 root conversation만 보여 주며 subagent나 hidden routing을 만들어내지 않습니다.
|
|
73
73
|
|
|
@@ -276,7 +276,7 @@ Conversation isolation은 attribution/display 규칙이지 redaction boundary가
|
|
|
276
276
|
|
|
277
277
|
## 현재 상태
|
|
278
278
|
|
|
279
|
-
v0.7.
|
|
279
|
+
v0.7.9는 cross-platform runtime collection, materialized execution graph, standalone/live dashboard, 보수적인 provider↔runtime correlation, content-addressed full-fidelity provider evidence, attributable multi-agent execution trace, run-local conversation access, provider-neutral projection의 agent-local conversation isolation, standalone 및 live dashboard의 per-agent conversation focus를 통합합니다. 각 integration은 provider가 실제로 노출한 가장 강한 identity/routing evidence만 보존하고 충분한 증거가 없으면 abstain합니다. Observed evidence와 inference는 설계상 계속 분리됩니다.
|
|
280
280
|
|
|
281
281
|
## 문서
|
|
282
282
|
|
|
@@ -31,7 +31,7 @@ Install the latest published wheel/sdist from PyPI:
|
|
|
31
31
|
python -m pip install -U execweave
|
|
32
32
|
```
|
|
33
33
|
|
|
34
|
-
The current release is **v0.7.
|
|
34
|
+
The current release is **v0.7.9**.
|
|
35
35
|
|
|
36
36
|
For development:
|
|
37
37
|
|
|
@@ -67,7 +67,7 @@ execweave record --open -- python my_agent.py
|
|
|
67
67
|
|
|
68
68
|
`execweave top -- codex` keeps the Agent interactive in the launch terminal while opening/attaching the detached Top dashboard according to the host environment.
|
|
69
69
|
|
|
70
|
-
**v0.7.
|
|
70
|
+
**v0.7.9 — one dashboard, while the run happens and afterwards.** Live, the finished run and viewer.html were three renderings of the same evidence, and completion fetched a separate document and wrote it over the page a reader was watching. There is now one shell: finishing a run changes its state in place, and viewer.html is that same dashboard saved offline. Selecting an agent answers one question and stops — a root shows its Prompt and its Final response, a subagent shows its Task, its Thinking where the provider exposed plaintext, and its Response — while a process, a file, a network endpoint or a model shows no conversation at all, because a conversation belongs to an agent. A turn the provider encrypted reads as observed without plaintext rather than as never recorded, the block a provider prepends to every subagent is never presented as one agent's assignment, and an answer that quotes routing words survives intact. The provider-neutral, agent-local multi-agent conversations each agent owns are aggregated across every archive a run wrote, so an agent recorded many times still shows what it said. Release checks drive the shipped dashboard in a real browser through every selection a person can make, in both its live and its finished form.
|
|
71
71
|
|
|
72
72
|
The unified dashboard brings the execution graph, logs, and conversation records into the same inspection flow. Finalized runs generate `conversations.md` and `conversations.json`, while validated provider transcripts are copied into the run-local SHA-256 content store. Claude Code, OpenAI Codex, Cursor, OpenCode, and Google Antigravity use the strongest provider-exposed multi-agent evidence available to each integration. For gateways and local runtimes that expose only root request/response traffic, ExecWeave shows only that root conversation and does not invent subagents or hidden routing.
|
|
73
73
|
|
|
@@ -276,7 +276,7 @@ Conversation isolation is an attribution/display rule, not a redaction boundary.
|
|
|
276
276
|
|
|
277
277
|
## Current status
|
|
278
278
|
|
|
279
|
-
v0.7.
|
|
279
|
+
v0.7.9 combines cross-platform runtime collection, materialized execution graphs, standalone/live dashboards, conservative provider↔runtime correlation, full-fidelity content-addressed provider evidence, attributable multi-agent execution traces, direct run-local conversation access, agent-local conversation isolation across provider-neutral projections, and per-agent conversation focus in the standalone and live dashboards. Supported integrations preserve the strongest identity/routing evidence actually exposed by each provider and abstain when that evidence is unavailable. Observed evidence and inference remain separate by design.
|
|
280
280
|
|
|
281
281
|
## Documentation
|
|
282
282
|
|
|
@@ -31,7 +31,7 @@ ExecWeave — source-available, local-first проект наблюдаемос
|
|
|
31
31
|
python -m pip install -U execweave
|
|
32
32
|
```
|
|
33
33
|
|
|
34
|
-
Текущая версия — **v0.7.
|
|
34
|
+
Текущая версия — **v0.7.9**.
|
|
35
35
|
|
|
36
36
|
Для разработки:
|
|
37
37
|
|
|
@@ -67,7 +67,7 @@ execweave record --open -- python my_agent.py
|
|
|
67
67
|
|
|
68
68
|
`execweave top -- codex` оставляет Agent интерактивным в стартовом terminal и одновременно открывает либо подключает detached Top dashboard в зависимости от host environment.
|
|
69
69
|
|
|
70
|
-
**v0.7.
|
|
70
|
+
**v0.7.9 — одна панель, во время прогона и после него.** Live, завершённый прогон и viewer.html были тремя отрисовками одних и тех же свидетельств, а завершение забирало отдельный документ и записывало его поверх страницы, которую читатель уже смотрел. Теперь оболочка одна: завершение меняет состояние на месте, а viewer.html — это та же панель, сохранённая офлайн. Выбор agent отвечает на один вопрос и останавливается: корень показывает свой Prompt и итоговый ответ, subagent — свою задачу, своё рассуждение там, где provider раскрыл открытый текст, и свой ответ, тогда как процесс, файл, сетевая конечная точка или модель не показывают conversation вовсе, потому что conversation принадлежит agent. Turn, зашифрованный provider, читается как наблюдавшийся без открытого текста, а не как никогда не записанный; блок, который provider добавляет перед каждым subagent, никогда не подаётся как задание какого-либо agent; ответ, цитирующий слова маршрутизации, остаётся целым. Provider-neutral, agent-local multi-agent conversations, которыми владеет каждый agent, собираются по всем архивам, записанным прогоном, поэтому agent, записанный много раз, по-прежнему показывает сказанное им. Релизные проверки ведут поставляемую панель в настоящем браузере через каждый выбор, который может сделать человек, и в live-, и в завершённой форме.
|
|
71
71
|
|
|
72
72
|
Единый dashboard объединяет execution graph, logs и conversation records в одном inspection flow. Finalized runs создают `conversations.md` и `conversations.json`, а проверенные provider transcripts копируются в run-local SHA-256 content store. Claude Code, OpenAI Codex, Cursor, OpenCode и Google Antigravity используют наиболее сильную multi-agent evidence, которую реально раскрывает соответствующая integration. Если gateway или local runtime показывает только root request/response, ExecWeave отображает только root conversation и не выдумывает subagents или hidden routing.
|
|
73
73
|
|
|
@@ -276,7 +276,7 @@ Conversation isolation — это правило attribution/display, а не re
|
|
|
276
276
|
|
|
277
277
|
## Текущий статус
|
|
278
278
|
|
|
279
|
-
v0.7.
|
|
279
|
+
v0.7.9 объединяет cross-platform runtime collection, materialized execution graphs, standalone/live dashboards, conservative provider↔runtime correlation, full-fidelity content-addressed provider evidence, attributable multi-agent execution traces, прямой run-local conversation access agent-local conversation isolation в provider-neutral projections и per-agent conversation focus в standalone и live dashboards. Каждая integration сохраняет только наиболее сильную identity/routing evidence, реально раскрытую provider, и abstain-ит при её отсутствии. Observed evidence и inference по-прежнему разделены архитектурно.
|
|
280
280
|
|
|
281
281
|
## Документация
|
|
282
282
|
|
|
@@ -31,7 +31,7 @@ ExecWeave 是一个 source-available、local-first 的可观测性项目,把 A
|
|
|
31
31
|
python -m pip install -U execweave
|
|
32
32
|
```
|
|
33
33
|
|
|
34
|
-
当前正式版本是 **v0.7.
|
|
34
|
+
当前正式版本是 **v0.7.9**。
|
|
35
35
|
|
|
36
36
|
开发安装:
|
|
37
37
|
|
|
@@ -67,7 +67,7 @@ execweave record --open -- python my_agent.py
|
|
|
67
67
|
|
|
68
68
|
`execweave top -- codex` 会让 Agent 保持在启动 terminal 中交互,并根据主机环境打开或附加 detached Top dashboard。
|
|
69
69
|
|
|
70
|
-
**v0.7.
|
|
70
|
+
**v0.7.9 — 运行中与运行后,同一套 Dashboard。** Live、完成后的画面与 viewer.html 原本是同一批证据的三种渲染,而且运行结束时会去抓另一份文件覆盖读者正在看的页面。现在只有一套 shell:完成只让当前画面转为结束状态,viewer.html 就是同一套 Dashboard 的离线存档。选取一个 agent 只回答一个问题就停——root 显示它的 Prompt 与 Final response,subagent 显示 Task、provider 有公开明文时的 Thinking、以及 Response——而 process、file、网络端点或 model 完全不显示任何对话,因为对话属于 agent。provider 加密的 turn 读作「已观测但未公开明文」,而不是从未记录;provider 加在每个 subagent 前面的内容永远不会被当成某个 agent 的交办;引用了 routing 字眼的回答也完整保留。每个 agent 各自拥有的 provider-neutral、agent-local multi-agent conversation 会跨该次运行写出的所有存档聚合,因此被记录多次的 agent 仍然显示得出它说了什么。发布前的检查会用真实浏览器把出货的 Dashboard 在 live 与 finished 两种状态下走过每一种可操作的选取。
|
|
71
71
|
|
|
72
72
|
统一 dashboard 把 execution graph、logs 与 conversation records 放进同一条 inspection flow。Finalized run 会生成 `conversations.md` 与 `conversations.json`,经过验证的 provider transcript 也会复制进 run-local SHA-256 content store。Claude Code、OpenAI Codex、Cursor、OpenCode 与 Google Antigravity 都依据各自实际暴露的 evidence 强度建立 multi-agent trace;如果 gateway 或 local runtime 只提供 root request/response,ExecWeave 就只显示 root conversation,不会虚构 subagent 或 hidden routing。
|
|
73
73
|
|
|
@@ -276,7 +276,7 @@ Conversation isolation 是 attribution/display 规则,而不是 redaction boun
|
|
|
276
276
|
|
|
277
277
|
## 当前状态
|
|
278
278
|
|
|
279
|
-
v0.7.
|
|
279
|
+
v0.7.9 组合 cross-platform runtime collection、materialized execution graph、standalone/live dashboard、保守的 provider↔runtime correlation、content-addressed full-fidelity provider evidence、可归属的 multi-agent execution trace、run-local conversation access,provider-neutral projection 上的 agent-local conversation isolation,以及 standalone 与 live dashboard 上的 per-agent conversation focus。各 integration 只保留 provider 实际暴露的最强 identity/routing evidence,证据不足时选择 abstain。Observed evidence 与 inference 从设计上保持分离。
|
|
280
280
|
|
|
281
281
|
## 文档
|
|
282
282
|
|
|
@@ -31,7 +31,7 @@ ExecWeave 是一個 source-available、local-first 的可觀測性專案,會
|
|
|
31
31
|
python -m pip install -U execweave
|
|
32
32
|
```
|
|
33
33
|
|
|
34
|
-
目前正式版本是 **v0.7.
|
|
34
|
+
目前正式版本是 **v0.7.9**。
|
|
35
35
|
|
|
36
36
|
開發安裝:
|
|
37
37
|
|
|
@@ -67,7 +67,7 @@ execweave record --open -- python my_agent.py
|
|
|
67
67
|
|
|
68
68
|
`execweave top -- codex` 會讓 Agent 保持在啟動 terminal 中互動,並依主機環境開啟或附加 detached Top dashboard。
|
|
69
69
|
|
|
70
|
-
**v0.7.
|
|
70
|
+
**v0.7.9 — 執行中與執行後,同一套 Dashboard。** Live、完成後的畫面與 viewer.html 原本是同一批證據的三種渲染,而且執行結束時會去抓另一份文件覆蓋讀者正在看的頁面。現在只有一套 shell:完成只讓當前畫面轉為結束狀態,viewer.html 就是同一套 Dashboard 的離線存檔。選取一個 agent 只回答一個問題就停——root 顯示它的 Prompt 與 Final response,subagent 顯示 Task、provider 有公開明文時的 Thinking、以及 Response——而 process、file、網路端點或 model 完全不顯示任何對話,因為對話屬於 agent。provider 加密的 turn 讀作「已觀測但未公開明文」,而不是從未記錄;provider 加在每個 subagent 前面的內容永遠不會被當成某個 agent 的交辦;引用了 routing 字眼的回答也完整保留。每個 agent 各自擁有的 provider-neutral、agent-local multi-agent conversation 會跨該次執行寫出的所有存檔聚合,因此被記錄多次的 agent 仍然顯示得出它說了什麼。發布前的檢查會用真實瀏覽器把出貨的 Dashboard 在 live 與 finished 兩種狀態下走過每一種可操作的選取。
|
|
71
71
|
|
|
72
72
|
統一 dashboard 把 execution graph、logs 與 conversation records 放進同一條 inspection flow。Finalized run 會產生 `conversations.md` 與 `conversations.json`,經驗證的 provider transcript 也會複製進 run-local SHA-256 content store。Claude Code、OpenAI Codex、Cursor、OpenCode 與 Google Antigravity 都依各自實際曝露的 evidence 強度建立 multi-agent trace;若 gateway 或 local runtime 只提供 root request/response,ExecWeave 就只顯示 root conversation,不會虛構 subagent 或 hidden routing。
|
|
73
73
|
|
|
@@ -276,7 +276,7 @@ Conversation isolation 是 attribution/display 規則,不是 redaction boundar
|
|
|
276
276
|
|
|
277
277
|
## 目前狀態
|
|
278
278
|
|
|
279
|
-
v0.7.
|
|
279
|
+
v0.7.9 整合 cross-platform runtime collection、materialized execution graph、standalone/live dashboard、保守的 provider↔runtime correlation、content-addressed full-fidelity provider evidence、可歸屬的 multi-agent execution trace、run-local conversation access,provider-neutral projection 上的 agent-local conversation isolation,以及 standalone 與 live dashboard 上的 per-agent conversation focus。各 integration 只保留 provider 實際曝露的最強 identity/routing evidence,證據不足時選擇 abstain。Observed evidence 與 inference 仍從設計上分離。
|
|
280
280
|
|
|
281
281
|
## 文件
|
|
282
282
|
|
|
@@ -4,8 +4,8 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "execweave"
|
|
7
|
-
# ExecWeave v0.7.
|
|
8
|
-
version = "0.7.
|
|
7
|
+
# ExecWeave v0.7.9 release metadata
|
|
8
|
+
version = "0.7.9"
|
|
9
9
|
description = "Turn AI-agent runtime behavior into a local interactive execution graph."
|
|
10
10
|
readme = "README.md"
|
|
11
11
|
requires-python = ">=3.10"
|