Repository navigation
feat(task): discover Go workspaces - #11559
Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Central YAML (base), Organization UI (inherited) Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
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. Comment |
Greptile SummaryAdds Go workspace discovery to the monorepo project graph.
Confidence Score: 5/5The PR appears safe to merge. No blocking failure remains; the current implementation resolves direct, ancestor, and chained external symlinks before deciding whether a missing workspace module should be rejected. Important Files Changed
Reviews (8): Last reviewed commit: "feat(task): discover Go workspaces" | Re-trigger Greptile |
d4ed58b to
4d0487c
Compare
Instruction counts
No instruction-count regression above 1%. Only instruction counts gate. Wall clock is shown for context — on identical hardware it moves 4-20% run to run. Measured by tak — instruction-counted CLI benchmarks, stored in this repository's git notes.
|
4d0487c to
d132da1
Compare
d132da1 to
783c41f
Compare
783c41f to
e60016b
Compare
e60016b to
0c21113
Compare
0c21113 to
d492310
Compare
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit d492310. Configure here.
d492310 to
c19df4f
Compare

Summary
go.workusedirectives without requiring the Go executablego:project IDs and provenance from each module'sgo.mod[monorepo.projects]overrides, with documentation and focused coverageWhy
This completes the Go workspace-provider milestone in
TASK_CACHE_PARITY.md. Go workspace membership is authoritative, while task-graph dependency relationships can be supplied explicitly when module metadata does not capture the desired build ordering.Validation
cargo test task::workspace::gomise run test:e2e test_task_go_workspace_graphmise run lint-fixcargo clippy --workspace --all-features --all-targets -- -D warningsAI-assisted — Tool: Codex; model: unavailable/unavailable; version: unavailable.
Note
Low Risk
New optional provider behind existing monorepo graph discovery; no auth or data-path changes, with extensive tests and conservative edge handling.
Overview
Adds Go workspace discovery to the experimental monorepo project graph, alongside existing Cargo, uv, and Node providers.
A new
GoWorkspaceProviderreads rootgo.workusedirectives (single lines and blocks) and each module’sgo.modmodulepath—without invoking thegobinary—to register projects as stablego:<module-path>IDs with provenance andworkspace_sourcemetadata. Modules outside the monorepo root are skipped; missing or invalid modules surface clear errors. Dependency edges are not inferred fromrequire/replace; docs describe using[monorepo.projects]depends_add/dependsinstead.Monorepo graph discovery in config now includes the Go provider in both strict and lenient paths. Documentation covers Go discovery and overrides;
TASK_CACHE_PARITY.mdmarks the Go workspace milestone complete. Coverage includes unit tests ingo.rsand e2etest_task_go_workspace_graph.Reviewed by Cursor Bugbot for commit c19df4f. Bugbot is set up for automated code reviews on this repo. Configure here.