Skip to content

feat(openclaw): deterministic training status/batch command adapter#250

Closed
Foundup wants to merge 5 commits intomainfrom
feat/openclaw-training-route-and-status
Closed

feat(openclaw): deterministic training status/batch command adapter#250
Foundup wants to merge 5 commits intomainfrom
feat/openclaw-training-route-and-status

Conversation

@Foundup
Copy link
Copy Markdown
Member

@Foundup Foundup commented Mar 27, 2026

Summary

  • Adds async training_adapter.py with deterministic command matching for training status, progress, batch trigger
  • Hooks into execute_query() after schedule commands, before HoloIndex fallback
  • Anchored regexes prevent false positives from search-style queries ("search training metrics")
  • Async _trigger_training_batch() awaits from running event loop (no asyncio.run())
  • Status states: DISABLED, UNAVAILABLE, COMPLETE, DUE, EMPTY, ERROR

Test plan

  • 35 tests passing (pytest modules/communication/moltbot_bridge/tests/test_training_adapter.py)
  • 6 status command variants match
  • 5 batch command variants match
  • 4 due command variants match
  • 6 non-training commands rejected (including empty string)
  • 5 false-positive search phrases rejected (regression)
  • 4 status states verified (disabled, unavailable, complete, due)
  • 4 batch outcomes verified (disabled, success, already-complete, error)
  • 1 async integration test proves batch works inside running event loop

🤖 Generated with Claude Code

Foundups Agent and others added 5 commits March 26, 2026 02:57
Docs/comments only — no runtime behavior change. Clarifies which
roles are resolved where: triage/general/code via
local_model_selection.py, vision via ui_tars_bridge.py,
architect_escalation as explicit policy only. Adds Resolution
Surface column to all worker tables. Documents that runtime
model-name strings (QwenPlan, Gemma:PatternMatch) are a tracked
follow-up refactor.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…ed constants

Runtime dispatch now uses role constants (role:triage, role:code,
role:0102) instead of model-name strings (Gemma:PatternMatch,
Qwen:Planning). QwenPlan renamed to WorkerPlan, executor methods
renamed to _execute_triage_task/_execute_code_task. ROLE_GENERAL is
reserved and dispatchable but not yet planner-emitted.

Remaining model-name debt: workers.qwen_engine/gemma_engine are
external AutonomousRefactoringOrchestrator API (separate scope).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add ScheduleEvaluator for deterministic parsing of schedule phrases
(e.g. "run self research daily"), ScheduleParser for phrase-to-routine
mapping, and manage_schedules.py CLI. Already wired into OpenClaw
execution routes. 52 tests pass.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Drift-aware queue builder that aggregates backlog items, sorts by
WSP 15 priority/scores, and detects repo drift against expected
owner modules. Outputs queue JSON and status summary.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add async training adapter for OpenClaw with anchored regex matching,
PatternMemory status reporting (DISABLED/UNAVAILABLE/COMPLETE/DUE/EMPTY/ERROR),
and batch trigger that awaits from the async execute_query path.

- training_adapter.py: try_training_command(), _training_status(), _trigger_training_batch()
- openclaw_execution_routes.py: hook after schedule commands, before HoloIndex fallback
- 35 tests: command matching, false-positive rejection, status states, batch outcomes, async integration

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@Foundup
Copy link
Copy Markdown
Member Author

Foundup commented Apr 18, 2026

Closing as stale/scope-drifted. Related schedule evaluator work already exists on main, and this 23-day-old OpenClaw training adapter PR likely needs a fresh implementation against current OpenClawSupervisor state if still needed.

@Foundup Foundup closed this Apr 18, 2026
@Foundup Foundup deleted the feat/openclaw-training-route-and-status branch April 20, 2026 21:06
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.

1 participant