Skip to content

gut: remove dead thinking and reasoning session settings#383

Merged
alexey-pelykh merged 3 commits intomainfrom
gut/remove-thinking-reasoning-settings
Mar 8, 2026
Merged

gut: remove dead thinking and reasoning session settings#383
alexey-pelykh merged 3 commits intomainfrom
gut/remove-thinking-reasoning-settings

Conversation

@alexey-pelykh
Copy link
Copy Markdown

Summary

Closes #373.

  • Remove thinkingLevel and reasoningLevel from all UI surfaces (web, TUI, macOS, Android), gateway schema/patch endpoints, and auto-reply directive handling
  • Delete Telegram reasoning-lane-coordinator and agent-helpers/thinking.ts — entirely dead code since runtimes discard reasoning events
  • Clean up 89 files across gateway, web UI, TUI, CLI, native apps (macOS + Android), shared framework, Telegram, Matrix, and auto-reply layers
  • Net result: -2,237 lines of dead settings code removed; verboseLevel preserved everywhere

Test plan

  • pnpm check passes (format + typecheck + lint: 0 warnings, 0 errors)
  • pnpm test passes (93 test files, 864 tests, all green)
  • Gateway tests updated: removed thinkingLevel from session patch/list assertions and schema validation tests
  • Verified no remaining lint errors introduced by changes (base branch had 0, our changes maintain 0)

🤖 Generated with Claude Code

@alexey-pelykh alexey-pelykh enabled auto-merge (squash) March 8, 2026 00:48
auto-merge was automatically disabled March 8, 2026 01:07

Pull request was closed

@alexey-pelykh alexey-pelykh reopened this Mar 8, 2026
@alexey-pelykh alexey-pelykh force-pushed the gut/remove-thinking-reasoning-settings branch from 166dce3 to 44b9b86 Compare March 8, 2026 01:08
alexey-pelykh and others added 3 commits March 8, 2026 02:09
Remove thinkingLevel and reasoningLevel from all UI surfaces, gateway
schema, patch endpoints, and native apps. These settings were resolved
and stored per-session but never reached CLI runtimes — AgentRuntime
does not forward them, and all four runtimes discard reasoning events.

Layers cleaned:
- Gateway: schema validation, server methods, sessions-patch logic
- Web UI: sessions table, chat view, controllers, types
- TUI: /think and /reasoning commands, session types, footer display
- CLI: sessions-table columns
- macOS: MenuSessionsInjector, SessionActions, SessionData, GatewayModels
- Android: ChatController, ChatComposer, ChatSheetContent, NodeRuntime,
  MainViewModel, TalkModeManager
- Shared framework: GatewayModels, ChatModels
- Telegram: reasoning-lane-coordinator (deleted), bot-message-dispatch
- Matrix: reasoning reply helpers
- Auto-reply: directive handling, session resolution, status, commands

verboseLevel is preserved everywhere — it gates post-processing delivery
and works correctly with AgentRuntime.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…g references (#373)

Complete the removal of thinking/reasoning session settings by gutting
core type definitions (ThinkLevel, ReasoningLevel, ThinkingContent),
Zod schemas, command logic, subagent spawn overrides, heartbeat
includeReasoning, ACP translator, and associated tests/docs.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@alexey-pelykh alexey-pelykh force-pushed the gut/remove-thinking-reasoning-settings branch from 44b9b86 to f701c47 Compare March 8, 2026 01:10
@alexey-pelykh alexey-pelykh merged commit 9da39bb into main Mar 8, 2026
7 checks passed
@alexey-pelykh alexey-pelykh deleted the gut/remove-thinking-reasoning-settings branch March 8, 2026 01:17
alexey-pelykh added a commit that referenced this pull request Apr 26, 2026
…2582)

Process Cat A cluster A1 of the v2026.3.22 upstream sync backlog: 31 fork
files under apps/android/ requiring per-file disposition.

Disposition outcome:

| Action | Count |
|--------|------:|
| CHERRY-PICK applied (rebrand transform → fork content changes) | 23 |
| CHERRY-PICK no-op (already in sync after rebrand transform) | 4 |
| EXCLUDE-DIVERGENT (registered in hq/upstream/disposition.tsv) | 4 |
| Total | 31 |

EXCLUDE-DIVERGENT classifications:

- chat/ChatController.kt + chat/ChatModels.kt — gut #383 removed
  thinkingLevel/reasoningLevel session settings on fork; upstream still
  references them.
- NodeForegroundService.kt — upstream uses NodeApp.peekRuntime() (nullable)
  but fork's gutted NodeApp exposes non-null `runtime` only. Reclassified
  during execution per per-file inspection.
