Skip to content

chore: rename studio → rocCLAW consistently, rename files to match functionality#6

Merged
simonCatBot merged 6 commits intomasterfrom
chore/project-review
Mar 30, 2026
Merged

chore: rename studio → rocCLAW consistently, rename files to match functionality#6
simonCatBot merged 6 commits intomasterfrom
chore/project-review

Conversation

@simonCatBot
Copy link
Copy Markdown
Owner

Summary

Consistent naming throughout the codebase. studio was used internally for rocCLAW-specific code — it now matches the project name.

Structural renames

Before After What it is
src/lib/studio/ src/lib/rocclaw/ Settings, install context, coordinator
src/app/api/studio/ src/app/api/rocclaw/ Settings API routes
server/studio-settings.js server/rocclaw-settings.js Server-side settings path resolution
server/install-context.js server/rocclaw-install-context.js Server-side install context probe
studioBootstrapOperation.ts bootstrapOperation.ts Bootstrap operation
studioBootstrapWorkflow.ts bootstrapWorkflow.ts Bootstrap workflow
helpers/studioRoute.ts helpers/rocclawRoute.ts E2E route helper

User-facing text

OpenClaw StudiorocCLAW in all UI strings:

  • Loading screen label in page.tsx
  • Heartbeat error message
  • Disconnect text
  • GatewayConnectScreen — all status messages, scenario titles, button labels, helper text
  • ConnectionPanel — token placeholder
  • AgentInspectPanels — danger zone warning
  • AGENTS.md — agent instruction reference

Files intentionally NOT renamed

These are correctly named for what they actually are:

File Why kept
src/lib/gateway/gateway-frames.ts Describes the gateway WebSocket protocol, not the app
src/lib/gateway/gateway-status.ts Gateway connection status, not the app
src/lib/gateway/chatHistoryLimits.ts Gateway history limit constants
src/app/api/runtime/disconnect/route.ts Correctly describes the action (disconnect agent session)
src/app/api/runtime/agent-state/route.ts Correctly describes the resource

Runtime state / CLI strings left unchanged

  • "openclaw-studio" directory names — would break existing installs
  • "openclaw-studio" npm CLI package name — external package reference
  • "openclaw-studio-history" cache DB name — would break existing cache
  • "openclaw-studio CLI" in UI strings — references actual CLI package name

Testing

  • npm run lint
  • npm run typecheck
  • npm run test
  • npm run e2e

Miaman (OpenClaw Agent) and others added 6 commits March 27, 2026 01:35
Naming consistency: "studio" was used internally for rocCLAW-specific
code. Replace throughout with "rocclaw" to match the project name.

Structural renames:
- src/lib/studio/ → src/lib/rocclaw/
- src/app/api/studio/ → src/app/api/rocclaw/
- server/studio-settings.js → server/rocclaw-settings.js
- server/install-context.js → server/rocclaw-install-context.js
- server/install-context.d.ts (import path updated)
- scripts/rocclaw-setup.js (require path updated)
- src/features/agents/operations/studioBootstrapOperation.ts → bootstrapOperation.ts
- src/features/agents/operations/studioBootstrapWorkflow.ts → bootstrapWorkflow.ts
- tests/e2e/helpers/studioRoute.ts → rocclawRoute.ts

User-facing text changes (OpenClaw Studio → rocCLAW):
- src/app/layout.tsx: page title stays "rocCLAW control"
- src/app/page.tsx: loading screen label, heartbeat error, disconnect text
- src/lib/gateway/agentConfig.ts: heartbeat trigger text
- src/features/agents/components/AgentInspectPanels.tsx: danger zone warning
- src/features/agents/components/GatewayConnectScreen.tsx: all UI strings
  (status messages, scenario titles, helper text, button labels)
- src/features/agents/components/ConnectionPanel.tsx: token placeholder text
- AGENTS.md: agent instruction reference

Import path updates (all occurrences):
- "@/lib/studio/" → "@/lib/rocclaw/" in all .ts/.tsx files
- "@/app/api/studio/" → "@/app/api/rocclaw/" in all .ts/.tsx files
- server/require(".") references updated to new file names
- tests/ imports updated throughout

Files intentionally NOT renamed (correctly named for their domain):
- src/lib/gateway/gateway-frames.ts — gateway WebSocket protocol types
- src/lib/gateway/gateway-status.ts — gateway connection status
- src/lib/gateway/chatHistoryLimits.ts — gateway history limits
- src/app/api/runtime/disconnect/route.ts — correctly describes the action

Runtime state and CLI strings left as-is:
- "openclaw-studio" dir names (settings, runtime DB) — would break existing installs
- "openclaw-studio" CLI package name — external npm package
- "openclaw-studio-history" cache DB — would break existing cache
- "openclaw-studio CLI" UI string — references actual CLI package name
- Use strict null checks for GPU metrics
- Keep 22-char truncation for GPU name (matches other labels)
- Resolved rebase conflicts
…name

- Fix import path in src/app/api/rocclaw/route.ts:
  server/install-context → server/rocclaw-install-context

- Update heartbeatGatewayClient test expectation:
  'OpenClaw Studio heartbeat trigger' → 'rocCLAW heartbeat trigger'

- Fix setState-in-effect lint error in GatewayConnectScreen.tsx:
  Use useLayoutEffect with refs to avoid cascading render warning
Increase window duration from 50ms to 100ms and wait buffer from 10ms to 50ms
to reduce timing sensitivity and prevent flaky failures.
- Fix type mismatch in server/rocclaw-install-context.js: ensure issues array is string[]
- Refactor GatewayConnectScreen to fix setState-in-effect lint error properly
@simonCatBot simonCatBot merged commit a6827b3 into master Mar 30, 2026
@simonCatBot simonCatBot deleted the chore/project-review branch March 30, 2026 02:15
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