Skip to content

Add copilot instruction files for sample conventions#77

Open
diberry wants to merge 9 commits intoAzure-Samples:mainfrom
diberry:ci/copilot-instructions
Open

Add copilot instruction files for sample conventions#77
diberry wants to merge 9 commits intoAzure-Samples:mainfrom
diberry:ci/copilot-instructions

Conversation

@diberry
Copy link
Copy Markdown
Collaborator

@diberry diberry commented Apr 30, 2026

Summary

Adds copilot instruction files documenting how samples should be built in this repo.

⚠️ Depends on PR #74 — diff will be large until #74 merges article2/select-algorithm into main, at which point only the net-new changes will show.

Files

  • .github/copilot-instructions.md\ - Main shared conventions (naming, env vars, lifecycle)
  • .github/copilot-instructions-{language}.md\ - Language-specific patterns (bulk insert, env loading)

Depends on

diberry and others added 9 commits April 29, 2026 12:19
Implement vector index algorithm comparison samples (IVF, HNSW, DiskANN)
for Python, TypeScript, Go, Java, and C#/.NET.

Each sample demonstrates:
- IVF index creation (numLists=10) for <10K documents
- HNSW index creation (m=16, efConstruction=64) for 10K-50K documents
- DiskANN index creation (maxDegree=20, lBuild=10) for 50K+ documents
- Vector search using \ aggregation with cosmosSearch
- Passwordless auth via DefaultAzureCredential/OIDC

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Java: Fix TOKEN_RESOURCE from cosmos.azure.com to ossrdbms-aad.database.windows.net
- TypeScript IVF: Remove inconsistent returnStoredSource field
- .NET .env.example: Fix vector field name to contentVector, remove unused AZURE_TENANT_ID
- Java .env.example: Remove unused AZURE_MANAGED_IDENTITY_PRINCIPAL_ID
- Python .env.example: Fix API version to 2023-05-15 for consistency

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…onBuilder

- Remove DotNetEnv package, add Microsoft.Extensions.Configuration packages
- Add appsettings.json with strongly-typed config sections
- Add Models/Configuration.cs with AppConfiguration classes
- Update Program.cs to use ConfigurationBuilder (json + env var override)
- Update Utils.cs to accept AppConfiguration parameter
- Update all demo Run() methods to receive config from Program.cs
- Delete .env.example (no longer needed)
- Update README to reference appsettings.json + azd env get-values

Matches Article 1 (vector-search-dotnet) configuration pattern.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
All non-.NET Article 2 READMEs now show azd env get-values > .env
as the primary config method after azd up, with manual cp .env.example
as fallback. Matches Article 1 README pattern.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Runs all 9 combinations (3 algorithms x 3 metrics) in a single
execution with formatted comparison output.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- All 5 runners now: drop collection → create fresh → upload data →
  create indexes → run comparisons → drop collection on exit
- Removed 15 individual algorithm files (ivf/hnsw/diskann per language)
- Updated entry points (main.go, Main.java, Program.cs) to only run compare-all
- Simplified package.json scripts (TypeScript)
- All languages use DefaultAzureCredential for auth

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…rop at end

All 10 sample directories now follow the same pattern:
- START: conditionally drop collection only if it exists
- END: always drop collection for cleanup (in finally/defer block)

Languages updated: TypeScript, Python, Go, Java, .NET

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Main instructions: naming, env vars, collection lifecycle, bulk insert
- Language-specific files for TypeScript, Python, Go, Java, .NET
- Documents how samples should be built for CI compatibility

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant