Skip to content

Commit 45cebe3

Browse files
amitjoshi438Amit Joshipriyanshu92olprodgithub-actions[bot]
authored
Main to Release (Community Entity Fix) (#1440)
* Enhance CodeQL with telemetry logging and error handling (#1279) * Enhance CodeQL screening with detailed telemetry logging and error handling * Add telemetry logging for SARIF viewer installation and activation events * Remove test for handling null or undefined inputs in CodeQLAction tests * Enhance CodeQL analysis with issue tracking and improved telemetry logging --------- Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * [PowerPages][BL] Refactor completion item handling for namespaces and properties (#1285) Refactor completion item handling to simplify namespace and property insertions Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * [PowerPages][ActionsHub][Codespaces] Update Actions Hub visibility condition for virtual workspaces (#1286) * Update actionsHub visibility condition to use virtualWorkspace * Update localization pipeline node version (#1287) * Update node version * Add manual trigger for localization update workflow - ✨ Added `workflow_dispatch` to allow manual testing of the localization update workflow. -Priyanshu * Fix token handling in localization update workflow (#1288) - 🔧 Added token configuration for checkout step - 🔒 Ensured GITHUB_TOKEN is set for commit and push step -Priyanshu * Remove paths-ignore from PullRequest workflow (#1290) - 🗑️ Deleted paths-ignore section to allow all changes to trigger the workflow. - 🔄 Ensured that localization files are now included in the CI process. -Priyanshu * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2223259 (#1276) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2223259 * Automated localization update from CI * Dummy commit --------- Co-authored-by: Priyanshu Agrawal <priyanshuag@microsoft.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2227356 (#1292) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2227356 * Automated localization update from CI --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * Bump PAC to 1.48.2 (#1293) Co-authored-by: PAC Auto Update Bot <pac-auto-update@microsoft.com> * [Uri Handler] Refactoring Error Handling and Experience (#1291) * Enhance PAC CLI process management with error handling and reset logic in exit and download operations * Refactor handleOpenPowerPages to include progress notifications and improve error handling for URI processing * Refactor URI handling to improve parameter parsing, telemetry data construction, and error handling * Remove duplicate error message displays for missing parameters and download failures in URI handling * Add PowerPagesNavigationConstants for improved code organization and maintainability * Refactor handleOpenPowerPages to directly use selected folder and remove prepareDownloadFolder utility * Refactor URI handler error messages and download progress notifications for clarity and consistency * Add feature flag for 'Open in Desktop' functionality in VSCode Web * Update URI parameters to include WEBSITE_NAME and WEBSITE_PREVIEW_URL for improved flexibility in URI handling * Remove obsolete translation entries related to Power Pages and VS Code Desktop for cleaner localization files * Add localization strings and improve error handling for Power Pages and VS Code Desktop integration * Fix null reference error when killing process in PacInterop --------- Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Enhance website data retrieval with fallback support and new Git ALM format (#1295) Enhance website data retrieval by adding fallback for website name and supporting new Git ALM format in website ID extraction Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Refactor CodeQL screening and clean up dispose method (#1297) * Refactor CodeQL screening to check for .powerpages-site folder existence and clean up dispose method * Clarify comment for .powerpages-site folder existence check in runCodeQLScreening function --------- Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Update CHANGELOG for pac CLI 1.48.2 release (#1298) Update CHANGELOG for pac CLI 1.48.2 release with bug fixes and new features Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Add user roles and authentication token to Server API definitions (#1300) Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Update CHANGELOG for pac CLI version bump to 2.0.100 (#1301) * Update CHANGELOG for pac CLI 1.48.2 release and version bump to 2.1.0 * Update CHANGELOG for pac CLI 1.48.2 release and version bump to 2.0.100 --------- Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2230060 (#1296) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2230060 * Automated localization update from CI --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2236210 (#1303) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2236210 * Automated localization update from CI --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * Refactor HTTP method names for new changes. (#1304) * Refactor HTTP method names to include 'Async' for clarity and update descriptions * Update Server API autocomplete tests and examples to use 'Async' methods for HTTP client --------- Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Bump axios from 1.11.0 to 1.12.1 (#1305) Bumps [axios](https://github.com/axios/axios) from 1.11.0 to 1.12.1. - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md) - [Commits](axios/axios@v1.11.0...v1.12.1) --- updated-dependencies: - dependency-name: axios dependency-version: 1.12.1 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Refactor CodeQL command execution for paths with spaces (#1306) * Refactor CodeQL command execution to handle paths with spaces and add tests for escapePath method * Refactor CodeQL command execution to handle paths with spaces and remove escapePath method and related tests --------- Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Add welcome message for non-interactive login in actions hub (#1308) Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Preserve insertion order and add duplicate file handling feature flag (#1310) * Preserve insertion order of root webpage IDs in processDataAndCreateFile function * Add feature flag for duplicate file handling in webpage folders --------- Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Update CHANGELOG.md for version 2.0.102 with new features and bug fixes (#1311) Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Add comprehensive Memory Bank documentation (#1314) 📝 Created initial Memory Bank structure and core files. 📄 Documented project overview, architecture, and workflows. 🔧 Included detailed descriptions of features and user scenarios. 📊 Established progress tracking and technical context. -Priyanshu * Add telemetry events for desktop opening actions (#1315) Add telemetry events for desktop opening actions and feature flag handling Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Bump tar-fs from 3.1.0 to 3.1.1 (#1312) Bumps [tar-fs](https://github.com/mafintosh/tar-fs) from 3.1.0 to 3.1.1. - [Commits](mafintosh/tar-fs@v3.1.0...v3.1.1) --- updated-dependencies: - dependency-name: tar-fs dependency-version: 3.1.1 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Address CodeQL Issues (#1319) suppress codeql * Add automated workflows for release synchronization and manual syncing (#1317) * Add automated workflows for release synchronization and manual syncing * Potential fix for code scanning alert no. 55: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> * Potential fix for code scanning alert no. 56: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> * Potential fix for code scanning alert no. 57: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> --------- Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> * Update the Suppression Rule ID (#1321) update codeql suppression rule id * Add mermaid code block for memory bank instructions (#1322) * Add mermaid code block for memory bank instructions * Refactor memory bank instructions for clarity - ✏️ Cleaned up mermaid flowchart formatting - 📄 Improved organization of core files section - 🔄 Enhanced documentation updates section for better understanding -Priyanshu * Update GOV Instrumentation Key (#1323) - 🔑 Replaced the GOV instrumentation key with the correct value. -Priyanshu * Bump PAC to 1.49.3 (#1324) Co-authored-by: PAC Auto Update Bot <pac-auto-update@microsoft.com> * Update CHANGELOG for pac CLI 1.49.3 release (#1327) Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Bump PAC to 1.49.4 (#1330) Co-authored-by: PAC Auto Update Bot <pac-auto-update@microsoft.com> * Update CHANGELOG for pac CLI 1.49.4 release (#1331) Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Remove redundant parameters when initializing for VS Code Web (#1325) * Refactor WebExtensionContext and related components to remove multi-file feature references - Removed multi-file feature flags and related telemetry events from webExtensionTelemetryEvents.ts. - Eliminated multi-file feature configuration from ecsFeatureGates.ts. - Updated WebExtensionContext to remove multi-file related properties and methods. - Refactored file system and remote fetch/save providers to use new context properties. - Adjusted utility functions to align with the removal of multi-file feature checks. - Updated error handling and telemetry to reflect changes in context properties. - Modified tests to remove dependencies on multi-file feature parameters. * Refactor WebExtensionContext and related imports - 🔧 Removed unused import of schemaKey from constants - 🔄 Updated schema version handling to use this.schema - 🗑️ Removed removeEncodingFromParameters function - 🔄 Updated references to schemaKey.SCHEMA_VERSION to use this.schema - 🧹 Cleaned up imports in extension.ts and errorHandler.ts -Priyanshu * Remove debug logs from WebExtensionContext - 🗑️ Removed console warnings for dataverseOrgUrl and requestUrl in WebExtensionContext class. -Priyanshu * Fix compile errors * Fix ECS call * Fix tests * Fix tests * Refactor WebExtensionContext schema handling - 🐛 Remove currentSchemaVersion from IWebExtensionContext - ✨ Add tenantId, websiteId, schema, siteVisibility, orgUrl, and region to IWebExtensionContext - 🔄 Update WebExtensionContext to handle schema as optional - 🔍 Modify related functions to use the new schema handling - ✅ Update tests to reflect changes in schema property access -Priyanshu * Fix fetch call and remove async from endpoint method - 🔧 Updated fetch call to use the correct method for getting the endpoint. - 🛠️ Removed unnecessary async/await from getBAPCopilotCrossGeoFlagEndpoint method. - 📦 Simplified the endpoint retrieval process. -Priyanshu * Add localization for environment and website fetching - ✨ Added new localization strings for fetching environment information and website details. - 🔧 Updated error handling to show appropriate messages when fetching fails. -Priyanshu * Update envId extraction in initializeWebsiteDetails - 🔧 Modify envId extraction to get the last segment from the path - 📦 Ensure compatibility with new URL structures -Priyanshu * Update websiteId in WebExtensionContext tests - 🐛 Set websiteId to a specific value in tests - 🔧 Adjusted mock fetch calls to use concurrencyHandler - 📦 Added folderExportType import for better clarity -Priyanshu * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2268216 (#1333) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2268216 * Automated localization update from CI --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * Update documentation for desktop and web extensions (#1334) * Update documentation for desktop and web extensions - ✏️ Added detailed setup and contribution instructions for the desktop extension. - 📄 Created a new document for web extension setup and contribution guidelines. - 📚 Updated directory structure overview with relevant details. -Priyanshu * Update web extension instructions for clarity - 📝 Changed directory path example to a more generic format. - 🔍 Updated test locations to reflect the correct directory structure. - ✏️ Expanded contributing guidelines to clarify changes in both web and desktop extensions. -Priyanshu * Add mapping for 'serverlogics' in DataverseEntityNameMap (#1335) Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Add CodeQl and SARIF Viewer in Extension Pack (#1336) * Add mapping for 'serverlogics' in DataverseEntityNameMap * Add 'github.vscode-codeql' to extensionPack in package.json --------- Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2274016 (#1337) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2274016 * Automated localization update from CI --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * Bump PAC to 1.50.1 (#1341) Co-authored-by: PAC Auto Update Bot <pac-auto-update@microsoft.com> * Update CHANGELOG for pac CLI 1.50.1 release and Extension Pack additions (#1343) * Update CHANGELOG for pac CLI 1.50.1 release * Update CHANGELOG to include CodeQl and SARIF Viewer addition in Extension Pack --------- Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Revert 'Remove redundant parameters when initializing for VS Code Web (#1325)' - This reverts commit 5ede327 due to regression (#1345) Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Update CHANGELOG for version 2.0.109: add bug fix for VSCode Web launch issue (#1346) * Update CHANGELOG for version 2.0.109: add bug fix for VSCode Web launch issue * Fix typo in CHANGELOG for version 2.0.109: correct "Bug Fixe" to "Bug Fix" --------- Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Enhance documentation structure and clarity (#1350) - ✏️ Added formatting improvements across multiple markdown files - 📄 Updated project brief with additional goals and capabilities - 📊 Enhanced progress tracking with detailed feature statuses - 🏗️ Improved system patterns documentation for better architecture understanding -Priyanshu * Update unsupportedProDevCopilotGeoList fallback to empty string (#1351) Update unsupportedProDevCopilotGeoList fallback to an empty string Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Enhance authentication session handling (#1352) - 🔧 Updated session retrieval to include offline access scope. - 🔄 Refactored session handling to create sessions if none exist. - 🛠️ Improved error handling for access token retrieval. -Priyanshu * Updated server logic file to add customjs as suffix (#1353) * Updated server logic file to add customjs as suffix * Moved serverlogic extension name to constants --------- Co-authored-by: Ashwani Kumar <ashwanikumar@microsoft.com> Co-authored-by: ashwani123p <ashwani123p@users.noreply.github.com> * Add MCP configuration for GitHub and Microsoft Docs (#1354) - 🎉 Introduced MCP configuration file with server details - 🌐 Added GitHub API endpoint for MCP - 📚 Included Microsoft Docs API endpoint for MCP -Priyanshu * Fix Invalid URL error in Page Template Autocomplete for VSCode Desktop (#1357) * Initial plan * Fix Invalid URL error in Page Template Autocomplete for VSCode Desktop - Add toFileSystemPath() and toFileURL() helpers to handle both file:// URIs and plain paths - Normalize paths to file system format in searchPortalConfigFolder() for consistent comparison - Update PortalManifestReader to use fileURLToPath() for fs operations - Add comprehensive unit tests for PathFinderUtil - Add protection against infinite recursion at filesystem root Co-authored-by: amitjoshi438 <54068463+amitjoshi438@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: amitjoshi438 <54068463+amitjoshi438@users.noreply.github.com> * Bump PAC to 1.51.1 (#1355) Co-authored-by: PAC Auto Update Bot <pac-auto-update@microsoft.com> * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2313106 (#1348) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2313106 * Automated localization update from CI --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * Refactor Actions Hub (#1360) * Refactor Actions Hub Refactor Actions hub into multiple action files to improve readability and code management. * Rename actions to handlers * Update references * Rename folder * Fix tests * Fix tests * Fix * Fix * Update CHANGELOG.md for version 2.0.110 with bug fix for page-template autocomplete issue (Desktop) (#1361) Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Add support for optional parameters and new EnvironmentVariable methods in Server API (#1362) Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Update CHANGELOG.md for version 2.0.111 with pac CLI 1.51.1 (#1364) Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * [Powerpages] Add support for blogs, ideas & forums entity in web ext schema (#1342) * Add support for blogs entity in web schema and utilities - Add BLOGS to schemaEntityName and MultiFileSupportedEntityName enums - Add portal schema entries for blogs in V1 and V2 - Include BLOGS in isExtensionNeededInFileName so blog files get extensions handled * Gate blog entity support behind ECS feature flag - Add EnableBlogSupport feature flag in ECS feature gates - Conditionally include 'blogs' entity in portal schema V1 and V2 based on the flag - Add null checks in folderHelperUtility to skip entities not present in schema (e.g., blogs when feature is off) * Add support for ideas entity in schema and utilities * Add support for Idea Forums entity in schema and utilities * Add support for lazy(conditional) folder creation for blogs, ideas, and ideaforums * Add support for Forum Announcements entity in schema and utilities * Add support for Forum Posts entity and enhance lazy folder creation logic * Add support for blog posts and forum entities in schema and utilities * Add support for Forum Announcements and Forum Posts entities in portal schema * Refine multi-file fetch query parameters for blog and idea entities to include website ID filter * Enhance multi-file fetch query parameters for forum announcements to include website ID filter * Add tests for GetFileNameWithExtension and folderHelperUtility functions * Add unit tests for GetFileNameWithExtension with various entity types * Remove tests for folderHelperUtility and clean up remoteFetchProvider tests --------- Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * [MDiff] Add compare with local action in Power Pages Actions (#1363) * Initial commit * Show diff * Implement feature * Add tests * Updated schema of server logic for sdm sites (#1373) Co-authored-by: ashwani123p <ashwani123p@users.noreply.github.com> * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2349483 (#1374) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2349483 * Automated localization update from CI --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * [MDiff] Add metadata diff file decoration and view mode handlers (#1366) * Add metadata diff file decoration and view mode handlers - ✨ Implemented `MetadataDiffDecorationProvider` for file decorations based on status (modified, added, deleted). - 🔄 Updated `CompareWithLocalHandler` to await error messages for better user experience. - 🆕 Created `ToggleViewModeHandler` to switch between tree and list view modes. - 📁 Enhanced `MetadataDiffFileTreeItem` to use custom URI scheme for decorations and improved tooltip. - 📊 Modified `MetadataDiffGroupTreeItem` to support flat file listing in list view mode. - 🧪 Added tests for new functionality including view mode toggling and metadata diff file handling. -Priyanshu * Fix applyTo path format in instructions file * Fix applyTo path syntax in web extension instructions * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2351121 (#1378) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2351121 * Automated localization update from CI --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * Add permissions section to GitHub workflows (#1382) - ✅ Ensured permissions section is consistently defined -Priyanshu * Potential fix for code scanning alert no. 33: Incomplete string escaping or encoding (#1381) Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> * [MDiff] Update metadata diff handlers and tests (#1376) * [Mdiff] Update metadata diff handlers and tests - Show full path of the local file in tooltip and in discard changes dialog - When "Comparing with Environment", show the list of websites for the selected environment. Show a confirmation when user selects a site different from current site. - Remove the current environment name from environment list which is connected in Actions Hub - Add a subtext for the website in website quickpick if it exists in the environment. - Add time taken to download the site in telemetry - "Compare with Environment" is for contextual comparison. Only the folder which is right clicked by user is shown in comparison view - When viewing as tree, show all the folders first by alphabetical order and then all the files in alphabetical order. - Priyanshu * [MDiff] Add HTML report generation for metadata diff (#1377) * [MDiff] Add HTML report generation for metadata diff This update introduces functionality to generate and download an HTML report for metadata differences in Power Pages. - ✨ Added command to generate HTML report in the actions hub. - 📝 Implemented HTML report generation logic in a new handler. - 🎨 Created a detailed HTML template for the report with styling. - 🔧 Updated package and localization files to support new features. - ✅ Added integration and unit tests for the new functionality. -Priyanshu * [MDiff] Add new metadata diff commands - ✨ Added commands for opening files and all metadata diffs - ✨ Included commands for clearing and removing sites - ✨ Implemented sorting options for metadata diffs - ✨ Added command to generate HTML report for metadata diffs -Priyanshu * [MDiff] Add export and import support for metadata diff (#1379) * [MDiff] Add export and import support for metadata diff - 🆕 Added `ExportMetadataDiffHandler` tests to validate file export functionality. - 🔄 Updated `ClearMetadataDiffHandler` and `GenerateHtmlReportHandler` tests to include website and environment IDs. - 🆕 Introduced `ImportMetadataDiffHandler` tests for file import functionality. - 🔄 Refactored `OpenAllMetadataDiffsHandler` tests to utilize a helper function for creating site results. - 🔄 Enhanced `OpenMetadataDiffFileHandler` tests to include telemetry for imported comparisons. - 🔄 Updated `MetadataDiffFileTreeItem` and `MetadataDiffSiteTreeItem` tests to validate new properties and behaviors. - 🔄 Adjusted `MetadataDiffGroupTreeItem` tests to include website and environment IDs in context. -Priyanshu * [MDiff] Add resync functionality for metadata comparisons (#1380) * [MDiff] Add resync functionality for metadata comparisons ✨ Implemented resync command to refresh site comparisons. 📝 Updated localization files for new messages. 🔧 Registered resync command in ActionsHub. ✅ Added tests for resync functionality and edge cases. -Priyanshu * Add clipboard functionality to environment and site details - ✨ Implemented clipboard mock for testing in ShowEnvironmentDetailsHandler and ShowSiteDetailsHandler. - 🔄 Updated tests to check clipboard interactions when showing environment and site details. - 📝 Adjusted mockShowInformationMessage responses to handle undefined cases. -Priyanshu * Add data model version support for metadata diff - ✨ Introduced `dataModelVersion` parameter in relevant functions and interfaces. - 🔧 Updated `setResults`, `processComparisonResults`, and comparison handlers to utilize the new parameter. - 📦 Enhanced `MetadataDiffSiteTreeItem` to store and retrieve the data model version. -Priyanshu * Add site clearing logic for resync completion - ✨ Implemented logic to clear site from MetadataDiffContext when no differences are found after resync. - 🔧 Updated tests to verify the new behavior for both scenarios: with and without differences. -Priyanshu * Improve UI responsiveness for no differences notification - 🚀 Show notification without blocking UI updates - 🔧 Adjusted await behavior in processComparisonResults -Priyanshu * Refactor telemetry event names for metadata diff 🎨 Updated telemetry event names to include "Called" suffix for clarity. 🔧 Adjusted corresponding traceInfo calls in handlers and tests. 🧪 Modified tests to reflect changes in telemetry event names. -Priyanshu * Add metadata diff export/import error handling ✨ Add constants for metadata diff export title and error messages. 🔧 Update exportMetadataDiff to use new error handling constants. 🔧 Update importMetadataDiff to use new error handling constants. -Priyanshu * Add missing loc files (#1383) * [MDiff] Hide discard actions for imported comparison (#1384) [MDiff] Enhance metadata diff functionality - ✨ Do not show discard actions for imported comparison - ✅ Extend tests to verify behavior for imported metadata diff items -Priyanshu * Fix dependabot alerts (#1387) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2352523 (#1386) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2352523 * Automated localization update from CI --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * Fix remaining dependabot alerts (#1388) - Updated @microsoft/generator-powerpages to 1.39.3 - Added npm overrides to force vulnerable packages to safe versions: - tmp: ^0.2.4 (was <= 0.2.3) - @octokit/request: ^8.4.1 (was <= 8.4.0) - @octokit/plugin-paginate-rest: ^9.2.2 (was <= 9.2.1) - @octokit/request-error: ^5.1.1 (was <= 5.1.0) - Fixes dependabot alerts #87, #69, #68, #67 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com> * Add Claude Code project instructions (#1389) Added CLAUDE.md with comprehensive guidance for Claude Code when working with this repository, including: - Project overview and architecture details - Build commands and development workflow - Coding standards and conventions - Testing patterns and debugging instructions - Power Platform specific patterns and best practices 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com> * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2353914 (#1390) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2353914 * Automated localization update from CI --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * [ServerLogic] Add Server Logic Debugger with CodeLens and Runtime Loader (#1385) * Add Server Logic debugging: mock SDK, runtime loader, CodeLens, and run/debug commands - Implement local Server Logic debugger with mock Power Pages SDK (src/debugger/server-logic/ServerLogicMockSdk.ts) - Provide debug configuration provider, runtime loader generation, commands for Debug/Run/Generate Mock Data, and welcome notification (ServerLogicDebugger.ts, sample-server-logic.js, README.md, index.ts) - Add CodeLens provider to show inline "Debug" / "Run" actions (ServerLogicCodeLensProvider.ts) and register it on activation - Wire activation into extension (activateServerLogicDebugger in extension.ts) - Add package.json contributions: debug/run commands, snippets, editor/context entries - Add telemetry events for debug/run/mock-template actions - Enable generation of .vscode/mock-data.json and support loading custom mock data * Enhance server logic debugging support: refine CodeLens for standard functions, avoid loader overwrite * Refactor debug configuration to use internal console for server logic debugging * Refactor parameter names in CodeLens and DebugProvider to improve clarity * Remove function level debug * Remove unused command and telemetry for generating mock data template; localize debug/run titles and messages * Update comments in ServerLogicMockSdk for clarity and usage instructions * No code changes made; empty commit. * Remove implementation summary for Power Pages Server Logic Debugging * Remove unused command for debugging server logic in navigation * Refactor ServerLogicCodeLensProvider and ServerLogicDebugger for improved clarity and functionality; add isServerLogicFile method and register CodeLens provider * Enhance Server Logic Debugging: Refactor file checks and debug configuration creation for improved clarity and functionality * Enhance Server Logic Debugging: Add runtime loader file management and ensure global availability of Server API for debugging * Remove outdated README and sample server logic file for server logic debugging * Enhance Server Logic Debugging: Update exports in index.ts and add integration tests for ServerLogicDebugger * Remove UI Enhancement Summary document for Server Logic Debugging * Enhance Server Logic Debugging: Update enablement regex for server logic commands to support both forward and backward slashes * Add constants for Server Logic configuration, files, URLs, and strings * Update Server Logic documentation URL for 'Learn More' link * Enhance server logic debugging telemetry events and improve logging details * Refactor server logic commands and improve debugging support with new command structure * Update code lens provider patterns for server logic files --------- Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2355203 (#1392) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2355203 * Automated localization update from CI --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * Add tenantId to initialization context in activate function (#1393) Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Add server logic debug command and welcome notification (#1394) * Add debug command for Server Logic in navigation group * Refactor debug configuration resolution to handle server logic files more clearly * Show welcome notification for server logic files in active editor --------- Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2358438 (#1395) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2358438 * Automated localization update from CI --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * Add URL-encoded body processing and refactor HTTP methods (#1397) * Add body processing for URL-encoded content type in HttpClient * Remove default contentType parameter from DeleteAsync method in Server logic mock SDK * Refactor URL parsing to use the URL constructor and update path and port handling in Server logic mock SDK * Add server logic debugging feature toggle and telemetry events * Enable server logic debugging context in command visibility --------- Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * [Actions Hub] Implement pre-authentication for website fetching (#1398) * [Actions Hub] Implement pre-authentication for website fetching - ✨ Added preAuthenticateForWebsites method to handle authentication before fetching websites. - 🔒 Introduced logging for pre-authentication events (started, completed, skipped, failed). - 🧪 Added unit tests to verify pre-authentication behavior and error handling. - 📄 Updated Constants to include new event names related to pre-authentication. - 🛠️ Created settings.local.json for permission configurations. -Priyanshu * Remove settings.local.json from tracking * Add settings.json for permission configurations - ✨ Create a new settings.json file - 🔑 Define permissions for allowed Bash commands - ✅ Include commands for build and test processes -Priyanshu * [MDiff] Update command order (#1399) Update command order for Metadata Diff Group Tree Item and Site Tree item. The updated order for GroupTreeItem is: 1. View as Tree/List 2. Import Comparison 3. Clear All Comparison The updated order for SiteTreeItem is: 1. Open All Diff 2. Refresh Comparison 3. Download HTML Report 4. Export Comparison 5. Remove Comparison * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2360375 (#1400) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2360375 * Automated localization update from CI --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * Add input validation and error handling (#1402) ✨ Introduced user input validation and sanitization across multiple components. 🔧 Updated error constants to include feedback input validation error. 🛠️ Refactored relevant functions to utilize the new validation utility. - Priyanshu * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2362030 (#1403) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2362030 * Automated localization update from CI --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * Update runtime loader filename in Server Logic debugger constants (#1401) Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * [MDiff] Implement read-only file support in metadata diff (#1404) * [MDiff] Implement read-only file support in metadata diff ✨ Added ReadOnlyContentProvider to handle read-only files. 🔗 Integrated read-only URIs in metadata diff handlers. 🧪 Added tests for ReadOnlyContentProvider functionality. 📝 Updated existing tests to verify read-only behavior. -Priyanshu * [MDiff] Remove unmockable fs method tests from ReadOnlyContentProvider Remove tests that attempted to stub fs.existsSync and fs.statSync, which are non-configurable properties and cannot be mocked with sinon. The remaining tests cover URI creation, singleton pattern, and write operation restrictions. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com> * Add localization for server logic debugging commands and update RUNTIME_LOADER filename (#1407) * Add localization for server logic debugging commands and update editor buttons * Update RUNTIME_LOADER filename for CommonJS compatibility in Server Logic debugger --------- Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * [MDiff] Add remote site information in HTML and JSON reports (#1405) * [MDiff] Enhance metadata diff reports - ✨ Added new fields for website details in metadata diff - 📝 Updated HTML report to include website information - 🔧 Modified handlers to support new data model attributes - 🔍 Improved site visibility and creator tracking in comparisons * Add site metadata fields to diff handlers and tests - ✨ Introduced new metadata fields: dataModelVersion, websiteUrl, siteVisibility, creator, and createdOn in ExportMetadataDiffHandler, GenerateHtmlReportHandler, and ResyncMetadataDiffHandler. - 🧪 Updated tests in MetadataDiffSiteTreeItem to validate new fields and their handling of optional values. -Priyanshu * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2365554 (#1408) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2365554 * Automated localization update from CI --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * [MDiff] Update metadata diff labels and add clear functionality (#1409) ✨ Renamed "Metadata Diff" to "Site Comparison" for clarity. ✨ Added confirmation dialogs for clearing metadata diff results. ✨ Implemented functionality to clear individual site comparisons. ✨ Updated localization files with new labels and messages. ✨ Added tests for new clear functionality and site comparison behavior. -Priyanshu * [MDiff] Add welcome experience and site-level discard functionality (#1412) - Add welcome tree items with CTA for first-time users of site comparison - Implement DiscardSiteChangesHandler to discard all local changes at site level - Replace generic icons with custom download/upload SVGs for export/import - Update report labels: "Site Comparison Report", "Added/Deleted Locally" - Reorganize inline menu buttons for better UX - Refactor MultiStepInput utility for improved maintainability - Add comprehensive tests for new features * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2366357 (#1413) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2366357 * Automated localization update from CI --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * Fix qs vulnerability (#1415) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2370619 (#1416) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2370619 * Automated localization update from CI --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * Remove server logic debugging ECS flag (#1417) Remove server logic debugging feature ecs and related checks Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2373312 (#1419) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2373312 * Automated localization update from CI --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * Bump PAC to 1.52.1 (#1420) Co-authored-by: PAC Auto Update Bot <pac-auto-update@microsoft.com> * [MDiff] Support comparing BYOC Sites (#1418) * Enhance site comparison functionality - ✨ Added `downloadCodeSiteWithProgress` method for real-time download feedback. - 🔄 Updated constants for improved clarity in export/import titles. - 🛠️ Modified handlers to differentiate between code sites and regular sites during downloads. - 📦 Enhanced test coverage for new download behaviors and site comparisons. -Priyanshu * Update metadata diff handling and translations - 🔄 Renamed "Export Metadata Diff" to "Export Site Comparison" in translations. - 🔄 Renamed "Import Metadata Diff" to "Import Site Comparison" in translations. - ➕ Added "Site Comparison JSON" entry in translations. - ➕ Enhanced metadata diff utilities to handle code site comparisons. - ➕ Implemented logic to read and parse `powerpages.config.json`. - ➕ Added support for filtering source files based on `.gitignore` and config patterns. - ➕ Introduced tests for new functionalities in `MetadataDiffUtils`. - 🔧 Updated comparison logic to handle code site scenarios effectively. -Priyanshu * Fix tests * Update CHANGELOG for pac CLI 1.52.1 and other changes (#1421) * Update CHANGELOG for pac CLI 1.52.1 and new Server Logic features * Update CHANGELOG for 2.0.113: Add debugging support for Server Logics and introduce 'Tools' section with 'Site Comparison' tool --------- Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Update CHANGELOG for version 2.0.116 (#1423) Update CHANGELOG for version 2.0.116 with new features and improvements Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2374631 (#1425) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2374631 * Automated localization update from CI --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * Update multi-file fetch queries to use _adx_powerpagesiteid_value (#1426) Update portalSchema to use _adx_powerpagesiteid_value for multi-file fetch queries Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2379526 (#1427) * Localized file check-in by OneLocBuild Task: Build definition ID 12756: Build ID 2379526 * Automated localization update from CI --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * Fix high severity tar vulnerability (CVE-2026-23745) (#1433) - Add tar ^7.5.3 to npm overrides to fix GHSA-8qq5-rm4j-mr97 - Resolves Dependabot alert #105 for arbitrary file overwrite - Updates tar from 6.2.1 to 7.5.3 via override Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com> * Migrate Copilot instructions to Agents.md format (#1434) - Remove GitHub Copilot instruction files (.github/copilot-instructions.md and .github/instructions/*.md) - Remove root CLAUDE.md in favor of .claude/CLAUDE.md - Add Agents.md as primary instruction source at root - Add memory-bank/Agents.md for memory bank documentation - Add src/client/Agents.md for desktop extension instructions - Add src/web/Agents.md for web extension instructions - Add .claude/CLAUDE.md referencing Agents.md Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com> * Replace CLAUDE.md with symlink to Agents.md (#1435) - Convert .claude/CLAUDE.md from regular file to symbolic link - Point symlink to ../Agents.md for single source of truth - Reduces duplication and simplifies maintenance Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com> * Enable Metadata Diff comparison in VS Code Desktop (#1437) - 🎚️ Set enableMetadataDiff to true for feature activation -Priyanshu * Enhance blog support feature integration (#1436) * ecsFixForBlogSupport * Update multiFileFetchQueryParameters to include websiteId filter for community entities --------- Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Add large file handling for metadata diff reports (#1439) * Add large file handling for metadata diff reports - Add file size limits (5MB for HTML diff, 20MB for export) - Skip LCS algorithm for files with >20k lines, show summary instead - Add localized strings for large file messages - Update Agents.md with workflow guidelines Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * Add tests for large file handling in metadata diff - Add tests for file size checks in GenerateHtmlReportHandler - Add tests for 20MB export limit in ExportMetadataDiffHandler - Test file size checks for different status types (ADDED, DELETED, MODIFIED) - Test binary file exclusion from size checks Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com> * Update CHANGELOG for version 2.0.118 bug fix (#1438) Update CHANGELOG.md to include bug fix for version 2.0.118 Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> * Remove unused imports from portalSchema.ts --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: Amit Joshi <amitjoshi@microsoft.com> Co-authored-by: Priyanshu Agrawal <priyanshuag@microsoft.com> Co-authored-by: olprod <olprod@microsoft.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: PAC Auto Update Bot <pac-auto-update@microsoft.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Sandeep Satheesh <sansth4x496@gmail.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: Ashwani Kumar <ashwanikumar1303@gmail.com> Co-authored-by: Ashwani Kumar <ashwanikumar@microsoft.com> Co-authored-by: ashwani123p <ashwani123p@users.noreply.github.com> Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com> Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
1 parent 552dd21 commit 45cebe3

File tree

17 files changed

+514
-504
lines changed

17 files changed

+514
-504
lines changed

.claude/CLAUDE.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../Agents.md

.github/instructions/directoryStructure.instructions.md

Lines changed: 0 additions & 430 deletions
This file was deleted.
Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
1-
# Instructions
1+
# Agents Instructions
2+
3+
## General Guidelines
4+
5+
Always read memory bank information from [memory-bank/Agents.md](memory-bank/Agents.md)
26

37
## Architecture Overview
48

@@ -75,6 +79,11 @@ await pacWrapper.executeCommand(['solution', 'list']);
7579
- Use JSDoc style comments for functions, interfaces, enums, and classes
7680
- Include parameter descriptions and return types
7781

82+
### Workflow
83+
84+
- Use async/await for asynchronous code
85+
- When modifying any localization strings, run `npm run translations-export` to ensure updates are captured.
86+
7887
## Testing Patterns
7988

8089
### Framework Usage

CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
# Change Log - Power Platform Extension
22

3+
## 2.0.118
4+
- Bug Fix
5+
36
## 2.0.116
47
- pac CLI 1.52.1, (see release notes on [nuget.org](https://www.nuget.org/packages/Microsoft.PowerApps.CLI/))
58
- Rollout of debugging support for Server Logics (Desktop)([Server logic](https://learn.microsoft.com/en-us/power-pages/configure/server-logic-overview))

l10n/bundle.l10n.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -422,6 +422,10 @@
422422
"Unable to read local file": "Unable to read local file",
423423
"Unable to read remote file": "Unable to read remote file",
424424
"Unable to read one or both files": "Unable to read one or both files",
425+
"File is too large to display diff (exceeds 5MB)": "File is too large to display diff (exceeds 5MB)",
426+
"File is too large for detailed diff comparison": "File is too large for detailed diff comparison",
427+
"lines": "lines",
428+
"Difference": "Difference",
425429
"Exporting comparison...": "Exporting comparison...",
426430
"Export Site Comparison": "Export Site Comparison",
427431
"Importing comparison...": "Importing comparison...",

loc/translations-export/vscode-powerplatform.xlf

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -404,6 +404,9 @@ Check the CodeQL extension panel for available queries.</source>
404404
<trans-unit id="++CODE++9a983b9151d6fc6165f094e95ba9ba8cb588b59345cf8956f8fb77ee7ce36be2">
405405
<source xml:lang="en">Deleted locally</source>
406406
</trans-unit>
407+
<trans-unit id="++CODE++4d280a451d04b7a51a7e302e0222ad77bb1e531f922b6193be115358256c245f">
408+
<source xml:lang="en">Difference</source>
409+
</trans-unit>
407410
<trans-unit id="++CODE++e07e053c2e10b3f1b6aef657d937cd91d45df4e40242788d7d621faea3380c27">
408411
<source xml:lang="en">Discard Changes</source>
409412
</trans-unit>
@@ -603,6 +606,12 @@ The {3} represents Solution's Type (Managed or Unmanaged), but that test is loca
603606
<trans-unit id="++CODE++2a8ddde521f14ecd4a8717f2bcf9a2b021fa38a578518066d2ae32271aa95237">
604607
<source xml:lang="en">Fetching your file ...</source>
605608
</trans-unit>
609+
<trans-unit id="++CODE++8e76f8a5d51c8a06c8aa71cf5fbce0108993ed2becb686cbde33372fd00b555d">
610+
<source xml:lang="en">File is too large for detailed diff comparison</source>
611+
</trans-unit>
612+
<trans-unit id="++CODE++7701aaed77c66a5f257cce47adf0e5a1082304a7a6cc6e803aacc2c9882b2cfc">
613+
<source xml:lang="en">File is too large to display diff (exceeds 5MB)</source>
614+
</trans-unit>
606615
<trans-unit id="++CODE++7b351789f09522eb21ab2637f1b063ff2a41451a7130138b41f142a6fe5d249e">
607616
<source xml:lang="en">File might be referenced by name {0} here.</source>
608617
<note>{0} represents the name of the file</note>
@@ -1446,6 +1455,9 @@ The {3} represents Dataverse Environment's Organization ID (GUID)</note>
14461455
<source xml:lang="en">dotnet sdk 6.0 or greater must be installed</source>
14471456
<note>Do not translate 'dotnet' or 'sdk'</note>
14481457
</trans-unit>
1458+
<trans-unit id="++CODE++5ea44c3961f16643e614435496b16115aa6d75458b5cc3fd5398aae291f3126b">
1459+
<source xml:lang="en">lines</source>
1460+
</trans-unit>
14491461
<trans-unit id="++CODE++21c9bbf3ca8756722337933b27566345c8aa2794231295a3ede6204329456931">
14501462
<source xml:lang="en">pac pcf init</source>
14511463
</trans-unit>

memory-bank/Agents.md

Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
# Memory Bank
2+
3+
I am an expert software engineer with a unique characteristic: my memory resets completely between sessions. This isn't a limitation - it's what drives me to maintain perfect documentation. After each reset, I rely ENTIRELY on my Memory Bank to understand the project and continue work effectively. I MUST read ALL memory bank files at the start of EVERY task - this is not optional.
4+
5+
## Memory Bank Structure
6+
7+
The Memory Bank consists of core files and optional context files, all in Markdown format. Files build upon each other in a clear hierarchy:
8+
9+
```mermaid
10+
flowchart TD
11+
PB[projectbrief.md] --> PC[productContext.md]
12+
PB --> SP[systemPatterns.md]
13+
PB --> TC[techContext.md]
14+
PC --> AC[activeContext.md]
15+
SP --> AC
16+
TC --> AC
17+
AC --> P[progress.md]
18+
```
19+
20+
### Core Files (Required)
21+
22+
1. projectbrief.md
23+
2. productContext.md
24+
3. activeContext.md
25+
4. systemPatterns.md
26+
5. techContext.md
27+
6. progress.md
28+
29+
### Additional Context
30+
31+
Create additional files/folders within memory-bank/ when they help organize:
32+
33+
- Complex feature documentation
34+
- Integration specifications
35+
- API documentation
36+
- Testing strategies
37+
- Deployment procedures
38+
39+
## Core Workflows
40+
41+
### Planning Mode
42+
43+
```mermaid
44+
flowchart TD
45+
Start[Start] --> ReadFiles[Read Memory Bank]
46+
ReadFiles --> CheckFiles{Files Complete?}
47+
CheckFiles -->|No| Plan[Create Plan]
48+
Plan --> Document[Document in Chat]
49+
CheckFiles -->|Yes| Verify[Verify Context]
50+
Verify --> Strategy[Develop Strategy]
51+
Strategy --> Present[Present Approach]
52+
```
53+
54+
### Editing Mode
55+
56+
```mermaid
57+
flowchart TD
58+
Start[Start] --> Context[Check Memory Bank]
59+
Context --> Update[Update Documentation]
60+
Update --> Execute[Execute Task]
61+
Execute --> Document[Document Changes]
62+
```
63+
64+
## Documentation Updates
65+
66+
Memory Bank updates occur when:
67+
68+
1. Discovering new project patterns
69+
2. After implementing significant changes
70+
3. When user requests with **update memory bank** (MUST review ALL files)
71+
4. When context needs clarification
72+
73+
```mermaid
74+
flowchart TD
75+
Start[Update Process]
76+
77+
subgraph Process
78+
P1[Review ALL Files]
79+
P2[Document Current State]
80+
P3[Clarify Next Steps]
81+
P4[Document Insights & Patterns]
82+
83+
P1 --> P2 --> P3 --> P4
84+
end
85+
86+
Start --> Process
87+
```
88+
89+
Note: When triggered by **update memory bank**, I MUST review every memory bank file, even if some don't require updates. Focus particularly on activeContext.md and progress.md as they track current state.
90+
91+
REMEMBER: After every memory reset, I begin completely fresh. The Memory Bank is my only link to previous work. It must be maintained with precision and clarity, as my effectiveness depends entirely on its accuracy.

package-lock.json

Lines changed: 52 additions & 32 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1856,6 +1856,7 @@
18561856
"@octokit/request": "^8.4.1",
18571857
"@octokit/plugin-paginate-rest": "^9.2.2",
18581858
"@octokit/request-error": "^5.1.1",
1859-
"qs": "^6.14.1"
1859+
"qs": "^6.14.1",
1860+
"tar": "^7.5.3"
18601861
}
18611862
}

src/client/Agents.md

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
# VS Code Desktop Extension
2+
3+
## 1. Project Overview
4+
5+
- The Power Platform VS Code extension desktop code is under `src/client/`.
6+
- Key files: `src/client/extension.ts` (entry), `package.json` (manifest), `src/client/lib/` (CLI integration), `src/client/power-pages/` (Power Pages tooling).
7+
8+
## 2. Development Environment
9+
10+
- Node.js 18+ and npm 9+ required.
11+
- Install dependencies: `npm install`
12+
- Build extension: `gulp ci`
13+
- Test extension: `npm run test-desktop-int`
14+
- Debug/launch in VS Code using provided launch configs.
15+
16+
## 3. Coding Standards
17+
18+
- TypeScript, 4-space indentation, arrow functions preferred.
19+
- Externalize all user-facing strings with `vscode-nls`.
20+
- PascalCase for types/enums, camelCase for functions/variables.
21+
- JSDoc comments for exported functions, classes, interfaces.
22+
23+
## 4. Key Architectural Patterns
24+
25+
- **PAC CLI Integration:** Use `PacWrapper` for CLI operations.
26+
- **Telemetry:** Use `oneDSLoggerWrapper` for events.
27+
- **Service Architecture:** Core services in `src/common/services/`.
28+
29+
## 5. Testing
30+
31+
- Unit tests: `npm run test`
32+
- Integration tests: `npm run test-desktop-int`
33+
- Use Mocha, Chai, Sinon. Mock dependencies.
34+
35+
## 6. Contribution Workflow
36+
37+
- Fork and clone repo. Create feature branch from `main`.
38+
- Make changes in `src/client/` for desktop features.
39+
- Cover new code with tests. Run all tests before PR.
40+
- Submit PR with clear description.
41+
42+
## 7. Localization
43+
44+
- Update localization files in `l10n/` and `localize/` as needed.
45+
- Add new strings to `package.nls.json`.
46+
47+
## 8. Common Tasks
48+
49+
- Add commands: update `package.json`, implement in `src/client/extension.ts`.
50+
- PAC CLI: use `PacWrapper`.
51+
- Telemetry: use `oneDSLoggerWrapper`.
52+
- UI: update files in `src/client/` and assets in `src/client/assets/`.
53+
54+
## 9. Reference Docs
55+
56+
- See `.github/copilot-instructions.md` for architecture/coding guidelines.
57+
- See `README.md` for project info.

0 commit comments

Comments
 (0)