- ui/PostOnboardingTabs.kt — upstream calls
  MainViewModel.refreshHomeCanvasOverviewIfConnected() (new API); fork's
  gutted MainViewModel exposes requestCanvasRehydrate(source) instead.
  Reclassified during execution.

The 2 reclassifications match the 5–10% rate the issue body anticipated.

Approach:

1. Read upstream@v2026.3.22 content via `git show v2026.3.22:{path}`.
2. Apply token-based rebrand transforms per hq/upstream/rebrand-tokens.tsv —
   path-dependent reverse-domain (`ai.openclaw.app` → `org.remoteclaw.android`
   for 28 files / `org.remoteclaw.app` for 1 outlier file Base64ImageState.kt
   and 1 outlier test NodeHandlerRobolectricTest.kt) plus generic transforms
   (`OpenClaw` → `RemoteClaw`, `openclaw` → `remoteclaw`, `OPENCLAW_` →
   `REMOTECLAW_`, etc.).
3. Cross-class API audit detected 2 regressions (peekRuntime,
   refreshHomeCanvasOverviewIfConnected) → reverted those files,
   reclassified to EXCLUDE-DIVERGENT.

Validation gates: pnpm check (oxfmt, tsgo, oxlint, no-random-messaging,
no-remoteclaw-ai, css-class-drift), rebrand-gate, zombie-import-gate,
stub-debt-gate (126 == baseline), throwing-stub-callers-gate,
obsolescence-audit-gate (49 == baseline) — all PASS.

Note: Fork CI does not build Android (per CLAUDE.md). Local Android Gradle
build not verified.

Disposition.tsv updates land in /Users/alexey-pelykh/RemoteClaw/hq/ (HQ
companion, not in repo). Four EXTRACT entries with `fork-divergent: ...
(#2582)` rationale.

Closes #2582
alexey-pelykh added a commit that referenced this pull request Apr 26, 2026
…2582) (#2595)

Process Cat A cluster A1 of the v2026.3.22 upstream sync backlog: 31 fork
files under apps/android/ requiring per-file disposition.

Disposition outcome:

| Action | Count |
|--------|------:|
| CHERRY-PICK applied (rebrand transform → fork content changes) | 23 |
| CHERRY-PICK no-op (already in sync after rebrand transform) | 4 |
| EXCLUDE-DIVERGENT (registered in hq/upstream/disposition.tsv) | 4 |
| Total | 31 |

EXCLUDE-DIVERGENT classifications:

- chat/ChatController.kt + chat/ChatModels.kt — gut #383 removed
  thinkingLevel/reasoningLevel session settings on fork; upstream still
  references them.
- NodeForegroundService.kt — upstream uses NodeApp.peekRuntime() (nullable)
  but fork's gutted NodeApp exposes non-null `runtime` only. Reclassified
  during execution per per-file inspection.
- ui/PostOnboardingTabs.kt — upstream calls
  MainViewModel.refreshHomeCanvasOverviewIfConnected() (new API); fork's
  gutted MainViewModel exposes requestCanvasRehydrate(source) instead.
  Reclassified during execution.

The 2 reclassifications match the 5–10% rate the issue body anticipated.

Approach:

1. Read upstream@v2026.3.22 content via `git show v2026.3.22:{path}`.
2. Apply token-based rebrand transforms per hq/upstream/rebrand-tokens.tsv —
   path-dependent reverse-domain (`ai.openclaw.app` → `org.remoteclaw.android`
   for 28 files / `org.remoteclaw.app` for 1 outlier file Base64ImageState.kt
   and 1 outlier test NodeHandlerRobolectricTest.kt) plus generic transforms
   (`OpenClaw` → `RemoteClaw`, `openclaw` → `remoteclaw`, `OPENCLAW_` →
   `REMOTECLAW_`, etc.).
3. Cross-class API audit detected 2 regressions (peekRuntime,
   refreshHomeCanvasOverviewIfConnected) → reverted those files,
   reclassified to EXCLUDE-DIVERGENT.

Validation gates: pnpm check (oxfmt, tsgo, oxlint, no-random-messaging,
no-remoteclaw-ai, css-class-drift), rebrand-gate, zombie-import-gate,
stub-debt-gate (126 == baseline), throwing-stub-callers-gate,
obsolescence-audit-gate (49 == baseline) — all PASS.

Note: Fork CI does not build Android (per CLAUDE.md). Local Android Gradle
build not verified.

Disposition.tsv updates land in /Users/alexey-pelykh/RemoteClaw/hq/ (HQ
companion, not in repo). Four EXTRACT entries with `fork-divergent: ...
(#2582)` rationale.

Closes #2582
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.

gut: remove dead Thinking and Reasoning session settings

1 participant