execweave 0.8.6__tar.gz → 0.8.8__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.8.6 → execweave-0.8.8}/.github/workflows/ci.yml +0 -18
- execweave-0.8.8/.github/workflows/provider-capability-stage-integrity.yml +124 -0
- execweave-0.8.8/.github/workflows/provider-dashboard-contract.yml +116 -0
- {execweave-0.8.6 → execweave-0.8.8}/PKG-INFO +9 -3
- {execweave-0.8.6 → execweave-0.8.8}/README.de.md +4 -2
- {execweave-0.8.6 → execweave-0.8.8}/README.fr.md +4 -2
- {execweave-0.8.6 → execweave-0.8.8}/README.ja.md +4 -2
- {execweave-0.8.6 → execweave-0.8.8}/README.ko.md +4 -2
- {execweave-0.8.6 → execweave-0.8.8}/README.md +8 -2
- {execweave-0.8.6 → execweave-0.8.8}/README.ru.md +4 -2
- {execweave-0.8.6 → execweave-0.8.8}/README.zh-CN.md +4 -2
- {execweave-0.8.6 → execweave-0.8.8}/README.zh-TW.md +4 -2
- {execweave-0.8.6 → execweave-0.8.8}/docs/antigravity-hooks.md +0 -4
- {execweave-0.8.6 → execweave-0.8.8}/docs/internal/provider-capability-matrix.md +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/docs/live-graph.de.md +3 -3
- {execweave-0.8.6 → execweave-0.8.8}/docs/live-graph.fr.md +3 -3
- {execweave-0.8.6 → execweave-0.8.8}/docs/live-graph.ja.md +3 -3
- {execweave-0.8.6 → execweave-0.8.8}/docs/live-graph.ko.md +3 -3
- {execweave-0.8.6 → execweave-0.8.8}/docs/live-graph.md +3 -3
- {execweave-0.8.6 → execweave-0.8.8}/docs/live-graph.ru.md +3 -3
- {execweave-0.8.6 → execweave-0.8.8}/docs/live-graph.zh-CN.md +3 -3
- {execweave-0.8.6 → execweave-0.8.8}/docs/live-graph.zh-TW.md +3 -3
- {execweave-0.8.6 → execweave-0.8.8}/docs/phase-1-runtime-collection.de.md +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/docs/phase-1-runtime-collection.fr.md +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/docs/phase-1-runtime-collection.ja.md +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/docs/phase-1-runtime-collection.ko.md +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/docs/phase-1-runtime-collection.md +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/docs/phase-1-runtime-collection.ru.md +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/docs/phase-1-runtime-collection.zh-CN.md +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/docs/phase-1-runtime-collection.zh-TW.md +1 -1
- execweave-0.8.8/docs/remaining-provider-audit-v0.8.7.md +143 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/runtime-threat-model.de.md +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/docs/runtime-threat-model.fr.md +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/docs/runtime-threat-model.ja.md +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/docs/runtime-threat-model.ko.md +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/docs/runtime-threat-model.md +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/docs/runtime-threat-model.ru.md +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/docs/runtime-threat-model.zh-CN.md +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/docs/runtime-threat-model.zh-TW.md +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/docs/semantic-telemetry.de.md +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/docs/semantic-telemetry.fr.md +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/docs/semantic-telemetry.ja.md +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/docs/semantic-telemetry.ko.md +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/docs/semantic-telemetry.md +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/docs/semantic-telemetry.ru.md +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/docs/semantic-telemetry.zh-CN.md +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/docs/semantic-telemetry.zh-TW.md +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/docs/v0.6.5-hardening-decisions.md +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/pyproject.toml +2 -5
- {execweave-0.8.6 → execweave-0.8.8}/scripts/audit_i18n_parity.py +0 -1
- {execweave-0.8.6 → execweave-0.8.8}/scripts/check_release_stage_integrity.py +120 -15
- {execweave-0.8.6 → execweave-0.8.8}/scripts/sync_i18n_nav.py +0 -1
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/__init__.py +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/agent_bootstrap.py +0 -8
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/agent_trace.py +101 -3
- execweave-0.8.8/src/execweave/agy_preview_sanitize.py +102 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/antigravity_adapter_base.py +67 -12
- execweave-0.8.8/src/execweave/antigravity_full_fidelity.py +577 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/antigravity_full_fidelity_base.py +6 -1
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/antigravity_hook_cli.py +45 -5
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/antigravity_subagent_linkage.py +116 -3
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/claude_adapter.py +65 -4
- execweave-0.8.8/src/execweave/claude_child_transcript.py +314 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/claude_hook_cli.py +8 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/cli.py +34 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/codex_adapter.py +82 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/codex_conversation.py +31 -4
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/collector.py +0 -1
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/conversation_archive.py +1 -1
- execweave-0.8.8/src/execweave/conversation_preview.py +66 -0
- execweave-0.8.8/src/execweave/conversation_preview_antigravity.py +32 -0
- execweave-0.8.8/src/execweave/conversation_preview_claude.py +31 -0
- execweave-0.8.8/src/execweave/conversation_preview_codex.py +107 -0
- execweave-0.8.8/src/execweave/conversation_preview_common.py +155 -0
- execweave-0.8.8/src/execweave/conversation_preview_generic.py +166 -0
- execweave-0.8.8/src/execweave/conversation_preview_lines.py +116 -0
- execweave-0.8.8/src/execweave/conversation_preview_transcript.py +121 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/conversation_records.py +21 -260
- execweave-0.8.8/src/execweave/conversation_records_antigravity.py +369 -0
- execweave-0.8.8/src/execweave/conversation_records_codex.py +59 -0
- execweave-0.8.8/src/execweave/conversation_records_common.py +16 -0
- execweave-0.8.8/src/execweave/conversation_records_ollama.py +39 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/cursor_adapter.py +7 -4
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/cursor_full_fidelity.py +6 -5
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/dashboard_shell.py +16 -1
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/live.py +7 -3
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/live_core.py +14 -4
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/live_view.py +5 -4
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/live_view_markup.py +1 -1
- execweave-0.8.8/src/execweave/live_view_process_layout.py +349 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/live_view_readability.py +54 -1
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/live_view_script_a.py +3 -2
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/provider_capability.py +0 -8
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/provider_lifecycle.py +1 -1
- execweave-0.8.8/src/execweave/vendor/dagre.min.js +815 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/viewer.py +17 -6
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/viewer_agent_panel.py +86 -33
- execweave-0.8.8/src/execweave/viewer_agent_panel_antigravity.py +31 -0
- execweave-0.8.8/src/execweave/viewer_agent_panel_claude.py +9 -0
- execweave-0.8.8/src/execweave/viewer_agent_panel_codex.py +50 -0
- execweave-0.8.8/src/execweave/viewer_agent_panel_cursor.py +9 -0
- execweave-0.8.8/src/execweave/viewer_agent_panel_default.py +36 -0
- execweave-0.8.8/src/execweave/viewer_agent_panel_ollama.py +20 -0
- execweave-0.8.8/src/execweave/viewer_agent_panel_opencode.py +9 -0
- execweave-0.8.8/src/execweave/viewer_agent_panel_registry.py +20 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/viewer_dashboard_clean.py +101 -52
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/viewer_dashboard_focus.py +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/viewer_dashboard_hardening.py +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/viewer_dashboard_hardening_v2.py +0 -8
- execweave-0.8.8/src/execweave/viewer_external_endpoints.py +199 -0
- execweave-0.8.8/src/execweave/viewer_limits.py +93 -0
- execweave-0.8.8/src/execweave/viewer_projection.py +198 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/viewer_projection_base.py +0 -1
- {execweave-0.8.6 → execweave-0.8.8}/tests/fixtures/hooks/manifest.json +0 -8
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_agent_bootstrap.py +1 -16
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_agent_topology_evidence.py +1 -7
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_agent_trace_viewer_visibility.py +0 -45
- execweave-0.8.8/tests/test_agy_windows_wire_acceptance.py +302 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_antigravity_agent_collaboration.py +1 -1
- execweave-0.8.8/tests/test_antigravity_child_panel_policy.py +166 -0
- execweave-0.8.8/tests/test_antigravity_child_transcript_tools.py +158 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_antigravity_cursor_launch.py +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_antigravity_identity_topology.py +1 -1
- execweave-0.8.8/tests/test_antigravity_invocation_archive.py +237 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_antigravity_official_contract.py +2 -2
- execweave-0.8.8/tests/test_antigravity_role_path_fallback.py +249 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_antigravity_subagent_transcript_linkage.py +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_antigravity_trace_capability_cli.py +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_claude_adapter.py +43 -0
- execweave-0.8.8/tests/test_claude_child_transcript_tools.py +240 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_codex_adapter.py +66 -0
- execweave-0.8.8/tests/test_codex_child_panel_policy.py +375 -0
- execweave-0.8.8/tests/test_codex_nickname_path_fallback.py +134 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_codex_real_multi_agent_conversation.py +0 -1
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_collector.py +0 -1
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_command.py +1 -2
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_conversation_access.py +1 -1
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_conversation_agent_isolation.py +0 -1
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_conversation_identity_merge.py +1 -4
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_conversation_provider_parity.py +0 -14
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_cross_provider_agent_trace.py +43 -1
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_cursor_adapter.py +15 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_dashboard_information_architecture.py +0 -1
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_dashboard_readability_e2e.py +2 -2
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_dashboard_simplification.py +6 -1
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_dashboard_ux_and_hook_projection.py +2 -1
- execweave-0.8.8/tests/test_external_endpoints_all_providers.py +145 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_hook_fixture_corpus.py +0 -6
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_live.py +3 -1
- execweave-0.8.8/tests/test_ollama_panel_policy.py +89 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_per_agent_conversation_default.py +4 -2
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_pr25_premerge_hardening_e2e.py +16 -6
- execweave-0.8.8/tests/test_process_tree_layout.py +156 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_provider_capability.py +1 -16
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_provider_conversation_evidence.py +2 -2
- execweave-0.8.8/tests/test_provider_dashboard_contract.py +270 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_provider_lifecycle.py +2 -16
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_v064_live_auto_integrations.py +2 -13
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_v069_dashboard_release.py +3 -3
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_viewer_agent_isolation_e2e.py +1 -1
- execweave-0.8.8/tests/test_viewer_limits.py +115 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_viewer_projection.py +18 -1
- execweave-0.8.8/tests/test_windows_codex_agy_display_repair.py +220 -0
- execweave-0.8.6/.github/workflows/provider-capability-stage-integrity.yml +0 -98
- execweave-0.8.6/RELEASE-PLAN-0.8.0.md +0 -176
- execweave-0.8.6/docs/gemini-hooks.de.md +0 -68
- execweave-0.8.6/docs/gemini-hooks.fr.md +0 -68
- execweave-0.8.6/docs/gemini-hooks.ja.md +0 -68
- execweave-0.8.6/docs/gemini-hooks.ko.md +0 -68
- execweave-0.8.6/docs/gemini-hooks.md +0 -68
- execweave-0.8.6/docs/gemini-hooks.ru.md +0 -68
- execweave-0.8.6/docs/gemini-hooks.zh-CN.md +0 -68
- execweave-0.8.6/docs/gemini-hooks.zh-TW.md +0 -68
- execweave-0.8.6/scripts/emit_gemini_hook_smoke.py +0 -48
- execweave-0.8.6/src/execweave/antigravity_full_fidelity.py +0 -220
- execweave-0.8.6/src/execweave/conversation_preview.py +0 -793
- execweave-0.8.6/src/execweave/gemini_adapter.py +0 -265
- execweave-0.8.6/src/execweave/gemini_full_fidelity.py +0 -317
- execweave-0.8.6/src/execweave/gemini_hook_cli.py +0 -143
- execweave-0.8.6/src/execweave/gemini_hook_contract.py +0 -441
- execweave-0.8.6/src/execweave/gemini_record.py +0 -94
- execweave-0.8.6/src/execweave/viewer_projection.py +0 -90
- execweave-0.8.6/tests/fixtures/hooks/gemini.json +0 -33
- execweave-0.8.6/tests/test_gemini_adapter.py +0 -146
- execweave-0.8.6/tests/test_gemini_full_fidelity.py +0 -185
- execweave-0.8.6/tests/test_gemini_hook_contract.py +0 -226
- execweave-0.8.6/tests/test_gemini_lifecycle.py +0 -75
- execweave-0.8.6/tests/test_gemini_record.py +0 -71
- {execweave-0.8.6 → execweave-0.8.8}/.github/workflows/cleanup-workflow-history.yml +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/.github/workflows/i18n.yml +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/.github/workflows/package-benchmark.yml +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/.github/workflows/package-smoke.yml +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/.github/workflows/publish.yml +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/.github/workflows/scalability.yml +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/.github/workflows/viewer-agent-isolation.yml +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/.github/workflows/wheel-smoke.yml +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/.github/workflows/windows-launcher.yml +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/.gitignore +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/LICENSE +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/benchmarks/phase1_overhead.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/assets/codex.gif +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/benchmarks/README.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/benchmarks/v0.6.0-github-actions.json +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/benchmarks/v0.6.0-github-actions.svg +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/claude-code-hooks.de.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/claude-code-hooks.fr.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/claude-code-hooks.ja.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/claude-code-hooks.ko.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/claude-code-hooks.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/claude-code-hooks.ru.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/claude-code-hooks.zh-CN.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/claude-code-hooks.zh-TW.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/codex-hooks.de.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/codex-hooks.fr.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/codex-hooks.ja.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/codex-hooks.ko.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/codex-hooks.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/codex-hooks.ru.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/codex-hooks.zh-CN.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/codex-hooks.zh-TW.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/cursor-hooks.de.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/cursor-hooks.fr.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/cursor-hooks.ja.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/cursor-hooks.ko.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/cursor-hooks.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/cursor-hooks.ru.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/cursor-hooks.zh-CN.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/cursor-hooks.zh-TW.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/evidence-grades.de.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/evidence-grades.fr.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/evidence-grades.ja.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/evidence-grades.ko.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/evidence-grades.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/evidence-grades.ru.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/evidence-grades.zh-CN.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/evidence-grades.zh-TW.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/inference-gateway.de.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/inference-gateway.fr.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/inference-gateway.ja.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/inference-gateway.ko.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/inference-gateway.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/inference-gateway.ru.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/inference-gateway.zh-CN.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/inference-gateway.zh-TW.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/model-runtime.de.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/model-runtime.fr.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/model-runtime.ja.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/model-runtime.ko.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/model-runtime.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/model-runtime.ru.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/model-runtime.zh-CN.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/model-runtime.zh-TW.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/opencode-plugin.de.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/opencode-plugin.fr.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/opencode-plugin.ja.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/opencode-plugin.ko.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/opencode-plugin.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/opencode-plugin.ru.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/opencode-plugin.zh-CN.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/opencode-plugin.zh-TW.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/phase-2-execution-graph.de.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/phase-2-execution-graph.fr.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/phase-2-execution-graph.ja.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/phase-2-execution-graph.ko.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/phase-2-execution-graph.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/phase-2-execution-graph.ru.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/phase-2-execution-graph.zh-CN.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/phase-2-execution-graph.zh-TW.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/rule-packs.de.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/rule-packs.fr.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/rule-packs.ja.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/rule-packs.ko.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/rule-packs.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/rule-packs.ru.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/rule-packs.zh-CN.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/rule-packs.zh-TW.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/run-integrity.de.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/run-integrity.fr.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/run-integrity.ja.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/run-integrity.ko.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/run-integrity.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/run-integrity.ru.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/run-integrity.zh-CN.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/run-integrity.zh-TW.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/security-analysis.de.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/security-analysis.fr.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/security-analysis.ja.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/security-analysis.ko.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/security-analysis.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/security-analysis.ru.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/security-analysis.zh-CN.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/security-analysis.zh-TW.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/docs/v0.8.3-graph-ergonomics.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/scripts/check_claude_hook.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/scripts/check_claude_record_graph.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/scripts/check_codex_hook.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/scripts/check_conversation_records.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/scripts/check_correlation_graph.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/scripts/check_inference_gateway_cli.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/scripts/check_model_runtime_cli.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/scripts/check_openai_compatible_cli.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/scripts/check_semantic_graph.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/scripts/check_viewer_js.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/scripts/check_wheel_install.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/scripts/check_windows_launchers.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/scripts/emit_claude_hook_smoke.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/scripts/emit_codex_hook_smoke.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/scripts/emit_cursor_hook_smoke.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/scripts/emit_opencode_plugin_smoke.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/scripts/make_semantic_smoke.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/scripts/probe_provider_capability.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/__main__.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/_conversation_records_core.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/agent_topology.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/analysis.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/anthropic.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/anthropic_cli.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/anthropic_full_fidelity.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/antigravity_adapter.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/antigravity_full_fidelity_collaboration_base.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/antigravity_record.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/antigravity_trace_capability.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/auto_specialized.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/backends.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/benchmark.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/claude_delegation.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/claude_full_fidelity.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/claude_hook_contract.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/claude_model_observer.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/claude_record.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/codex_full_fidelity.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/codex_hook_cli.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/codex_hook_lifecycle.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/codex_message_diagnostics.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/codex_message_transport_diagnostics.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/codex_record.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/codex_rollout_structures.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/codex_rollout_trace.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/codex_rollout_trace_base.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/command.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/content_evidence.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/content_store.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/conversation_message_identity.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/correlation.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/cursor_delegation.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/cursor_delegation_base.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/cursor_hook_cli.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/cursor_hook_contract.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/cursor_record.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/entry.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/evidence_availability.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/evidence_grade.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/fidelity.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/filesystem.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/focus.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/graph.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/graph_ops.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/http_proxy.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/http_proxy_cli.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/inference_gateway.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/inference_gateway_cli.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/inference_gateway_full_fidelity.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/inference_identity.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/inference_identity_cli.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/integrity.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/integrity_cli.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/litellm_callback.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/litellm_callback_cli.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/live_view_extra_style.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/live_view_script_b.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/live_view_script_c.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/live_view_script_d.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/live_view_style.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/model_runtime.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/model_runtime_cli.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/model_runtime_full_fidelity.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/openai_compatible.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/openai_compatible_cli.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/openai_compatible_full_fidelity.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/opencode_adapter.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/opencode_event_contract.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/opencode_full_fidelity.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/opencode_hook_cli.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/opencode_plugin_cli.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/opencode_record.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/opencode_task_linkage.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/overhead_benchmark.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/provider_record.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/rule_pack.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/rule_pack_cli.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/scalability_benchmark.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/schema.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/scope.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/semantic.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/sink.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/strace_backend.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/stream_assembly.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/theme.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/top.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/top_cli.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/validate.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/view_cli.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/viewer_content_inspector.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/viewer_live_layout.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/src/execweave/workflow.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/dashboard_readability_fixture.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/fixtures/codex_multi_agent/PROVENANCE.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/fixtures/codex_multi_agent/hook-payloads.json +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/fixtures/codex_multi_agent/rollout-main.jsonl +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/fixtures/hooks/README.md +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/fixtures/hooks/claude.json +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/fixtures/hooks/codex.json +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/fixtures/hooks/cursor.json +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/fixtures/hooks/opencode.json +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/multi_agent_run_fixture.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_agent_message_viewer.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_agent_node_labels.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_agent_said_panel.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_agent_trace_lifecycle.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_analysis.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_anthropic.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_antigravity_history_replay.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_antigravity_lifecycle.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_antigravity_linkage_projection.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_antigravity_multi_conversation_isolation.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_antigravity_root_child_history_v2.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_auto_specialized.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_backends.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_claude_delegation.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_claude_full_fidelity.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_claude_hook_contract.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_claude_hook_metadata.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_claude_hook_viewer.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_claude_model_observer.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_claude_record.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_codex_archive_full_fidelity.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_codex_conversation_isolation.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_codex_full_fidelity.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_codex_hook_lifecycle.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_codex_hook_partial_capture.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_codex_message_diagnostics.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_codex_message_transport_diagnostics.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_codex_plain_routed_agent_message.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_codex_record.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_codex_reducer_command.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_codex_rollout_structures.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_codex_rollout_trace.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_codex_routing_native_identity.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_condense.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_conversation_agent_focus.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_conversation_message_observation_dedupe.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_conversation_root_authority.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_correlation.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_correlation_canonical_path.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_correlation_checker.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_correlation_process_exe.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_cursor_delegation.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_cursor_full_fidelity.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_cursor_hook_contract.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_cursor_hook_fail_open.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_cursor_record.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_cursor_task_linkage.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_dashboard_round_fold_state_e2e.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_delegation_viewer.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_evidence_grade.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_execution_viewer.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_fidelity.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_filesystem_resilience.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_focus.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_fold_budget_setting.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_full_fidelity.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_graph.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_graph_clear_focus_e2e.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_graph_edge_routing_e2e.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_graph_lane_separation_e2e.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_graph_node_sizing_e2e.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_graph_ops.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_http_proxy.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_inference_endpoint_identity.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_inference_gateway.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_inference_gateway_full_fidelity.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_inference_identity.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_integrity.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_litellm_callback.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_live_auth.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_live_dashboard.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_live_dashboard_js.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_live_delta.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_live_logs_export.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_live_theme.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_lmstudio_auto_specialized.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_local_runtime_live_capture.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_model_runtime.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_model_runtime_full_fidelity.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_openai_compatible.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_opencode_adapter.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_opencode_event_contract.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_opencode_event_lifecycle.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_opencode_full_fidelity.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_opencode_identity_unification.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_opencode_plugin.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_opencode_record.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_opencode_task_session_linkage.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_overhead_benchmark.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_pr25_premerge_hardening_contract.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_provider_conversation_history_integrity.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_release_stage_integrity_version_guard.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_rule_pack.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_schema.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_scope.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_semantic.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_shared_injected_context_scope.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_strace_backend.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_stream_assembly.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_threat_model.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_tool_traffic_e2e.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_top_detached.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_v063_features.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_v064_live_evidence.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_v079_review_e2e.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_v079_review_regressions.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_v083_release_gate_p2.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_validate.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_version.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_viewer.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_viewer_child_authority.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_viewer_content_inspector.py +0 -0
- {execweave-0.8.6 → execweave-0.8.8}/tests/test_workflow.py +0 -0
|
@@ -156,24 +156,6 @@ jobs:
|
|
|
156
156
|
--expect-agent /root
|
|
157
157
|
--expect-root-text "CI CLAUDE PROMPT"
|
|
158
158
|
--expect-root-text "CI CLAUDE FINAL ANSWER"
|
|
159
|
-
- name: Gemini run-bound semantic and correlation smoke
|
|
160
|
-
run: execweave-gemini-record --backend auto --no-files --no-network --output-dir gemini-record-smoke -- python scripts/emit_gemini_hook_smoke.py
|
|
161
|
-
- name: Validate Gemini runtime stream
|
|
162
|
-
run: execweave validate gemini-record-smoke/events.jsonl
|
|
163
|
-
- name: Validate Gemini merged stream
|
|
164
|
-
run: execweave validate gemini-record-smoke/events.semantic.jsonl
|
|
165
|
-
- name: Validate Gemini correlated stream
|
|
166
|
-
run: execweave validate gemini-record-smoke/events.correlated.jsonl
|
|
167
|
-
- name: Verify Gemini conservative correlation edge
|
|
168
|
-
run: python scripts/check_correlation_graph.py gemini-record-smoke/graph.correlated.json
|
|
169
|
-
- name: Check Gemini correlated viewer JavaScript syntax
|
|
170
|
-
run: python scripts/check_viewer_js.py gemini-record-smoke/viewer.correlated.html --output gemini-record-smoke/viewer.correlated.js
|
|
171
|
-
- name: Verify Gemini materialized conversations
|
|
172
|
-
run: >
|
|
173
|
-
python scripts/check_conversation_records.py gemini-record-smoke
|
|
174
|
-
--expect-agent /root
|
|
175
|
-
--expect-root-text "CI GEMINI PROMPT"
|
|
176
|
-
--expect-root-text "CI GEMINI FINAL ANSWER"
|
|
177
159
|
- name: Cursor run-bound semantic and correlation smoke
|
|
178
160
|
run: execweave-cursor-record --backend auto --no-files --no-network --output-dir cursor-record-smoke -- python scripts/emit_cursor_hook_smoke.py
|
|
179
161
|
- name: Validate Cursor runtime stream
|
|
@@ -0,0 +1,124 @@
|
|
|
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
|
+
shell: bash
|
|
41
|
+
env:
|
|
42
|
+
BASELINE_REF: "${{ github.event.pull_request.base.sha || inputs.baseline_ref }}"
|
|
43
|
+
HEAD_REF: "${{ github.head_ref }}"
|
|
44
|
+
run: |
|
|
45
|
+
args=(--baseline-ref "$BASELINE_REF")
|
|
46
|
+
release_metadata_changed=""
|
|
47
|
+
if git diff --name-only "$BASELINE_REF...HEAD" \
|
|
48
|
+
| grep -qx 'tests/test_v069_dashboard_release.py'; then
|
|
49
|
+
release_metadata_changed=yes
|
|
50
|
+
fi
|
|
51
|
+
if [[ "$HEAD_REF" == release/* && -n "$release_metadata_changed" ]]; then
|
|
52
|
+
args+=(--allow-test-change "tests/test_v069_dashboard_release.py=release metadata assertions may advance only on a release/* pull request; the historical test name remains stable because the node-ID floor refuses renames")
|
|
53
|
+
fi
|
|
54
|
+
conversation_focus_changed=""
|
|
55
|
+
if git diff --name-only "$BASELINE_REF...HEAD" \
|
|
56
|
+
| grep -qx 'tests/test_conversation_agent_focus.py'; then
|
|
57
|
+
conversation_focus_changed=yes
|
|
58
|
+
fi
|
|
59
|
+
if [[ "$HEAD_REF" == "release/0.8.3-graph-ergonomics" && -n "$conversation_focus_changed" ]]; then
|
|
60
|
+
args+=(--allow-test-change "tests/test_conversation_agent_focus.py=PR #25 only: surfacing tool traffic appends one more card inside the same render pass, so the source assertion that pinned the final line names the new line. The test ID and subject are unchanged")
|
|
61
|
+
fi
|
|
62
|
+
conversation_identity_changed=""
|
|
63
|
+
if git diff --name-only "$BASELINE_REF...HEAD" \
|
|
64
|
+
| grep -qx 'tests/test_conversation_identity_merge.py'; then
|
|
65
|
+
conversation_identity_changed=yes
|
|
66
|
+
fi
|
|
67
|
+
if [[ -n "$conversation_identity_changed" ]] \
|
|
68
|
+
&& { [[ "$HEAD_REF" == "fix/0.8.3-conversation-identity" ]] \
|
|
69
|
+
|| [[ "$HEAD_REF" == "release/0.8.3-graph-ergonomics" ]]; }; then
|
|
70
|
+
args+=(--allow-test-change "tests/test_conversation_identity_merge.py=AUD-001 only: the historical root-collision assertion is no longer correct after derived presentation thread ids stop acting as cross-execution identity; the original test node ID is retained and the assertion now requires isolation")
|
|
71
|
+
fi
|
|
72
|
+
model_runtime_identity_changed=""
|
|
73
|
+
if git diff --name-only "$BASELINE_REF...HEAD" \
|
|
74
|
+
| grep -qx 'tests/test_model_runtime.py'; then
|
|
75
|
+
model_runtime_identity_changed=yes
|
|
76
|
+
fi
|
|
77
|
+
if [[ "$HEAD_REF" == "fix/0.8.3-inference-endpoint-identity" \
|
|
78
|
+
&& -n "$model_runtime_identity_changed" ]]; then
|
|
79
|
+
args+=(--allow-test-change "tests/test_model_runtime.py=AUD-002 only: the historical llama.cpp request ID assertion now includes the sanitized endpoint scope; the test node ID and runtime privacy contract are unchanged")
|
|
80
|
+
fi
|
|
81
|
+
if [[ "$HEAD_REF" == "fix/provider-isolation" ]]; then
|
|
82
|
+
while IFS= read -r path; do
|
|
83
|
+
case "$path" in
|
|
84
|
+
tests/test_viewer_projection.py)
|
|
85
|
+
args+=(--allow-test-change "tests/test_viewer_projection.py=non-loopback endpoints now fold into viewer-cluster:external; loopback stays separate. Test node ID is unchanged")
|
|
86
|
+
;;
|
|
87
|
+
tests/test_live.py)
|
|
88
|
+
args+=(--allow-test-change "tests/test_live.py=process-tree layout spreads a small depth Map into Math.max; coordinate arrays still must not be spread")
|
|
89
|
+
;;
|
|
90
|
+
tests/test_dashboard_simplification.py)
|
|
91
|
+
args+=(--allow-test-change "tests/test_dashboard_simplification.py=projected node set now contains External instead of the raw outbound IP")
|
|
92
|
+
;;
|
|
93
|
+
tests/test_codex_adapter.py)
|
|
94
|
+
args+=(--allow-test-change "tests/test_codex_adapter.py=apply_patch now declares explicit file targets so the graph preserves the tool-call-to-file relationship; existing test node IDs remain unchanged")
|
|
95
|
+
;;
|
|
96
|
+
tests/test_dashboard_ux_and_hook_projection.py)
|
|
97
|
+
args+=(--allow-test-change "tests/test_dashboard_ux_and_hook_projection.py=live graph projection folds the public endpoint; hook process remains hidden")
|
|
98
|
+
;;
|
|
99
|
+
tests/test_viewer_agent_isolation_e2e.py)
|
|
100
|
+
args+=(--allow-test-change "tests/test_viewer_agent_isolation_e2e.py=non-agent click target is External after IP collapse")
|
|
101
|
+
;;
|
|
102
|
+
tests/test_dashboard_readability_e2e.py)
|
|
103
|
+
args+=(--allow-test-change "tests/test_dashboard_readability_e2e.py=Dagre reflows existing nodes when a live node is added; identity of those nodes is unchanged")
|
|
104
|
+
;;
|
|
105
|
+
tests/test_pr25_premerge_hardening_e2e.py)
|
|
106
|
+
args+=(--allow-test-change "tests/test_pr25_premerge_hardening_e2e.py=Dagre LR placement replaces the old barycentre Y order; files stay to the right of owners and do not overlap")
|
|
107
|
+
;;
|
|
108
|
+
tests/test_per_agent_conversation_default.py)
|
|
109
|
+
args+=(--allow-test-change "tests/test_per_agent_conversation_default.py=isTask recipient/sender checks moved from viewer_agent_panel.py into viewer_agent_panel_default.py; historical test names are unchanged")
|
|
110
|
+
;;
|
|
111
|
+
esac
|
|
112
|
+
done < <(git diff --name-only "$BASELINE_REF...HEAD" -- tests)
|
|
113
|
+
fi
|
|
114
|
+
if [[ "$HEAD_REF" == "audit/remaining-providers-v0.8.7" ]]; then
|
|
115
|
+
args+=(--allow-retired-provider "gemini=Gemini integration was retired and replaced by the AGY/Antigravity provider; only Gemini-owned test IDs and files may disappear")
|
|
116
|
+
while IFS= read -r path; do
|
|
117
|
+
case "$path" in
|
|
118
|
+
tests/fixtures/hooks/manifest.json|tests/test_agent_bootstrap.py|tests/test_agent_topology_evidence.py|tests/test_agent_trace_viewer_visibility.py|tests/test_antigravity_agent_collaboration.py|tests/test_antigravity_child_transcript_tools.py|tests/test_antigravity_cursor_launch.py|tests/test_antigravity_identity_topology.py|tests/test_antigravity_invocation_archive.py|tests/test_antigravity_official_contract.py|tests/test_antigravity_subagent_transcript_linkage.py|tests/test_antigravity_trace_capability_cli.py|tests/test_claude_adapter.py|tests/test_codex_real_multi_agent_conversation.py|tests/test_collector.py|tests/test_command.py|tests/test_conversation_access.py|tests/test_conversation_agent_isolation.py|tests/test_conversation_identity_merge.py|tests/test_conversation_provider_parity.py|tests/test_cross_provider_agent_trace.py|tests/test_cursor_adapter.py|tests/test_dashboard_information_architecture.py|tests/test_external_endpoints_all_providers.py|tests/test_hook_fixture_corpus.py|tests/test_provider_capability.py|tests/test_provider_conversation_evidence.py|tests/test_provider_lifecycle.py|tests/test_v064_live_auto_integrations.py)
|
|
119
|
+
args+=(--allow-test-change "$path=Gemini provider retirement and provider-neutral AGY/dashboard contract updates are intentional on this branch; existing test node IDs remain stable where the provider is still supported")
|
|
120
|
+
;;
|
|
121
|
+
esac
|
|
122
|
+
done < <(git diff --name-only "$BASELINE_REF...HEAD" -- tests)
|
|
123
|
+
fi
|
|
124
|
+
python scripts/check_release_stage_integrity.py "${args[@]}"
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
name: Provider Dashboard Contract
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
pull_request:
|
|
5
|
+
push:
|
|
6
|
+
branches: [main]
|
|
7
|
+
workflow_dispatch:
|
|
8
|
+
|
|
9
|
+
permissions:
|
|
10
|
+
contents: read
|
|
11
|
+
|
|
12
|
+
concurrency:
|
|
13
|
+
group: provider-dashboard-contract-${{ github.ref }}
|
|
14
|
+
cancel-in-progress: ${{ github.event_name != 'workflow_dispatch' }}
|
|
15
|
+
|
|
16
|
+
jobs:
|
|
17
|
+
provider:
|
|
18
|
+
name: ${{ matrix.provider }} history/dashboard/raw contract
|
|
19
|
+
runs-on: ubuntu-latest
|
|
20
|
+
timeout-minutes: 20
|
|
21
|
+
strategy:
|
|
22
|
+
fail-fast: false
|
|
23
|
+
matrix:
|
|
24
|
+
include:
|
|
25
|
+
- provider: claude
|
|
26
|
+
tests: >-
|
|
27
|
+
tests/test_claude_child_transcript_tools.py
|
|
28
|
+
tests/test_claude_full_fidelity.py
|
|
29
|
+
tests/test_claude_hook_viewer.py
|
|
30
|
+
tests/test_provider_conversation_evidence.py
|
|
31
|
+
- provider: codex
|
|
32
|
+
tests: >-
|
|
33
|
+
tests/test_codex_archive_full_fidelity.py
|
|
34
|
+
tests/test_codex_real_multi_agent_conversation.py
|
|
35
|
+
tests/test_codex_conversation_isolation.py
|
|
36
|
+
tests/test_codex_child_panel_policy.py
|
|
37
|
+
tests/test_codex_rollout_trace.py
|
|
38
|
+
tests/test_provider_conversation_evidence.py
|
|
39
|
+
- provider: agy
|
|
40
|
+
tests: >-
|
|
41
|
+
tests/test_antigravity_root_child_history_v2.py
|
|
42
|
+
tests/test_antigravity_invocation_archive.py
|
|
43
|
+
tests/test_antigravity_child_transcript_tools.py
|
|
44
|
+
tests/test_antigravity_role_path_fallback.py
|
|
45
|
+
tests/test_agy_windows_wire_acceptance.py
|
|
46
|
+
tests/test_provider_conversation_evidence.py
|
|
47
|
+
tests/test_provider_conversation_history_integrity.py
|
|
48
|
+
- provider: cursor
|
|
49
|
+
tests: >-
|
|
50
|
+
tests/test_cursor_full_fidelity.py
|
|
51
|
+
tests/test_cursor_task_linkage.py
|
|
52
|
+
tests/test_cursor_delegation.py
|
|
53
|
+
tests/test_provider_conversation_evidence.py
|
|
54
|
+
- provider: opencode
|
|
55
|
+
tests: >-
|
|
56
|
+
tests/test_opencode_full_fidelity.py
|
|
57
|
+
tests/test_opencode_task_session_linkage.py
|
|
58
|
+
tests/test_opencode_event_lifecycle.py
|
|
59
|
+
tests/test_opencode_identity_unification.py
|
|
60
|
+
tests/test_provider_conversation_evidence.py
|
|
61
|
+
- provider: ollama
|
|
62
|
+
tests: >-
|
|
63
|
+
tests/test_model_runtime.py
|
|
64
|
+
tests/test_model_runtime_full_fidelity.py
|
|
65
|
+
tests/test_provider_conversation_history_integrity.py
|
|
66
|
+
- provider: llamacpp
|
|
67
|
+
tests: >-
|
|
68
|
+
tests/test_model_runtime.py
|
|
69
|
+
tests/test_model_runtime_full_fidelity.py
|
|
70
|
+
tests/test_conversation_provider_parity.py
|
|
71
|
+
- provider: vllm
|
|
72
|
+
tests: >-
|
|
73
|
+
tests/test_model_runtime.py
|
|
74
|
+
tests/test_model_runtime_full_fidelity.py
|
|
75
|
+
tests/test_conversation_provider_parity.py
|
|
76
|
+
- provider: lmstudio
|
|
77
|
+
tests: >-
|
|
78
|
+
tests/test_model_runtime.py
|
|
79
|
+
tests/test_model_runtime_full_fidelity.py
|
|
80
|
+
tests/test_conversation_provider_parity.py
|
|
81
|
+
- provider: anthropic
|
|
82
|
+
tests: >-
|
|
83
|
+
tests/test_anthropic.py
|
|
84
|
+
tests/test_inference_gateway_full_fidelity.py
|
|
85
|
+
tests/test_conversation_provider_parity.py
|
|
86
|
+
- provider: openrouter
|
|
87
|
+
tests: >-
|
|
88
|
+
tests/test_inference_gateway_full_fidelity.py
|
|
89
|
+
tests/test_conversation_provider_parity.py
|
|
90
|
+
- provider: litellm
|
|
91
|
+
tests: >-
|
|
92
|
+
tests/test_inference_gateway_full_fidelity.py
|
|
93
|
+
tests/test_conversation_provider_parity.py
|
|
94
|
+
- provider: openai-compatible
|
|
95
|
+
tests: >-
|
|
96
|
+
tests/test_model_runtime.py
|
|
97
|
+
tests/test_model_runtime_full_fidelity.py
|
|
98
|
+
tests/test_conversation_provider_parity.py
|
|
99
|
+
|
|
100
|
+
steps:
|
|
101
|
+
- uses: actions/checkout@v4
|
|
102
|
+
- uses: actions/setup-python@v5
|
|
103
|
+
with:
|
|
104
|
+
python-version: "3.12"
|
|
105
|
+
cache: pip
|
|
106
|
+
- name: Install test dependencies
|
|
107
|
+
run: python -m pip install -e ".[dev]"
|
|
108
|
+
- name: Run provider history, dashboard, and raw-event contract
|
|
109
|
+
env:
|
|
110
|
+
EXECWEAVE_PROVIDER_MATRIX: ${{ matrix.provider }}
|
|
111
|
+
run: >-
|
|
112
|
+
python -m pytest -q
|
|
113
|
+
tests/test_provider_dashboard_contract.py
|
|
114
|
+
${{ matrix.tests }}
|
|
115
|
+
- name: Check dashboard JavaScript syntax
|
|
116
|
+
run: python -m pytest -q tests/test_live_dashboard_js.py tests/test_live_dashboard.py
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: execweave
|
|
3
|
-
Version: 0.8.
|
|
3
|
+
Version: 0.8.8
|
|
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
|
|
@@ -51,6 +51,8 @@ Requires-Dist: build>=1.2; extra == 'release'
|
|
|
51
51
|
Requires-Dist: twine>=6.0; extra == 'release'
|
|
52
52
|
Description-Content-Type: text/markdown
|
|
53
53
|
|
|
54
|
+
> Codex + AGY and the remaining supported providers now have aligned conversation history, dashboard graph, raw-event, and file-target coverage.
|
|
55
|
+
|
|
54
56
|
# ExecWeave
|
|
55
57
|
|
|
56
58
|
<!-- i18n-nav:start -->
|
|
@@ -83,7 +85,7 @@ ExecWeave is a source-available, local-first observability project that turns AI
|
|
|
83
85
|
<img src="docs/assets/codex.gif" alt="ExecWeave animated live demo" width="100%">
|
|
84
86
|
</p>
|
|
85
87
|
|
|
86
|
-
This README documents **v0.8.
|
|
88
|
+
This README documents **v0.8.8**.
|
|
87
89
|
|
|
88
90
|
## Why ExecWeave
|
|
89
91
|
|
|
@@ -179,7 +181,7 @@ These are presentation-layer changes. Raw graph evidence is unchanged, and Live,
|
|
|
179
181
|
|
|
180
182
|
Stable provider identifiers such as Cursor `tool_use_id`, Codex rollout thread identity, or OpenCode `sessionID + callID` prove logical provider identity; they are not OS PIDs. Cross-agent content is shown only when the provider exposes an explicit route, delegation, or result. Gateways or local runtimes that expose only root request/response traffic remain root-only; ExecWeave does not fabricate subagents or hidden routing.
|
|
181
183
|
|
|
182
|
-
OpenRouter `exchange` is caller-supplied request+response evidence, not transparent wire interception. LiteLLM Proxy remains a narrower metadata-oriented integration in the current baseline.
|
|
184
|
+
OpenRouter `exchange` is caller-supplied request+response evidence, not transparent wire interception. LiteLLM Proxy remains a narrower metadata-oriented integration in the current baseline. Google CLI usage should use Antigravity (`agy`).
|
|
183
185
|
|
|
184
186
|
## Evidence model
|
|
185
187
|
|
|
@@ -295,6 +297,10 @@ Derived correlation never rewrites raw runtime or provider sidecar evidence.
|
|
|
295
297
|
|
|
296
298
|
## Limits and privacy
|
|
297
299
|
|
|
300
|
+
The default dashboard safety budget is 1,500 nodes, 4,000 edges, and approximately 5,000 SVG elements. Override it for a rendered run with `--viewer-max-nodes N`, `--viewer-max-edges N`, and `--viewer-max-dom-elements N` on `view`, `record`, or `live`. The equivalent environment variables are `EXECWEAVE_VIEWER_MAX_NODES`, `EXECWEAVE_VIEWER_MAX_EDGES`, and `EXECWEAVE_VIEWER_MAX_DOM_ELEMENTS`.
|
|
301
|
+
|
|
302
|
+
Every pull request also runs the Provider Dashboard Contract matrix. It checks provider-neutral root history, provider-reported subagent history where available, dashboard graph projection, External endpoint aggregation, file/tool edges such as `.md` targets, and raw process/filesystem/network events. The matrix covers Claude, Codex, AGY (Antigravity), Cursor, OpenCode, Ollama, llama.cpp, vLLM, LM Studio, and the supported gateway providers. Root-only model runtimes and gateways are tested as root-only by design.
|
|
303
|
+
|
|
298
304
|
- The portable collector runs on Linux, macOS, and Windows. Portable filesystem observation is session-correlated rather than process-causal, and polling can miss sufficiently short-lived activity.
|
|
299
305
|
- Linux also has a syscall-backed `strace` reference backend with stronger process-attributed syscall evidence for supported executions.
|
|
300
306
|
- Native Linux eBPF, Windows ETW, and macOS Endpoint Security collectors remain planned work, not current claims.
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
> Codex + AGY sowie die übrigen unterstützten Provider sind nun bei conversation history, dashboard graph, raw events und file targets angeglichen.
|
|
2
|
+
|
|
1
3
|
# ExecWeave
|
|
2
4
|
|
|
3
5
|
<!-- i18n-nav:start -->
|
|
@@ -30,7 +32,7 @@ ExecWeave ist ein source-available, local-first Observability-Projekt, das Aktiv
|
|
|
30
32
|
<img src="docs/assets/codex.gif" alt="ExecWeave animated live demo" width="100%">
|
|
31
33
|
</p>
|
|
32
34
|
|
|
33
|
-
Dieses README dokumentiert **v0.8.
|
|
35
|
+
Dieses README dokumentiert **v0.8.8**.
|
|
34
36
|
|
|
35
37
|
## Warum ExecWeave
|
|
36
38
|
|
|
@@ -126,7 +128,7 @@ Diese Änderungen betreffen nur die presentation layer. Raw graph evidence bleib
|
|
|
126
128
|
|
|
127
129
|
Stable provider identifiers wie Cursor `tool_use_id`, Codex rollout thread identity oder OpenCode `sessionID + callID` belegen logical provider identity; sie sind keine OS PIDs. Cross-agent content wird nur gezeigt, wenn der Provider eine explizite route, delegation oder result offenlegt. Gateways oder local runtimes, die nur root request/response traffic liefern, bleiben root-only; ExecWeave erfindet keine subagents oder hidden routing.
|
|
128
130
|
|
|
129
|
-
OpenRouter `exchange` ist caller-supplied request+response evidence und keine transparent wire interception. LiteLLM Proxy bleibt im aktuellen Baseline eine engere metadata-oriented integration.
|
|
131
|
+
OpenRouter `exchange` ist caller-supplied request+response evidence und keine transparent wire interception. LiteLLM Proxy bleibt im aktuellen Baseline eine engere metadata-oriented integration. Neue Google-CLI-Nutzung sollte jedoch Antigravity (`agy`) verwenden.
|
|
130
132
|
|
|
131
133
|
## Evidence model
|
|
132
134
|
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
> Codex + AGY et les autres providers pris en charge disposent désormais d’une couverture alignée pour l’historique des conversations, le dashboard graph, les raw events et les file targets.
|
|
2
|
+
|
|
1
3
|
# ExecWeave
|
|
2
4
|
|
|
3
5
|
<!-- i18n-nav:start -->
|
|
@@ -30,7 +32,7 @@ ExecWeave est un projet d’observabilité source-available et local-first qui t
|
|
|
30
32
|
<img src="docs/assets/codex.gif" alt="ExecWeave animated live demo" width="100%">
|
|
31
33
|
</p>
|
|
32
34
|
|
|
33
|
-
Ce README décrit **v0.8.
|
|
35
|
+
Ce README décrit **v0.8.8**.
|
|
34
36
|
|
|
35
37
|
## Pourquoi ExecWeave
|
|
36
38
|
|
|
@@ -126,7 +128,7 @@ Ces changements concernent uniquement la presentation layer. La raw graph eviden
|
|
|
126
128
|
|
|
127
129
|
Des stable provider identifiers comme Cursor `tool_use_id`, l’identité de rollout thread Codex ou OpenCode `sessionID + callID` prouvent une logical provider identity, pas un OS PID. Le cross-agent content n’est montré que lorsque le provider expose une route, delegation ou result explicite. Si un gateway / local runtime ne fournit que du root request/response traffic, ExecWeave reste root-only et n’invente ni subagent ni hidden routing.
|
|
128
130
|
|
|
129
|
-
OpenRouter `exchange` est une caller-supplied request+response evidence, pas une transparent wire interception. LiteLLM Proxy reste une integration metadata-oriented plus étroite dans le baseline actuel. Les
|
|
131
|
+
OpenRouter `exchange` est une caller-supplied request+response evidence, pas une transparent wire interception. LiteLLM Proxy reste une integration metadata-oriented plus étroite dans le baseline actuel. Les nouveaux usages Google CLI doivent utiliser Antigravity (`agy`).
|
|
130
132
|
|
|
131
133
|
## Evidence model
|
|
132
134
|
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
> Codex + AGY と残りの対応 provider について、conversation history、dashboard graph、raw event、file target の整合を完了しました。
|
|
2
|
+
|
|
1
3
|
# ExecWeave
|
|
2
4
|
|
|
3
5
|
<!-- i18n-nav:start -->
|
|
@@ -30,7 +32,7 @@ ExecWeave は source-available / local-first の observability プロジェク
|
|
|
30
32
|
<img src="docs/assets/codex.gif" alt="ExecWeave animated live demo" width="100%">
|
|
31
33
|
</p>
|
|
32
34
|
|
|
33
|
-
この README は **v0.8.
|
|
35
|
+
この README は **v0.8.8** を説明します。
|
|
34
36
|
|
|
35
37
|
## ExecWeave を使う理由
|
|
36
38
|
|
|
@@ -126,7 +128,7 @@ v0.8.3 は raw evidence を変えずに、dense / multi-round run の読みや
|
|
|
126
128
|
|
|
127
129
|
Cursor `tool_use_id`、Codex rollout thread identity、OpenCode `sessionID + callID` のような stable provider identifier は logical provider identity を示しますが、OS PID ではありません。Cross-agent content は provider が明示的な route、delegation、result を公開した場合にのみ表示されます。Gateway / local runtime が root request/response しか公開しない場合は root-only のままで、ExecWeave が subagent や hidden routing を作ることはありません。
|
|
128
130
|
|
|
129
|
-
OpenRouter `exchange` は caller-supplied request+response evidence であり、transparent wire interception ではありません。LiteLLM Proxy は現在の baseline ではより限定的な metadata-oriented integration
|
|
131
|
+
OpenRouter `exchange` は caller-supplied request+response evidence であり、transparent wire interception ではありません。LiteLLM Proxy は現在の baseline ではより限定的な metadata-oriented integration です。新しい Google CLI 利用では Antigravity (`agy`) を使用してください。
|
|
130
132
|
|
|
131
133
|
## Evidence model
|
|
132
134
|
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
> Codex + AGY 및 나머지 지원 provider의 conversation history, dashboard graph, raw event, file target 정렬이 완료되었습니다.
|
|
2
|
+
|
|
1
3
|
# ExecWeave
|
|
2
4
|
|
|
3
5
|
<!-- i18n-nav:start -->
|
|
@@ -30,7 +32,7 @@ ExecWeave는 source-available, local-first observability 프로젝트입니다.
|
|
|
30
32
|
<img src="docs/assets/codex.gif" alt="ExecWeave animated live demo" width="100%">
|
|
31
33
|
</p>
|
|
32
34
|
|
|
33
|
-
이 README는 **v0.8.
|
|
35
|
+
이 README는 **v0.8.8**을 설명합니다.
|
|
34
36
|
|
|
35
37
|
## 왜 ExecWeave인가
|
|
36
38
|
|
|
@@ -126,7 +128,7 @@ v0.8.3은 raw evidence를 바꾸지 않으면서 dense / multi-round run의 가
|
|
|
126
128
|
|
|
127
129
|
Cursor `tool_use_id`, Codex rollout thread identity, OpenCode `sessionID + callID` 같은 stable provider identifier는 logical provider identity를 증명하지만 OS PID는 아닙니다. Cross-agent content는 provider가 명시적인 route, delegation, result를 노출할 때만 표시됩니다. Gateway / local runtime이 root request/response만 노출하면 root-only로 유지되며 ExecWeave가 subagent나 hidden routing을 만들어내지 않습니다.
|
|
128
130
|
|
|
129
|
-
OpenRouter `exchange`는 caller-supplied request+response evidence이며 transparent wire interception이 아닙니다. LiteLLM Proxy는 현재 baseline에서 더 좁은 metadata-oriented integration입니다.
|
|
131
|
+
OpenRouter `exchange`는 caller-supplied request+response evidence이며 transparent wire interception이 아닙니다. LiteLLM Proxy는 현재 baseline에서 더 좁은 metadata-oriented integration입니다. 새로운 Google CLI 사용에는 Antigravity (`agy`)를 사용해야 합니다.
|
|
130
132
|
|
|
131
133
|
## Evidence model
|
|
132
134
|
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
> Codex + AGY and the remaining supported providers now have aligned conversation history, dashboard graph, raw-event, and file-target coverage.
|
|
2
|
+
|
|
1
3
|
# ExecWeave
|
|
2
4
|
|
|
3
5
|
<!-- i18n-nav:start -->
|
|
@@ -30,7 +32,7 @@ ExecWeave is a source-available, local-first observability project that turns AI
|
|
|
30
32
|
<img src="docs/assets/codex.gif" alt="ExecWeave animated live demo" width="100%">
|
|
31
33
|
</p>
|
|
32
34
|
|
|
33
|
-
This README documents **v0.8.
|
|
35
|
+
This README documents **v0.8.8**.
|
|
34
36
|
|
|
35
37
|
## Why ExecWeave
|
|
36
38
|
|
|
@@ -126,7 +128,7 @@ These are presentation-layer changes. Raw graph evidence is unchanged, and Live,
|
|
|
126
128
|
|
|
127
129
|
Stable provider identifiers such as Cursor `tool_use_id`, Codex rollout thread identity, or OpenCode `sessionID + callID` prove logical provider identity; they are not OS PIDs. Cross-agent content is shown only when the provider exposes an explicit route, delegation, or result. Gateways or local runtimes that expose only root request/response traffic remain root-only; ExecWeave does not fabricate subagents or hidden routing.
|
|
128
130
|
|
|
129
|
-
OpenRouter `exchange` is caller-supplied request+response evidence, not transparent wire interception. LiteLLM Proxy remains a narrower metadata-oriented integration in the current baseline.
|
|
131
|
+
OpenRouter `exchange` is caller-supplied request+response evidence, not transparent wire interception. LiteLLM Proxy remains a narrower metadata-oriented integration in the current baseline. Google CLI usage should use Antigravity (`agy`).
|
|
130
132
|
|
|
131
133
|
## Evidence model
|
|
132
134
|
|
|
@@ -242,6 +244,10 @@ Derived correlation never rewrites raw runtime or provider sidecar evidence.
|
|
|
242
244
|
|
|
243
245
|
## Limits and privacy
|
|
244
246
|
|
|
247
|
+
The default dashboard safety budget is 1,500 nodes, 4,000 edges, and approximately 5,000 SVG elements. Override it for a rendered run with `--viewer-max-nodes N`, `--viewer-max-edges N`, and `--viewer-max-dom-elements N` on `view`, `record`, or `live`. The equivalent environment variables are `EXECWEAVE_VIEWER_MAX_NODES`, `EXECWEAVE_VIEWER_MAX_EDGES`, and `EXECWEAVE_VIEWER_MAX_DOM_ELEMENTS`.
|
|
248
|
+
|
|
249
|
+
Every pull request also runs the Provider Dashboard Contract matrix. It checks provider-neutral root history, provider-reported subagent history where available, dashboard graph projection, External endpoint aggregation, file/tool edges such as `.md` targets, and raw process/filesystem/network events. The matrix covers Claude, Codex, AGY (Antigravity), Cursor, OpenCode, Ollama, llama.cpp, vLLM, LM Studio, and the supported gateway providers. Root-only model runtimes and gateways are tested as root-only by design.
|
|
250
|
+
|
|
245
251
|
- The portable collector runs on Linux, macOS, and Windows. Portable filesystem observation is session-correlated rather than process-causal, and polling can miss sufficiently short-lived activity.
|
|
246
252
|
- Linux also has a syscall-backed `strace` reference backend with stronger process-attributed syscall evidence for supported executions.
|
|
247
253
|
- Native Linux eBPF, Windows ETW, and macOS Endpoint Security collectors remain planned work, not current claims.
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
> Codex + AGY и остальные поддерживаемые провайдеры теперь согласованы по conversation history, dashboard graph, raw events и file targets.
|
|
2
|
+
|
|
1
3
|
# ExecWeave
|
|
2
4
|
|
|
3
5
|
<!-- i18n-nav:start -->
|
|
@@ -30,7 +32,7 @@ ExecWeave — source-available, local-first проект наблюдаемос
|
|
|
30
32
|
<img src="docs/assets/codex.gif" alt="ExecWeave animated live demo" width="100%">
|
|
31
33
|
</p>
|
|
32
34
|
|
|
33
|
-
Этот README описывает **v0.8.
|
|
35
|
+
Этот README описывает **v0.8.8**.
|
|
34
36
|
|
|
35
37
|
## Почему ExecWeave
|
|
36
38
|
|
|
@@ -126,7 +128,7 @@ v0.8.3 улучшает читаемость плотных и multi-round runs
|
|
|
126
128
|
|
|
127
129
|
Stable provider identifiers вроде Cursor `tool_use_id`, Codex rollout thread identity или OpenCode `sessionID + callID` доказывают logical provider identity, но не являются OS PID. Cross-agent content показывается только тогда, когда provider раскрывает явную route, delegation или result. Gateways и local runtimes, которые предоставляют только root request/response traffic, остаются root-only; ExecWeave не выдумывает subagents или hidden routing.
|
|
128
130
|
|
|
129
|
-
OpenRouter `exchange` — caller-supplied request+response evidence, а не transparent wire interception. LiteLLM Proxy остаётся более узкой metadata-oriented integration в текущем baseline.
|
|
131
|
+
OpenRouter `exchange` — caller-supplied request+response evidence, а не transparent wire interception. LiteLLM Proxy остаётся более узкой metadata-oriented integration в текущем baseline. Для новых сценариев Google CLI следует использовать Antigravity (`agy`).
|
|
130
132
|
|
|
131
133
|
## Evidence model
|
|
132
134
|
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
> Codex + AGY 与其余受支持 provider 现已完成 conversation history、dashboard graph、raw event 与 file target 对齐。
|
|
2
|
+
|
|
1
3
|
# ExecWeave
|
|
2
4
|
|
|
3
5
|
<!-- i18n-nav:start -->
|
|
@@ -30,7 +32,7 @@ ExecWeave 是一个 source-available、local-first 的可观测性项目,把 A
|
|
|
30
32
|
<img src="docs/assets/codex.gif" alt="ExecWeave animated live demo" width="100%">
|
|
31
33
|
</p>
|
|
32
34
|
|
|
33
|
-
本 README 对应 **v0.8.
|
|
35
|
+
本 README 对应 **v0.8.8**。
|
|
34
36
|
|
|
35
37
|
## 为什么是 ExecWeave
|
|
36
38
|
|
|
@@ -126,7 +128,7 @@ v0.8.3 的重点是让 dense、multi-round run 更易读,同时不改变 raw e
|
|
|
126
128
|
|
|
127
129
|
Cursor `tool_use_id`、Codex rollout thread identity、OpenCode `sessionID + callID` 这类 stable provider identifier 可以证明 logical provider identity,但它们不是 OS PID。只有 provider 明确暴露 route、delegation 或 result 时,cross-agent content 才会显示。若 gateway / local runtime 只提供 root request/response,ExecWeave 就保持 root-only,不会虚构 subagent 或 hidden routing。
|
|
128
130
|
|
|
129
|
-
OpenRouter `exchange` 是 caller-supplied request+response evidence,不是 transparent wire interception。LiteLLM Proxy 在当前 baseline 仍是较窄的 metadata-oriented integration。
|
|
131
|
+
OpenRouter `exchange` 是 caller-supplied request+response evidence,不是 transparent wire interception。LiteLLM Proxy 在当前 baseline 仍是较窄的 metadata-oriented integration。Google CLI 使用场景应改用 Antigravity (`agy`)。
|
|
130
132
|
|
|
131
133
|
## Evidence model
|
|
132
134
|
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
> Codex + AGY 與其餘受支援 provider 現已完成 conversation history、dashboard graph、raw event 與 file target 對齊。
|
|
2
|
+
|
|
1
3
|
# ExecWeave
|
|
2
4
|
|
|
3
5
|
<!-- i18n-nav:start -->
|
|
@@ -30,7 +32,7 @@ ExecWeave 是一個 source-available、local-first 的可觀測性專案,會
|
|
|
30
32
|
<img src="docs/assets/codex.gif" alt="ExecWeave animated live demo" width="100%">
|
|
31
33
|
</p>
|
|
32
34
|
|
|
33
|
-
本 README 對應 **v0.8.
|
|
35
|
+
本 README 對應 **v0.8.8**。
|
|
34
36
|
|
|
35
37
|
## 為什麼是 ExecWeave
|
|
36
38
|
|
|
@@ -126,7 +128,7 @@ v0.8.3 的重點是讓 dense、multi-round run 更容易讀,同時不改 raw e
|
|
|
126
128
|
|
|
127
129
|
Cursor `tool_use_id`、Codex rollout thread identity、OpenCode `sessionID + callID` 這類 stable provider identifier 能證明 logical provider identity,但它們不是 OS PID。只有 provider 明確曝露 route、delegation 或 result 時,cross-agent content 才會被顯示。若 gateway / local runtime 只提供 root request/response,ExecWeave 就維持 root-only,不會虛構 subagent 或 hidden routing。
|
|
128
130
|
|
|
129
|
-
OpenRouter `exchange` 是 caller-supplied request+response evidence,不是 transparent wire interception。LiteLLM Proxy 在目前 baseline 仍屬較窄的 metadata-oriented integration。
|
|
131
|
+
OpenRouter `exchange` 是 caller-supplied request+response evidence,不是 transparent wire interception。LiteLLM Proxy 在目前 baseline 仍屬較窄的 metadata-oriented integration。Google CLI 使用情境應改用 Antigravity (`agy`)。
|
|
130
132
|
|
|
131
133
|
## Evidence model
|
|
132
134
|
|
|
@@ -72,7 +72,3 @@ That edge is exact identity evidence (`identity_exact: true`) with identity meth
|
|
|
72
72
|
The assignment edge does not copy `transcriptPath` or child `logAbsoluteUri` into its graph attributes. Hook-supplied metadata may still be preserved separately by the full-fidelity content layer according to the normal provider-metadata rules.
|
|
73
73
|
|
|
74
74
|
This integration does **not** claim access to hidden model state, private chain-of-thought, an unseen provider-side request, or any content not delivered to an observed local surface. OS-runtime evidence remains a separate layer.
|
|
75
|
-
|
|
76
|
-
## Legacy Gemini CLI
|
|
77
|
-
|
|
78
|
-
The older `execweave-gemini-*` entry points remain available for compatibility with existing installations and archived workflows. They are not the current Google CLI path documented by ExecWeave; new usage should target Antigravity with `agy`.
|
|
@@ -31,7 +31,7 @@ EXECWEAVE_SEMANTIC_SIDECAR
|
|
|
31
31
|
|
|
32
32
|
Spezialisierte Belege können über mehrere attribution-sichere Wege automatisch eintreffen:
|
|
33
33
|
|
|
34
|
-
- konfigurierte Hooks für Claude Code, OpenAI Codex,
|
|
34
|
+
- konfigurierte Hooks für Claude Code, OpenAI Codex, Antigravity und Cursor;
|
|
35
35
|
- das installierte OpenCode-Plugin;
|
|
36
36
|
- Loopback-Model-Catalog-Probes, wenn ExecWeave erkannte lokale Ollama-, llama.cpp- oder vLLM-Server startet;
|
|
37
37
|
- ein success-gated LM-Studio-Post-Launch-Probe für `lms server start --port <port>`, sofern vor dem Start kein kompatibler Endpoint existierte;
|
|
@@ -88,7 +88,7 @@ Wenn keine spezialisierten Ereignisse eintreffen, bleibt die finale Materialisie
|
|
|
88
88
|
| --- | --- |
|
|
89
89
|
| Claude Code | **Ja**, nachdem die ExecWeave-Hooks konfiguriert wurden |
|
|
90
90
|
| OpenAI Codex | **Ja**, nachdem die ExecWeave-Hooks konfiguriert wurden |
|
|
91
|
-
|
|
|
91
|
+
| Antigravity | **Ja**, nachdem die ExecWeave-Hooks konfiguriert wurden |
|
|
92
92
|
| Cursor | **Ja**, nachdem die ExecWeave-Hooks konfiguriert wurden |
|
|
93
93
|
| OpenCode | **Ja**, nachdem das ExecWeave-Plugin installiert wurde |
|
|
94
94
|
| Ollama | **Ja**, für erkannte lokale `ollama serve`-Starts |
|
|
@@ -215,7 +215,7 @@ Die CI-Konfiguration des Repositorys deckt Folgendes ab:
|
|
|
215
215
|
- Sidecar-Ankunft, bevor Runtime-Identität verfügbar ist;
|
|
216
216
|
- Sidecar-Trunkierung und Replay;
|
|
217
217
|
- kanonischen finalen Runtime+Specialized-Neuaufbau;
|
|
218
|
-
- automatische Shared-Sidecar-Lieferung für Claude, Codex,
|
|
218
|
+
- automatische Shared-Sidecar-Lieferung für Claude, Codex, Antigravity, Cursor und OpenCode;
|
|
219
219
|
- automatische lokale Model-Runtime-Probes für Ollama, llama.cpp und vLLM sowie attribution-sichere LM-Studio-Startbehandlung;
|
|
220
220
|
- Datenschutz, fail-open Verhalten und finale Live-Graph-Materialisierung des LiteLLM-Callbacks;
|
|
221
221
|
- abgekoppeltes Top-Verhalten ohne Start eines zweiten Agent;
|
|
@@ -31,7 +31,7 @@ EXECWEAVE_SEMANTIC_SIDECAR
|
|
|
31
31
|
|
|
32
32
|
Les preuves spécialisées peuvent arriver automatiquement par plusieurs chemins sûrs pour l’attribution :
|
|
33
33
|
|
|
34
|
-
- hooks Claude Code, OpenAI Codex,
|
|
34
|
+
- hooks Claude Code, OpenAI Codex, Antigravity et Cursor déjà configurés ;
|
|
35
35
|
- plugin OpenCode installé ;
|
|
36
36
|
- probes loopback de catalogue de modèles lorsque ExecWeave lance des serveurs locaux Ollama, llama.cpp ou vLLM reconnus ;
|
|
37
37
|
- probe LM Studio post-lancement conditionné au succès pour `lms server start --port <port>`, uniquement si aucun endpoint compatible n’existait avant le lancement ;
|
|
@@ -88,7 +88,7 @@ Si aucun événement spécialisé n’arrive, la matérialisation finale reste r
|
|
|
88
88
|
| --- | --- |
|
|
89
89
|
| Claude Code | **Oui**, après configuration des hooks ExecWeave |
|
|
90
90
|
| OpenAI Codex | **Oui**, après configuration des hooks ExecWeave |
|
|
91
|
-
|
|
|
91
|
+
| Antigravity | **Oui**, après configuration des hooks ExecWeave |
|
|
92
92
|
| Cursor | **Oui**, après configuration des hooks ExecWeave |
|
|
93
93
|
| OpenCode | **Oui**, après installation du plugin ExecWeave |
|
|
94
94
|
| Ollama | **Oui**, pour les lancements locaux `ollama serve` reconnus |
|
|
@@ -215,7 +215,7 @@ La configuration CI du dépôt couvre :
|
|
|
215
215
|
- l’arrivée du sidecar avant que l’identité runtime soit prête ;
|
|
216
216
|
- la troncature et le rejeu du sidecar ;
|
|
217
217
|
- la reconstruction canonique finale runtime + specialized ;
|
|
218
|
-
- la livraison automatique via sidecar partagé pour Claude, Codex,
|
|
218
|
+
- la livraison automatique via sidecar partagé pour Claude, Codex, Antigravity, Cursor et OpenCode ;
|
|
219
219
|
- les probes model-runtime locaux automatiques pour Ollama, llama.cpp, vLLM et la gestion LM Studio sûre pour l’attribution ;
|
|
220
220
|
- la confidentialité du callback LiteLLM, son comportement fail-open et la matérialisation finale dans le graphe live ;
|
|
221
221
|
- le comportement Top détaché sans lancement d’un second Agent ;
|
|
@@ -31,7 +31,7 @@ EXECWEAVE_SEMANTIC_SIDECAR
|
|
|
31
31
|
|
|
32
32
|
Specialized evidence は複数の attribution-safe path から自動で到着できます。
|
|
33
33
|
|
|
34
|
-
- 設定済みの Claude Code、OpenAI Codex、
|
|
34
|
+
- 設定済みの Claude Code、OpenAI Codex、Antigravity、Cursor hooks;
|
|
35
35
|
- インストール済みの OpenCode plugin;
|
|
36
36
|
- ExecWeave が対応する local Ollama、llama.cpp、vLLM server を起動した場合の loopback model-catalog probe;
|
|
37
37
|
- `lms server start --port <port>` に対する success-gated LM Studio post-launch probe。ただし launch 前に同じ compatible endpoint が存在していないこと;
|
|
@@ -88,7 +88,7 @@ Specialized event が一件も到着しなければ、final materialization は
|
|
|
88
88
|
| --- | --- |
|
|
89
89
|
| Claude Code | **Yes**、ExecWeave hooks 設定後 |
|
|
90
90
|
| OpenAI Codex | **Yes**、ExecWeave hooks 設定後 |
|
|
91
|
-
|
|
|
91
|
+
| Antigravity | **Yes**、ExecWeave hooks 設定後 |
|
|
92
92
|
| Cursor | **Yes**、ExecWeave hooks 設定後 |
|
|
93
93
|
| OpenCode | **Yes**、ExecWeave plugin インストール後 |
|
|
94
94
|
| Ollama | **Yes**、認識済み local `ollama serve` launch の場合 |
|
|
@@ -215,7 +215,7 @@ Repository CI は次をカバーします。
|
|
|
215
215
|
- runtime identity ready 前の semantic sidecar arrival;
|
|
216
216
|
- semantic sidecar truncation と replay;
|
|
217
217
|
- canonical final runtime + specialized rebuild;
|
|
218
|
-
- Claude、Codex、
|
|
218
|
+
- Claude、Codex、Antigravity、Cursor、OpenCode の automatic shared-sidecar delivery;
|
|
219
219
|
- Ollama、llama.cpp、vLLM の automatic local model-runtime probe と attribution-safe LM Studio launch handling;
|
|
220
220
|
- LiteLLM callback の privacy、fail-open behavior、final live-graph materialization;
|
|
221
221
|
- 2 つ目の Agent を起動しない detached Top behavior;
|