Skip to content

feat(output): complete logging and status UX migration - #1221

Merged
skevetter merged 32 commits into
mainfrom
faded-lion
Sep 19, 2026
Merged

skevetter merged 32 commits into
mainfrom
faded-lion

Conversation

@skevetter

Copy link
Copy Markdown
Contributor

Summary

  • complete the latest logging and status UX implementation
  • remove legacy v1 support and keep only the latest implementation
  • add focused coverage for redaction, lifecycle, streaming, status, and CLI behavior

Validation

  • targeted Go tests passed
  • desktop TypeScript/Svelte checks and Vitest tests passed
  • CodeRabbit review completed with no remaining findings
  • Greptile CLI could not run locally because the repository is not connected; trigger Greptile from this PR

@coderabbitai

coderabbitai Bot commented Sep 11, 2026 •

Copy link
Copy Markdown

Important

Review skipped

Too many files!

This PR contains 157 files, which is 57 over the limit of 100.

To get a review, reduce the PR to 100 files or fewer by splitting it into smaller PRs or changing its base branch.

Upgrade to a paid plan to raise the limit.

This review couldn't start because sufficient usage credits or metered capacity aren't available. Add credits or update usage-based reviews in the billing tab, then retry.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Advanced

Run ID: 1a9f4c5f-4e50-4f40-b889-29b8ef00333c

📥 Commits

Reviewing files that changed from the base of the PR and between 550dbef and d8b64a2.

⛔ Files ignored due to path filters (2)
  • pkg/agent/tunnel/tunnel.pb.go is excluded by !**/*.pb.go
  • pkg/agent/tunnel/tunnel_grpc.pb.go is excluded by !**/*.pb.go
📒 Files selected for processing (157)
  • .golangci.yaml
  • Taskfile.yml
  • cmd/ci/ci.go
  • cmd/ci/status.go
  • cmd/ci/status_test.go
  • cmd/config/apply.go
  • cmd/config/apply_test.go
  • cmd/feature/outdated.go
  • cmd/feature/resolvedeps.go
  • cmd/feature/upgrade.go
  • cmd/internal/agentcontainer/setup.go
  • cmd/internal/agentworkspace/up.go
  • cmd/internal/runusercommands.go
  • cmd/provider/add.go
  • cmd/provider/configure_shared.go
  • cmd/provider/init.go
  • cmd/provider/set_source.go
  • cmd/provider/status.go
  • cmd/root.go
  • cmd/root_test.go
  • cmd/workspace/build.go
  • cmd/workspace/delete.go
  • cmd/workspace/exec.go
  • cmd/workspace/lifecycle.go
  • cmd/workspace/status_reporter.go
  • cmd/workspace/stop.go
  • cmd/workspace/task.go
  • cmd/workspace/task_tail.go
  • cmd/workspace/task_tail_test.go
  • cmd/workspace/task_test.go
  • cmd/workspace/up/agent.go
  • cmd/workspace/up/configure.go
  • cmd/workspace/up/status.go
  • cmd/workspace/up/tunnel.go
  • cmd/workspace/up/up.go
  • desktop/e2e/electron-app.ts
  • desktop/e2e/fixtures/mock-devsy.cjs
  • desktop/e2e/workspaces.e2e.ts
  • desktop/src/main/__tests__/cli-error-envelope.test.ts
  • desktop/src/main/__tests__/cli.test.ts
  • desktop/src/main/__tests__/ipc-provider-jobs.test.ts
  • desktop/src/main/__tests__/ipc-up-tasks.test.ts
  • desktop/src/main/__tests__/ipc-workspace-jobs.test.ts
  • desktop/src/main/__tests__/provider-jobs.test.ts
  • desktop/src/main/__tests__/updater.test.ts
  • desktop/src/main/cli.ts
  • desktop/src/main/index.ts
  • desktop/src/main/ipc.ts
  • desktop/src/main/provider-jobs.ts
  • desktop/src/main/updater.ts
  • desktop/src/main/watcher.ts
  • desktop/src/renderer/src/lib/components/ErrorCard.svelte
  • desktop/src/renderer/src/lib/components/provider/ProviderCard.svelte
  • desktop/src/renderer/src/lib/components/provider/ProviderSheet.svelte
  • desktop/src/renderer/src/lib/components/provider/ProviderWizard.svelte
  • desktop/src/renderer/src/lib/components/update/UpdatesPanel.test.ts
  • desktop/src/renderer/src/lib/components/workspace/WorkspaceWizard.platform.test.ts
  • desktop/src/renderer/src/lib/components/workspace/WorkspaceWizard.svelte
  • desktop/src/renderer/src/lib/components/workspace/WorkspaceWizard.test.ts
  • desktop/src/renderer/src/lib/stores/workspaces.test.ts
  • desktop/src/renderer/src/lib/stores/workspaces.ts
  • desktop/src/renderer/src/lib/types/index.ts
  • desktop/src/renderer/src/lib/utils/log-parser.test.ts
  • desktop/src/renderer/src/lib/utils/log-parser.ts
  • desktop/src/renderer/src/lib/utils/provider-status.test.ts
  • desktop/src/renderer/src/lib/utils/provider-status.ts
  • desktop/src/renderer/src/pages/WorkspaceDetailPage.svelte
  • desktop/src/renderer/src/pages/WorkspacesPage.svelte
  • desktop/src/shared/cli-error.ts
  • e2e/tests/up-docker-compose/config.go
  • e2e/tests/up-docker-compose/testdata/docker-compose-v1-fallback/.devcontainer.json
  • e2e/tests/up-docker-compose/testdata/docker-compose-v1-fallback/docker-compose.yml
  • e2e/tests/up-docker-compose/up_docker_compose.go
  • e2e/tests/up/up_behaviors.go
  • pkg/agent/agent.go
  • pkg/agent/delivery/capture.go
  • pkg/agent/delivery/capture_test.go
  • pkg/agent/delivery/local_docker.go
  • pkg/agent/delivery/remote_docker.go
  • pkg/agent/delivery/workspace_seed.go
  • pkg/agent/dockerless.go
  • pkg/agent/tunnel/tunnel.proto
  • pkg/agent/tunnelserver/status_sender.go
  • pkg/agent/tunnelserver/tunnelserver.go
  • pkg/agent/tunnelserver/tunnelserver_test.go
  • pkg/agent/workspace.go
  • pkg/client/clientimplementation/daemonclient/up.go
  • pkg/client/clientimplementation/daemonclient/up_test.go
  • pkg/client/clientimplementation/workspace_client.go
  • pkg/client/clientimplementation/workspace_client_test.go
  • pkg/clierr/errors.go
  • pkg/clierr/errors_test.go
  • pkg/compose/helper.go
  • pkg/compose/helper_test.go
  • pkg/devcontainer/build.go
  • pkg/devcontainer/buildkit/remote.go
  • pkg/devcontainer/compose.go
  • pkg/devcontainer/compose_build.go
  • pkg/devcontainer/config.go
  • pkg/devcontainer/config/envelope.go
  • pkg/devcontainer/config/envelope_test.go
  • pkg/devcontainer/crane/run.go
  • pkg/devcontainer/crane/run_test.go
  • pkg/devcontainer/delete.go
  • pkg/devcontainer/feature/extend.go
  • pkg/devcontainer/feature/features.go
  • pkg/devcontainer/initialize.go
  • pkg/devcontainer/run.go
  • pkg/devcontainer/setup.go
  • pkg/devcontainer/setup/dotfiles.go
  • pkg/devcontainer/setup/lifecyclehooks.go
  • pkg/devcontainer/setup/lifecyclehooks_test.go
  • pkg/devcontainer/setup/setup.go
  • pkg/devcontainer/single.go
  • pkg/devcontainer/sshtunnel/sshtunnel.go
  • pkg/devcontainer/teardown.go
  • pkg/devsyconfig/config.go
  • pkg/docker/helper.go
  • pkg/driver/apple/build.go
  • pkg/driver/apple/lifecycle.go
  • pkg/driver/docker/build.go
  • pkg/driver/docker/diagnostics.go
  • pkg/driver/docker/lifecycle.go
  • pkg/driver/kubernetes/daemonsecret.go
  • pkg/driver/kubernetes/driver.go
  • pkg/driver/kubernetes/find.go
  • pkg/driver/kubernetes/pullsecrets.go
  • pkg/driver/kubernetes/pvc.go
  • pkg/driver/kubernetes/run.go
  • pkg/driver/kubernetes/serviceaccount.go
  • pkg/git/installer.go
  • pkg/git/installer_release.go
  • pkg/git/progress.go
  • pkg/git/repo.go
  • pkg/git/runner.go
  • pkg/git/runner_test.go
  • pkg/log/logger.go
  • pkg/log/logger_test.go
  • pkg/log/streamer.go
  • pkg/log/streamer_test.go
  • pkg/log/writer.go
  • pkg/log/writer_test.go
  • pkg/output/mode.go
  • pkg/output/mode_test.go
  • pkg/provider/download.go
  • pkg/provider/resolve.go
  • pkg/secrets/redact.go
  • pkg/secrets/redact_test.go
  • pkg/status/log.go
  • pkg/status/render.go
  • pkg/status/reporter_test.go
  • pkg/status/status.go
  • pkg/status/status_test.go
  • pkg/subprocess/capture.go
  • pkg/subprocess/capture_test.go
  • pkg/task/task.go
  • pkg/task/task_test.go

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@netlify

