Skip to content

feat: Track 1 End-to-End Execution Modes, Capability Registry & UI Integration - #38

Merged
dhar174 merged 5 commits into
mainfrom
feat/track-1-execution-modes-ui
Oct 22, 2026
Merged

dhar174 merged 5 commits into
mainfrom
feat/track-1-execution-modes-ui

Conversation

@dhar174

@dhar174 dhar174 commented Oct 22, 2026

Copy link
Copy Markdown
Owner

Summary

This pull request implements Track 1: End-to-End Execution Modes, Capability Registry, and UI Integration (addressing Issue #35 Phases 3–5 and Issue #21).

It unifies the application's runtime reasoning surfaces into a strongly typed, observable execution model spanning backend schemas, GraphQL APIs, and the React frontend.


Key Changes

Phase 3: Shared Run Contracts & Capability Registry (execution_modes.py)

  • Pydantic v2 Schemas: Defined RunRequest, RunResult, RunEvent, RunDiagnostics, PlanStepDiagnostic, SubtaskDiagnostic, ReflectionDiagnostic, and AgentAttribution.
  • Capability Registry: Established CAPABILITY_REGISTRY cataloging supported execution modes (collaborative, advanced_pipeline) and gated future modes (tree_of_thought gated on Issue Implement true Tree-of-Thought search with bounded branching, evaluation, pruning, and end-to-end integration #36).
  • Fail-Closed Gating: Gated modes return deterministic RunResult(status="gated") with zero LLM provider or external network calls.
  • Polymorphic Input Normalization: RunRequest normalizes tasks and conversations bidirectionally, accepting dicts, strings, and GraphQL input types.
  • Zero Import-Time Side Effects: Handlers dynamically import orchestrators (conversation_manager.run_conversation, advanced_prompting.AdvancedPromptEngineer) inside dispatcher functions, keeping module imports completely pure.

Phase 4: GraphQL Schema Extensions (schema.py)

  • Queries & Mutations:
    • Query.execution_modes: Exposes registered capabilities, enabled status, descriptions, and gating issue references.
    • Mutation.run_execution: Dispatches arbitrary registered modes, returning unified RunResultType with diagnostics, events, and telemetry.
    • Mutation.run_advanced_pipeline: Dedicated resolver for AdvancedPromptEngineer.main(task) with structured telemetry logging.
  • Backward Compatibility: Fully preserves Query.hello, Mutation.run_conversation, and Mutation.submit_feedback.
  • Structured JSON Logging: Added structured logging for request life cycles, durations, and diagnostic extraction.

Phase 5: React UI Observability & Diagnostics (collaborative-assistant-frontend/)

  • Mode Selection: Updated AssistantConfigPanel.tsx with an Execution Mode selector (collaborative, advanced_pipeline, disabled tree_of_thought with Issue Implement true Tree-of-Thought search with bounded branching, evaluation, pruning, and end-to-end integration #36 badge).
  • Reasoning Diagnostics Panel: Created ReasoningDiagnosticsPanel.tsx displaying complexity scores, step budgets, reflections, step rewards, plan subtasks, agent attributions, and a collapsible chronological event log.
  • Structured Output Rendering: Created StructuredOutputRenderer.tsx with dedicated formatters for code syntax highlighting, JSON tree/copy, CSV table/raw view, and Markdown.
  • Hook Layer: Implemented useRunExecution.ts providing typed Apollo execution with loading states and error handling.
  • Zero Regressions: ConversationPage.tsx preserves legacy collaborative integration test mocks while enabling multi-mode execution.

Offline Qualification & Verification Evidence

All tests were executed under the fail-closed network denial harness (tools/run-offline.ps1 and tools/run-frontend-offline.ps1):

  1. Backend Offline Test Suite:
    ./tools/run-offline.ps1 -PytestArgs '-q'
    # Result: 206 passed, 0 failed, 0 skipped (100% pass rate, +58 new tests over 148 baseline)
    • Includes 41 tests in test_execution_modes.py, 13 tests in test_empirical_challenger_2.py, 6 in test_graphql_contract.py, and 48 in test_advanced_prompting.py.
  2. Frontend Offline Test Suite:
    ./tools/run-frontend-offline.ps1 -Action test
    # Result: 124 passed, 0 failed across 13 test files (100% pass rate, +13 new tests over 111 baseline)
  3. Frontend Production Build:
    ./tools/run-frontend-offline.ps1 -Action build
    # Result: PASS (zero TypeScript errors, Vite bundle built cleanly)
  4. Frontend Lint Check:
    ./tools/run-frontend-offline.ps1 -Action lint
    # Result: PASS (0 ESLint errors, 0 warnings)
  5. Network Denial Guard:
    ./tools/run-frontend-offline.ps1 -Action guard
    # Result: PASS (Node outbound socket/DNS denial verified)

Related Issues

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 22, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-22T16:43:34.836603Z 7567d5d PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 7567d5d909

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread execution_modes.py Resolved
Comment thread execution_modes.py Resolved
Comment thread execution_modes.py Resolved
Remove the "inheritMcp" option from the YAML frontmatter of all agents in .agents/agents, and change "model" to "flash"
…its, and solo runs

- Constrain collaborative artifact reads to explicitly tracked files within safe subpaths (output_generator.track_generated_artifact)
- Enforce max_steps and initial_budget caps across adjust_step_budget, main loop, and execution dispatcher
- Guard zero-agent solo reasoning against UnboundLocalError and record solo attribution
- Add comprehensive security and regression tests (+4 tests, 210 passed offline)
@dhar174
dhar174 merged commit cb0d5be into main Oct 22, 2026
9 checks passed
@dhar174
dhar174 deleted the feat/track-1-execution-modes-ui branch October 22, 2026 18:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Front End Improvements

1 participant