Skip to content

Feat implement remaining phase0 2#40

Draft
xjayk wants to merge 57 commits into
mainfrom
feat-implement-remaining-phase0-2
Draft

Feat implement remaining phase0 2#40
xjayk wants to merge 57 commits into
mainfrom
feat-implement-remaining-phase0-2

Conversation

@xjayk

@xjayk xjayk commented Jun 19, 2026

Copy link
Copy Markdown
Owner

Perp mess

xjayk added 30 commits June 18, 2026 20:42
Remove tooling workspace members and delete several tooling/license symlinks; prune xtask/compliance/perf tool crates. Simplify feature_flags crate: condense trait implementations, shrink FeatureFlagStore API and internals, remove settings/overrides plumbing and many helper types/macros. Change crashes::init to an async signature that returns Arc<Client> directly. Update workspace manifest and Cargo.lock to reflect dependency cleanup and bump Windows-related crates (e.g. windows-sys -> 0.61.2) along with removal of many now-unused packages.
Implement RSA-based auth utilities and token handling (keypair, OAEP/PKCS1v15 support, base64 serialization, encrypt/decrypt, and tests). Flesh out rpc scaffolding: Connection/Peer helpers, in-memory/test helpers, ProtoClient trait, AnyProtoClient/NoopProtoClient, and a ProtoMessageHandlerSet with basic stubs to support higher-level code and tests. Small gpui test fix (use #[test] instead of perf macro). Update CI workflow to stop silencing clippy/tests failures so problems fail the run.
* Refine CI commands by removing error suppression

Removed '|| true' from Clippy and Tests commands for better error handling.

* Remove tooling, simplify feature flags & deps

Remove tooling workspace members and delete several tooling/license symlinks; prune xtask/compliance/perf tool crates. Simplify feature_flags crate: condense trait implementations, shrink FeatureFlagStore API and internals, remove settings/overrides plumbing and many helper types/macros. Change crashes::init to an async signature that returns Arc<Client> directly. Update workspace manifest and Cargo.lock to reflect dependency cleanup and bump Windows-related crates (e.g. windows-sys -> 0.61.2) along with removal of many now-unused packages.

* Ignore tests that depend on deleted language configs
xjayk added 27 commits June 19, 2026 11:45
- Remove auth.rs, conn.rs, peer.rs, notification.rs, proto_client.rs stubs
  from crates/rpc/src — these were dead code that added maintenance risk.
  rpc is now a pure re-export shim: `pub use proto::*` + ConnectionId.

- Slim down crates/rpc/Cargo.toml: drop async-tungstenite, base64, rand,
  rsa, sha2, strum, zstd, serde, serde_json, parking_lot which were only
  needed by the deleted stubs.

- crates/project/Cargo.toml: remove release_channel and rpc from
  [dependencies] (project uses proto directly via rpc re-exports;
  rpc dep kept in dev-dependencies for test-support feature only).
  Also remove remote from dev-dependencies (crate was deleted in PR #37).

- crates/notifications/Cargo.toml: replace rpc/test-support feature path
  with proto/test-support since rpc no longer has its own test-support
  feature logic.
…ted TOML keys

- Remove `feature_flags` and `telemetry` from [dependencies] — both
  crates were deleted in the Phase 0 cleanup commit but acp_thread still
  referenced them, causing `cargo metadata` to abort and blocking CI.
- Fix invalid quoted-key TOML syntax in [dev-dependencies]:
    "features" = [...]  →  features = [...]
  The quoted keys are not valid TOML table-inline syntax; cargo rejects
  the manifest before any code is even parsed.
- Remove `use feature_flags::{AcpBetaFeatureFlag, FeatureFlagAppExt as _}`
  import and replace the `cx.has_flag::<AcpBetaFeatureFlag>()` guard with
  `true` — ACP is always enabled in this fork, matching the Phase 0
  intent of treating feature flags as unconditionally on.
- Remove `telemetry::event!("Agent Tool Call Completed", ...)` call — the
  telemetry crate was deleted; telemetry events are no-ops in this fork.
…space

These three crates were deleted from the workspace but 25+ consumer crates
still reference them via `*.workspace = true`. Re-add minimal no-op stub
crates and wire them back into [workspace.members] and
[workspace.dependencies] so `cargo metadata` / `cargo fmt` can resolve
the workspace graph.

This unblocks CI (cargo fmt --check was failing with
"dependency.telemetry was not found in workspace.dependencies").
5 crates reference `rpc.workspace = true` (language, editor, project,
notifications, remote_server) and 2 reference `remote.workspace = true`
(project, remote_server). Both crates were deleted by the PR but never
re-stubbed in workspace.dependencies, causing cargo metadata to fail.

Adds minimal no-op stub crates and adds them to workspace members +
dependencies.
Remove the release_channel.workspace = true entries from multiple crate Cargo.toml manifests (32 crates). This cleans up unused/removed workspace dependency references across the workspace to simplify the dependency graph and avoid referencing a no-longer-needed workspace member.
Replaces deleted crate with a minimal stub that:
- Always returns ReleaseChannel::Dev (hardcoded constant)
- Removes env-var and RELEASE_CHANNEL file reading
- Removes ZED_DISABLE_STAFF logic
- Satisfies all downstream `use release_channel::*` imports without
  touching ~30 consumer files
- Keeps gpui Global registration so ReleaseChannel::global(cx) still works
The crate still exists and is referenced by many downstream crates
(agent_ui, git_ui, title_bar, sidebar, project_panel, file_finder, etc).
Removing it from workspace.dependencies broke `cargo metadata` for the
entire workspace. Add it back as a passthrough / kept crate alongside
`remote` until those usages are cleaned up in a later phase.
Commit 8d9a074 wiped the entire workspace Cargo.toml (976 lines → 0),
causing `cargo metadata` / `cargo fmt` to fail with:
  "manifest is missing either a [package] or a [workspace]"

Restore the full file as it stood at 8d9a074's parent.
The key was a typo introduced when restoring the deleted Cargo.toml.
All consumer crates (language_models, etc.) inherit it as `anthropic`,
so the workspace declaration must match.
…toml

Typo in restored Cargo.toml: the key was 'anthropomic' but all consumer
crates reference it as 'anthropic'. This caused cargo metadata to fail
with 'dependency.anthropic was not found in workspace.dependencies'.
…ry crates

Both crates were empty shells causing ~85 downstream compile errors.

feature_flags:
- Re-export all traits (FeatureFlag, FeatureFlagAppExt, FeatureFlagValue)
- Stub FeatureFlagStore global with no-op methods (init, known_flags,
  is_forced_on, resolved_key, override_for, set_override, clear_override)
- Stub FeatureFlagDescriptor, FeatureFlagVariant structs
- Implement register_feature_flag! and FeatureFlagAppExt as no-ops
  (.is_staff() → false, .enabled::<F>() → false)
- Declare all concrete flag types used across the codebase
- generate_feature_flags_schema() returns an empty JSON object schema

telemetry:
- Re-export Telemetry struct with all methods as no-ops (flush_events,
  report_*, start_*, stop_*)
- os_name() / os_version() return empty strings
- event!() macro is a no-op
- Telemetry added to client::telemetry() return type compatibility
@xjayk xjayk added the invalid This doesn't seem right label Jun 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

invalid This doesn't seem right

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant