Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
32039d8
Refactor IoC source generator to improve wrapper handling and service…
AndyElessar Apr 4, 2026
267860d
chore: Clean up agent instructions
AndyElessar Apr 4, 2026
c0a71d5
refactor: Spilt output code
AndyElessar Apr 4, 2026
13302a0
refactir: Move compilationInfoProvider
AndyElessar Apr 4, 2026
33433cb
refactor: Change how output code generated, add data model's method t…
AndyElessar Apr 5, 2026
22dcb47
Refactor KVP and Lazy registration helpers for improved code generation
AndyElessar Apr 5, 2026
c46db67
chore: clean up using
AndyElessar Apr 5, 2026
d481f61
refactor: Optimze performance and remove dead code
AndyElessar Apr 10, 2026
51ad470
refactor: Optimze performance
AndyElessar Apr 10, 2026
211d542
refactor: Optimze performance
AndyElessar Apr 11, 2026
270f118
refactor: Split `ExplicitOnly` container to other pipline for perform…
AndyElessar Apr 11, 2026
5b60c0f
refactor: Add CancellationToken support to registration processing me…
AndyElessar Apr 15, 2026
0af4079
merge from origin/main
AndyElessar Apr 16, 2026
55081ae
refactor: Improve codebase readability and prune Spec.spec.md
AndyElessar Apr 22, 2026
4f1687c
Refactor code structure for improved readability and maintainability
AndyElessar Apr 22, 2026
c352388
chore: Update agent instructions
AndyElessar Apr 22, 2026
2b6a062
refactor: Improve readability
AndyElessar Apr 25, 2026
3cd0d34
chore: Update agent instructions for force to use memory tool
AndyElessar Apr 25, 2026
63abdf5
fix: Resolve review comment
AndyElessar Apr 25, 2026
e48847b
chore: Update agent instructions
AndyElessar Apr 29, 2026
93c58e4
Refactor async initialization and eager resolution handling in IoC co…
AndyElessar Apr 29, 2026
d6155e6
fix: Async init service initialize in constructor now based on `Eager…
AndyElessar Apr 29, 2026
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
4 changes: 3 additions & 1 deletion .github/agents/DevOps.agent.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
description: "Use when: managing CI/CD pipelines, GitHub Actions workflows, build/test/pack/publish automation, NuGet Trusted Publishing, or release processes. Handles .github/workflows/ files and DevOps configuration."
model: GPT-5.4 (copilot)
tools: [vscode/askQuestions, vscode/memory, vscode/resolveMemoryFileUri, execute/getTerminalOutput, execute/runInTerminal, read, agent, edit, search, web, github/get_copilot_job_status, github/get_file_contents, github/get_latest_release, github/get_release_by_tag, github/get_tag, github/issue_read, github/list_branches, github/list_releases, github/list_tags, github/pull_request_read, github/search_code, github/search_issues, github/search_pull_requests, github/search_repositories, 'io.github.upstash/context7/*', 'microsoftdocs/mcp/*', todo, github.vscode-pull-request-github/notification_fetch]
target: vscode
agents: ["Explore"]
user-invocable: true
argument-hint: "Describe the CI/CD change: add workflow, fix pipeline, update publish config, etc."
Expand Down Expand Up @@ -43,7 +44,7 @@ git push origin main && git push origin ioc-v0.9.1-alpha # triggers pu

**Post-release**: bump `version.json` via `nbgv prepare-release --project <path>` or manual edit.

Follow the **parent agent protocol** in `.github/instructions/memory-policy.instructions.md`.
Follow the **Parent Workflow** in `.github/instructions/memory-policy.instructions.md`.

## Approach

Expand Down Expand Up @@ -78,6 +79,7 @@ Follow the **parent agent protocol** in `.github/instructions/memory-policy.inst
- 🚫 **Never do:**
- Use long-lived API keys (use OIDC temporary credentials only)
- Remove tag-based publish gate, `id-token: write`, `NuGet/login@v1`, or `environment: nuget-publish` from publish jobs
- Read or write any `/memories/session/*` path with a tool other than #tool:vscode/memory (no #tool:read, #tool:edit, #tool:execute/#tool:run_in_terminal, search/grep tools, or shell commands — even via a URI returned by #tool:vscode/resolveMemoryFileUri). See `.github/instructions/memory-policy.instructions.md`.

## Output Format

Expand Down
6 changes: 4 additions & 2 deletions .github/agents/Doc.agent.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
---
description: "Use when: writing or updating user-facing documentation files (docs/ folder). Creates progressive, beginner-friendly guides with generated code examples for the SourceGen repository."
model: Claude Opus 4.6 (copilot)
model: Claude Sonnet 4.6 (copilot)
tools: [vscode/askQuestions, vscode/memory, vscode/resolveMemoryFileUri, execute/getTerminalOutput, execute/runInTerminal, read, agent, edit, search, web, codegraphcontext/analyze_code_relationships, codegraphcontext/find_code, codegraphcontext/get_repository_stats, 'io.github.upstash/context7/*', 'microsoftdocs/mcp/*', todo]
target: vscode
agents: ["Explore", "DocReview"]
user-invocable: true
argument-hint: "Provide the documentation topic or feature to document, and which doc files to create or update"
Expand All @@ -10,7 +11,7 @@ You are an expert technical writer for the SourceGen repository. You specialize

Follow the project principles in `AGENTS.md`.

Follow the **parent agent protocol** in `.github/instructions/memory-policy.instructions.md`.
Follow the **Parent Workflow** in `.github/instructions/memory-policy.instructions.md`.

## Approach

Expand Down Expand Up @@ -85,6 +86,7 @@ For every source generator feature, **always** include a generated code example
- Edit config files (`.csproj`, `.editorconfig`, `.github/`)
- Invent features that don't exist in the codebase
- Include unverified code examples that may not compile
- Read or write any `/memories/session/*` path with a tool other than #tool:vscode/memory (no #tool:read, #tool:edit, #tool:execute/#tool:run_in_terminal, search/grep tools, or shell commands — even via a URI returned by #tool:vscode/resolveMemoryFileUri). See `.github/instructions/memory-policy.instructions.md`.

## Output Format

Expand Down
4 changes: 3 additions & 1 deletion .github/agents/DocReview.agent.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
description: "Use when: reviewing completed documentation updates under docs/ for accuracy, consistency, links, and generated code examples."
model: GPT-5.4 (copilot)
tools: [vscode/memory, vscode/resolveMemoryFileUri, read, search, web, 'io.github.upstash/context7/*', 'microsoftdocs/mcp/*', todo]
target: vscode
agents: []
user-invocable: false
argument-hint: "Provide changed docs files and related source/spec paths to validate"
Expand All @@ -10,7 +11,7 @@ You are a documentation reviewer for the SourceGen repository. You perform read-

Follow the project principles in `AGENTS.md`.

Follow the **child agent protocol** in `.github/instructions/memory-policy.instructions.md`.
Follow the **Child Workflow** in `.github/instructions/memory-policy.instructions.md`.

## Approach
1. **Load goal and plan from memory (MANDATORY FIRST ACTION — do this before anything else)**:
Expand Down Expand Up @@ -48,6 +49,7 @@ Follow the **child agent protocol** in `.github/instructions/memory-policy.instr
- Edit or create any files (docs, source, config)
- Run terminal commands or tests
- Review unrelated source files unless needed to verify documentation accuracy
- Read or write any `/memories/session/*` path with a tool other than #tool:vscode/memory (no #tool:read, #tool:edit, #tool:execute/#tool:run_in_terminal, search/grep tools, or shell commands — even via a URI returned by #tool:vscode/resolveMemoryFileUri). See `.github/instructions/memory-policy.instructions.md`.

## Output Format
Return a structured report in this format:
Expand Down
4 changes: 3 additions & 1 deletion .github/agents/Explore.agent.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
---
description: "Fast read-only codebase exploration and Q&A subagent. Prefer over manually chaining multiple search and file-reading operations to avoid cluttering the main conversation. Safe to call in parallel. Specify thoroughness: quick, medium, or thorough."
model: Claude Haiku 4.5 (copilot)
model: Claude Sonnet 4.6 (copilot)
tools: [vscode/memory, vscode/resolveMemoryFileUri, execute/getTerminalOutput, execute/testFailure, read, search, web, github/get_commit, github/get_file_contents, github/issue_read, github/search_code, github/search_issues, github/search_pull_requests, github/search_repositories, codegraphcontext/analyze_code_relationships, codegraphcontext/calculate_cyclomatic_complexity, codegraphcontext/execute_cypher_query, codegraphcontext/find_code, codegraphcontext/find_dead_code, codegraphcontext/find_most_complex_functions, codegraphcontext/get_repository_stats, codegraphcontext/load_bundle, codegraphcontext/search_registry_bundles, codegraphcontext/visualize_graph_query, 'microsoft/markitdown/*', 'io.github.upstash/context7/*', 'microsoftdocs/mcp/*', github.vscode-pull-request-github/issue_fetch, github.vscode-pull-request-github/labels_fetch, github.vscode-pull-request-github/notification_fetch, github.vscode-pull-request-github/doSearch, github.vscode-pull-request-github/activePullRequest, github.vscode-pull-request-github/pullRequestStatusChecks, github.vscode-pull-request-github/openPullRequest]
target: vscode
agents: []
user-invocable: false
argument-hint: "Describe WHAT you're looking for and desired thoroughness (quick/medium/thorough)"
Expand Down Expand Up @@ -35,6 +36,7 @@ Follow the project principles in `AGENTS.md`.
- Run terminal commands or tests
- Make architectural recommendations (report facts, let the parent decide)
- Modify `/memories/session/plan.md` (owned by parent agents)
- Read or write any `/memories/session/*` path with a tool other than #tool:vscode/memory (no #tool:read, #tool:edit, #tool:execute/#tool:run_in_terminal, search/grep tools, or shell commands — even via a URI returned by #tool:vscode/resolveMemoryFileUri). See `.github/instructions/memory-policy.instructions.md`.

## Output Format

Expand Down
15 changes: 10 additions & 5 deletions .github/agents/Implement.agent.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
---
description: "Use when: implementing approved plan from /memories/session/plan.md. Executes code changes, runs tests, and follows project conventions."
model: GPT-5.3-Codex (copilot)
model: GPT-5.4 (copilot)
tools: [vscode/memory, vscode/resolveMemoryFileUri, execute, read, edit, search, web, 'codegraphcontext/*', 'io.github.upstash/context7/*', 'microsoftdocs/mcp/*', todo]
target: vscode
agents: []
user-invocable: false
argument-hint: "Implement the approved plan stored in /memories/session/plan.md"
Expand All @@ -10,7 +11,7 @@ You are an implementation specialist for the SourceGen C# source generator proje

Follow the project principles in `AGENTS.md` and the relevant domain `AGENTS.md` for the affected code.

Follow the **child agent protocol** in `.github/instructions/memory-policy.instructions.md`.
Follow the **Child Workflow** in `.github/instructions/memory-policy.instructions.md`.

## Commands

Expand All @@ -33,12 +34,15 @@ Refer to the relevant domain `AGENTS.md` (e.g., `src/Ioc/AGENTS.md`) for domain-
4. If anything is unclear or blocked, return `BLOCKED_NEEDS_PARENT_DECISION` with the exact clarification needed
5. Run all related tests after implementation
6. Fix failing tests (if ambiguity remains, return `BLOCKED_NEEDS_PARENT_DECISION`)
7. **Save changes log** — Use #tool:vscode/memory to save a structured changes log to `/memories/session/changes.md` (see [Changes Log Format](#changes-log-format) below). This MUST be done before reporting completion.
7. **Save changes log** — Use #tool:vscode/memory to save a structured changes log (see [Changes Log Format](#changes-log-format) below) to the path provided by the parent:
- **Multi-step plans**: parent provides a `/memories/session/changes-step-{n}.md` path (one writer per file).
- **Single-step plans**: write to `/memories/session/changes.md`.
This MUST be done before reporting completion.
8. Report completion

## Changes Log Format

The changes log saved to `/memories/session/changes.md` via #tool:vscode/memory MUST follow this structure:
The changes log saved via #tool:vscode/memory MUST follow this structure:

```markdown
## Changes Log
Expand Down Expand Up @@ -73,7 +77,7 @@ If a section has no entries, write "None."
- Follow domain-specific rules from the relevant `AGENTS.md` (e.g., `src/Ioc/AGENTS.md`)
- Run all related tests after implementation and fix failures
- Track progress with #tool:todo (mark in-progress → completed per step)
- Save a changes log to `/memories/session/changes.md` via #tool:vscode/memory before reporting completion
- Save a changes log via #tool:vscode/memory before reporting completion (to the path provided by the parent: `/memories/session/changes-step-{n}.md` for multi-step plans, or `/memories/session/changes.md` for single-step plans)

- ⚠️ **Ask first:**
- When the plan is ambiguous or a design decision is needed — return `BLOCKED_NEEDS_PARENT_DECISION`
Expand All @@ -86,6 +90,7 @@ If a section has no entries, write "None."
- Modify secrets, CI/CD configs, or NuGet publishing settings
- Remove existing tests that are failing — fix them or ask
- Modify `/memories/session/plan.md` (owned by parent agents)
- Read or write any `/memories/session/*` path with a tool other than #tool:vscode/memory (no #tool:read, #tool:edit, #tool:execute/#tool:run_in_terminal, search/grep tools, or shell commands — even via a URI returned by #tool:vscode/resolveMemoryFileUri). See `.github/instructions/memory-policy.instructions.md`.

## Output Format

Expand Down
Loading
Loading