netlify Bot commented Sep 11, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for devsydev canceled.

Name Link
🔨 Latest commit d8b64a2
🔍 Latest deploy log https://app.netlify.com/projects/devsydev/deploys/6aad8039782a4b00083c7a24

@netlify

netlify Bot commented Sep 11, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for images-devsy-sh canceled.

Name Link
🔨 Latest commit d8b64a2
🔍 Latest deploy log https://app.netlify.com/projects/images-devsy-sh/deploys/6aad8039f80dd6000829ed5d

@skevetter

Copy link
Copy Markdown
Contributor Author

@greptileai review

@greptile-apps

greptile-apps Bot commented Sep 12, 2026 •

Copy link
Copy Markdown

RetriggerConfidence Score: 5/5

The PR appears safe to merge, with no outstanding correctness, security, or repository-rule findings.

Summary

This PR completes the migration to structured lifecycle status and diagnostic logging across the CLI, agent, task storage, and Desktop application.

  • Adds consistent status reporters, operation metadata, error envelopes, and secret redaction.
  • Updates Desktop parsing and job state to consume the current status protocol.
  • Strengthens application-update channel, candidate, download, and installation state handling.
  • Removes legacy output compatibility and expands focused Go, TypeScript, Svelte, and Electron coverage.
  • The previously reported detached-task fallback issue is fixed: SSH tunnel and SSH configuration failures are now treated as recoverable, and the prior thread is resolved.
Diagram
sequenceDiagram
    participant UI as Desktop UI
    participant IPC as Main-process IPC
    participant Updater as Update coordinator
    participant Feed as Update feed

    UI->>IPC: Select release channel
    IPC->>Updater: switchReleaseChannel(channel)
    Updater->>Updater: Reject if check/download/install is active
    Updater->>Updater: Configure requested channel
    Updater->>Feed: Check for updates
    alt Check succeeds
        Feed-->>Updater: Candidate or no update
        Updater->>Updater: Persist channel
        Updater-->>UI: Current update status
    else Check fails
        Feed-->>Updater: Error
        Updater->>Updater: Restore previous channel
        Updater-->>UI: Reject request
    end
Loading

Reviews (5) · Last reviewed commit: "fix(desktop): defer updater initializati..."

Comment thread pkg/task/task.go
@skevetter
skevetter marked this pull request as ready for review September 13, 2026 05:04
@mergify

mergify Bot commented Sep 13, 2026

Copy link
Copy Markdown

Tick the box to add this pull request to the merge queue (same as @mergifyio queue).

  • Queue this pull request

@skevetter
skevetter merged commit 1c65d31 into main Sep 19, 2026
153 of 155 checks passed
@skevetter
skevetter deleted the faded-lion branch September 19, 2026 00:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant