feat: copilot variant styling improvements#5682
Merged
Conversation
a1f9a08 to
389edd4
Compare
Contributor
There was a problem hiding this comment.
Pull request overview
This PR improves the Fluent Theme “copilot” variant styling (notably around adaptive cards) and adds a new “test-assets” build pipeline so HTML tests can rely less on esm.sh for runtime dependencies.
Changes:
- Updated Fluent Theme CSS for copilot variant (image sizing, adaptive card typography/button styling, background clipping).
- Added a new
packages/test/test-assetsworkspace that builds browser-ready ESM bundles for selected dependencies viaesbuild. - Updated test harness HTML import maps and Docker/static serving config to consume the new locally-built test assets.
Reviewed changes
Copilot reviewed 50 out of 70 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
| serve-test.json | Adds route mappings to serve the built test-assets/out files via the test web server. |
| packages/test/test-assets/package.json | Introduces the new internal “test-assets” workspace and build scripts. |
| packages/test/test-assets/module/react.js | Provides an alias module wrapper for React in the bundling flow. |
| packages/test/test-assets/module/react-scheduler.js | Adds a scheduler alias wrapper used by the bundling flow. |
| packages/test/test-assets/module/react-jsx-runtime.js | Adds a JSX runtime alias wrapper used by the bundling flow. |
| packages/test/test-assets/module/react-dom/client.js | Adds a ReactDOM client alias wrapper used by the bundling flow. |
| packages/test/test-assets/module/react-dom.js | Adds a ReactDOM alias wrapper used by the bundling flow. |
| packages/test/test-assets/entry/react.js | Defines a React entry module for bundling/export shaping. |
| packages/test/test-assets/entry/react-jsx-runtime.js | Defines a JSX runtime entry module for bundling. |
| packages/test/test-assets/entry/react-dom/client.js | Defines a ReactDOM client entry module for bundling. |
| packages/test/test-assets/entry/react-dom.js | Defines a ReactDOM entry module for bundling/export shaping. |
| packages/test/test-assets/entry/@fluentui/tokens.js | Defines a Fluent UI tokens entry module for bundling. |
| packages/test/test-assets/entry/@fluentui/react-provider.js | Defines a Fluent UI provider entry module for bundling. |
| packages/test/test-assets/Makefile | Adds the esbuild-based build pipeline to emit browser ESM bundles into out/. |
| packages/test/test-assets/.gitignore | Ignores out/, node_modules/, and the downloaded make.com. |
| packages/fluent-theme/src/components/theme/Theme.module.css | Adds a copilot variant CSS custom property affecting image bubble sizing. |
| packages/fluent-theme/src/components/activity/PartGroupingDecorator.module.css | Adjusts attachment spacing and improves adaptive card styling in copilot variant; adds background clipping. |
| package.json | Adds packages/test/test-assets to the root workspace list. |
| package-lock.json | Locks dependencies for the new workspace and updates the monorepo lock accordingly. |
| docker-compose-wsl2.yml | Mounts packages/test/test-assets/out into the web container for HTML tests. |
| tests/html2/side-by-side/index.html | Switches Fluent imports to locally built assets; adjusts import map entries. |
| tests/html2/part-grouping/status.html | Switches Fluent imports to locally built assets; adjusts imports. |
| tests/html2/part-grouping/position.html | Switches Fluent imports to locally built assets; adjusts imports. |
| tests/html2/part-grouping/navigation.html | Switches Fluent imports to locally built assets; adjusts imports. |
| tests/html2/part-grouping/keyboard.html | Adjusts import map to use locally built Fluent assets and JSX runtime mapping. |
| tests/html2/part-grouping/index.html | Switches Fluent imports to locally built assets; adjusts imports. |
| tests/html2/markdown/math/layout.scroll.html | Switches Fluent imports to locally built assets; adjusts imports. |
| tests/html2/markdown/codeBlockCopyButton/adaptiveCards/layout.copilot.html.snap-1.png | Updates snapshot image to reflect new copilot/adaptive card rendering. |
| tests/html2/linkDefinition/badge.html | Switches Fluent imports to locally built assets; adjusts imports. |
| tests/html2/fluentTheme/uiState.html | Switches Fluent imports to locally built assets; adjusts imports. |
| tests/html2/fluentTheme/uiState.blueprint.nonEnglish.html | Switches Fluent imports to locally built assets; adjusts imports. |
| tests/html2/fluentTheme/fallback.html | Switches Fluent imports to locally built assets; adjusts imports. |
| tests/html2/fluentTheme/defaultFeedback.activity.html | Switches Fluent imports to locally built assets; adjusts imports. |
| tests/html2/feedbackForm/feedback.form.scroll.html | Removes unused Fluent import map entry (keeps React-only imports). |
| tests/html2/copyButton/layout.html | Switches Fluent imports to locally built assets; adjusts imports. |
| tests/html2/citation/url.html | Switches Fluent imports to locally built assets; adjusts imports and JSX runtime mapping. |
| tests/html2/basic/customIcons.html | Removes unused Fluent import map entry (keeps React-only imports). |
| tests/html2/attachment/adaptiveCard/custom.skip.html | Adds a new test page validating adaptive card styling/behavior with the copilot variant. |
| tests/html2/attachment/adaptiveCard/custom.fluent.html | Adds a redirect page for fluent variant coverage of the new test. |
| tests/html2/attachment/adaptiveCard/custom.fluent.dark.html | Adds a redirect page for fluent+dark coverage of the new test. |
| tests/html2/attachment/adaptiveCard/custom.copilot.html | Adds a redirect page for copilot variant coverage of the new test. |
| tests/html2/attachment/adaptiveCard/custom.copilot.dark.html | Adds a redirect page for copilot+dark coverage of the new test. |
| tests/html2/activity/message-status.html | Switches Fluent imports to locally built assets; adjusts JSX runtime mapping. |
| tests/html2/activity/collapsible.html | Switches Fluent imports to locally built assets; adjusts imports. |
| tests/assets/esm/test.js | Adds ESM test bootstrapping helpers for HTML2 tests. |
| tests/assets/esm/postActivity.js | Adds an ESM helper to post activities to the adapter in tests. |
| tests/assets/custom-element/test-shell.ce.html | Adds a new test shell custom element used by the new adaptive card test. |
| tests/assets/custom-element/keyboard-event.ce.html | Updates custom element registration logic to use customElements.getName. |
| tests/assets/custom-element/custom-element.js | Removes the previous getCustomElementName workaround and related bookkeeping. |
| CHANGELOG.md | Adds a changelog entry for improved copilot adaptive card rendering. |
| .github/workflows/pull-request-validation.yml | Ensures the built test-assets/out directory is included in the Docker artifact. |
| .dockerignore | Includes packages/test/test-assets/out in Docker build context for tests. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
__tests__/html2/attachment/adaptiveCard/custom.fluent.dark.html
Outdated
Show resolved
Hide resolved
compulim
reviewed
Feb 2, 2026
* Initial plan * Revert make.com vendoring, add SHA verification and download from Internet Co-authored-by: compulim <1622400+compulim@users.noreply.github.com> * Security: Move chmod after SHA verification Co-authored-by: compulim <1622400+compulim@users.noreply.github.com> * Remove makeComSha256 field, hardcode SHA in build:pre:setup script Co-authored-by: compulim <1622400+compulim@users.noreply.github.com> * Reorder build:pre script: local-dependencies before setup Co-authored-by: compulim <1622400+compulim@users.noreply.github.com> * Use more specific .gitignore patterns with leading/trailing slashes Co-authored-by: compulim <1622400+compulim@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: compulim <1622400+compulim@users.noreply.github.com>
compulim
approved these changes
Feb 3, 2026
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.
Changelog Entry
Description
This includes some improvements for the
copilotvariant rendering adaptive cards.This also introduces a new build pipeline for test assets so we don't depend much on
esm.shstability.Specific Changes
CHANGELOG.mdI have updated documentationReview Checklist
z-index)package.jsonandpackage-lock.jsonreviewed