Merge upstream#3
Open
SimplyRin wants to merge 1571 commits into
Open
Conversation
Change enableCopilotConflictResolution() to use enableBetaFeatures() instead of enableDevelopmentFeatures(), making the feature available to beta users. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
The changelog is not modified in feature PRs. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Add 10 IDailyMeasures counters to track adoption, acceptance, abandonment, errors, stops, overrides, and resolution timing buckets. Add a copilotConflictResolutionModel dimension to getDailyStats(). Counters: - initiateResolveConflictsWithCopilotCount - copilotConflictResolutionAcceptedCount - copilotConflictResolutionWithOverridesCount - copilotConflictResolutionSwitchToManualCount - copilotConflictResolutionStoppedCount - copilotConflictResolutionErrorCount - copilotConflictResolutionOver15sCount - copilotConflictResolutionOver30sCount - copilotConflictResolutionOver60sCount - copilotConflictResolutionOver120sCount Dimension: - copilotConflictResolutionModel (resolved model ID string) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Update Copilot model picker to use ModelInfo and render rows sized by presence of billing data. Add temporary hacks to accommodate current @github/copilot-sdk (cast/ModelBilling import) until upstream types include billing fields. Change SectionFilterList rowHeight prop to accept a function that receives item along with index and adapt internal row height resolution. Update preferences to pass typed models. Adjust unit tests: provide ResizeObserver, query picker via buttons (not selects), assert row heights for compact vs usage-billed items, and make feature-flagged tests async. Small test cleanup (removed unused before import).
Render usage billing below the selected model picker and add container styling. Pass optional className to renderUsageBilling and render selected-model billing inside a new .copilot-model-picker-container. Move billing styles out of nested list rule and add styles for selected billing. Add unit test to verify billing is shown for selected model. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Refactor CopilotModelPicker to support model categories and compact subtitles instead of verbose token billing rows.
Reduce vertical spacing in Copilot model picker UI: decrease compact/subtitle row heights (36→30, 54→46) and remove vertical padding from picker container (padding top/bottom set to 0). These tweaks tighten list row sizing and overall picker vertical spacing for improved visual density. Files changed: app/src/ui/lib/copilot-model-picker.tsx, app/styles/ui/_copilot-model-picker.scss.
Introduce PopoverDecoration.Bordered and helper predicates to centralize decoration logic. Make Popover honor decoration for tip, offsets, and CSS class. Expose decoration prop on PopoverDropdown (default Balloon) and use Bordered in CopilotModelPicker. Update unit tests to assert presence of popover-component, absence of popover-tip for bordered decoration, and adjust expected list item heights accordingly.
Show detailed Copilot model cost and context info in preferences. Adds selection info formatting (token batch/context formatting, reasoning levels, credit number formatting) and exposes a cost-details popover UI with accessibility handlers. Also hardens Popover unmount behavior to avoid setState after unmount, updates styles, and expands unit tests to cover the cost-details UI. Files changed: copilot-model-picker, popover, preferences/copilot, SCSS, and tests.
…-ui-tweaks Remove per-file icon, uncap reasoning, and cap prompt sentences
…beta Switch Copilot conflict resolution to beta
Improve model selection for Copilot commit message generation to consider full billing metadata. Add helpers to determine billing kind, compute per-request cost for tokenPrices (normalized by batchSize), and compute model cost for multiplier or usage pricing. Fall back to treating models with missing billing info as most expensive. Update and add unit tests to cover token-price based selection, batch-size normalization, and treatment of missing billing data.
Import RegistryValue and change findOldWarp to accept a registry value array instead of re-enumerating the key. Update findWarp to pass the previously-read warpRegistry into findOldWarp, add a null/empty guard, and improve the debug logging to prompt users to update Warp. Removes the enumerateValues call from findOldWarp and tightens type checks for registry data.
…lution-telemetry Add telemetry counters for Copilot conflict resolution
Release 3.5.13-beta1
Open existing worktree when invoking from the CLI
…apture [Fixed] Repository list scrolling gets stuck over tall groups
Handle Copilot optional license overrides
The fire-and-forget .then() could allow the process to exit before bundle-hash.json was written. Use synchronous readFileSync + createHash to match the existing getBundleSizes pattern. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Export bundleFiles from app/src/lib/compute-bundle-hash.ts and import it in script/dist-info.ts to eliminate duplication and drift risk. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Move the sync implementation into computeBundleHashSync in the shared module. dist-info.ts now just calls it -- no duplicated algorithm. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
package.ts now imports computeBundleHashSync directly from the shared module -- no unnecessary indirection through dist-info. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Release 3.6.2
Harden truncation length search in `PathText` to avoid repeated state updates that can hit React max update depth. Clamp min/max character bounds safely and, after the first non-fitting result, switch to midpoint narrowing instead of ratio-only stepping. Adds a regression test that mocks span width to keep content non-fitting and asserts rendering does not throw.
Remove `sendNonFatalException` from `TrampolineCommandParser.logCommandCreationError`. Command creation failures are still logged with `log.error`, but no longer reported as non-fatal exceptions to reduce noisy/duplicate error reporting.
Stop sending non-fatal trampoline parse errors
Store Copilot SDK sessions in memory
Add a shared stdio error handler that swallows broken-pipe (`EPIPE`) errors on `process.stdout` and `process.stderr`, while rethrowing all other stream errors. Export the installer for unit testing, and add tests covering both ignored `EPIPE` and thrown non-`EPIPE` errors. Also fix a typo in the transport comment.
Release 3.6.3-beta1
Ignore stdio EPIPE in console transport
…ction Include bundle SHA-256 hashes in error reports
Fall back to the main worktree when the selected linked worktree path has been removed but its git metadata is still available.
Previously, if getFilesDiffText threw (e.g., due to an index.lock file), the error propagated uncaught and the UI would just blink without showing anything to the user. Move the try/catch to wrap the entire callback body inside withIsGeneratingCommitMessage so that any git error (not just Copilot API errors) is surfaced via emitError. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…t-commit-message Surface git errors during Copilot commit message generation
When the app returns from background with new file changes, the SectionList's per-section Grid components may not re-render their cells despite the rowCount changing. This happens because react-virtualized's PureComponent optimization can skip updates when the root Grid's re-render cascade doesn't properly propagate to section grids (especially when render scheduling is throttled while backgrounded). Fix by explicitly calling recomputeGridSize() and forceUpdate() on all section grids whenever rowCount changes, ensuring stale internal caches are cleared and cells are re-rendered. Fixes #20566 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…iew-disappearing-fi Fix disappearing files in Changes view after backgrounding
Fix missing worktree fallback
Remove unused @babel/core and @babel/plugin-transform-modules-commonjs
Prevent PathText truncation update loop
…search Fix commit message @-autocomplete suggesting users without a profile name
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #[issue number]
Description
Screenshots
Release notes
Notes: