Skip to content

Add AI-driven development environment and design docs - #130

Draft
Vasu1105 wants to merge 2 commits into
mainfrom
set-test-kitchen-context
Draft

Vasu1105 wants to merge 2 commits into
mainfrom
set-test-kitchen-context

Conversation

@Vasu1105

@Vasu1105 Vasu1105 commented Aug 13, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Sets up the AI-assisted development scaffolding and captures a source-grounded architecture reference for the codebase.

Changes

  • Skills — Add start-development and search-context skills under .github/skills/
  • Bundle wrapper — Add .github/scripts/bundle-install.sh that clears VS Code/Copilot-injected git env vars (GIT_DIR, GIT_CONFIG_PARAMETERS, etc.) which break Bundler's bare-repo git-gem clones
  • Env & references — Add etc/env.default.sh defaults and etc/reference-repo-list.txt
  • Design docs — Add context/local/design/ architecture docs (00–07 + README) covering overview, architecture, lifecycle/state, plugin system, configuration, CLI/commands, enterprise licensing, and testing/build. All claims verified against source and cross-checked against upstream test-kitchen.
  • Copilot instructions — Rewrite .github/copilot-instructions.md with build/test/lint commands, architecture notes, and repo conventions
  • gitignore — Ignore local-only paths (etc/env.sh, context/reference-repos, context/shared, tmp/)

Notes

  • Docs use Chef Test Kitchen Enterprise's independent versioning (not comparable to upstream test-kitchen version numbers); comparisons are at file/behavior level only.
  • No product/runtime code changed.

Set up the AI-assisted development scaffolding and capture a
source-grounded architecture reference for the codebase.

- Add start-development and search-context skills (.github/skills/)
- Add bundle-install.sh wrapper that clears VS Code/Copilot git env
  vars which break Bundler's bare-repo git-gem clones
- Add env defaults (etc/env.default.sh) and reference-repo list
- Add context/local/design/ architecture docs (00-07 + README)
  covering overview, architecture, lifecycle/state, plugin system,
  configuration, CLI/commands, enterprise licensing, and testing/build
- Rewrite .github/copilot-instructions.md with build/test/lint
  commands, architecture notes, and repo conventions
- Ignore local-only paths (etc/env.sh, context/reference-repos,
  context/shared, tmp/)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Signed-off-by: Vasu1105 <vjagdale@progress.com>

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request adds AI-assisted development scaffolding and a set of source-grounded design documents to help contributors navigate Chef Test Kitchen Enterprise’s architecture, workflow, and local dev setup.

Changes:

  • Introduces /start-development and /search-context skills plus supporting env/config inputs for AI-driven setup.
  • Adds a bundle install wrapper to mitigate VS Code/Copilot-injected git environment variables impacting Bundler git-sourced gems.
  • Adds a structured design-doc set (context/local/design/00–07) and refreshes .github/copilot-instructions.md to reflect repo conventions and commands.

Reviewed changes

Copilot reviewed 15 out of 16 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
etc/reference-repo-list.txt Defines reference repos to clone for AI-assisted development context.
etc/env.default.sh Provides default env vars for shared-context repo location and license acceptance.
context/local/design/README.md Index/entrypoint for the design documentation set.
context/local/design/00-overview.md High-level system overview and source-tree map.
context/local/design/01-architecture.md Layered architecture, object graph, concurrency, and error taxonomy.
context/local/design/02-lifecycle-and-state.md Instance FSM, state persistence, action wrapper, and serialization behavior.
context/local/design/03-plugin-system.md Plugin model, loading conventions, Configurable DSL, and API versioning.
context/local/design/04-configuration.md Configuration file format, loader behavior, and merge semantics.
context/local/design/05-cli-and-commands.md CLI entrypoint and command dispatch/instance selection model.
context/local/design/06-enterprise-licensing.md Documents enterprise licensing integration and upstream deltas.
context/local/design/07-testing-and-build.md Captures test layers, Rake tasks, and CI/release notes.
.gitignore Ignores local-only AI context directories and env overrides.
.github/skills/start-development/SKILL.md Skill spec for initializing AI-driven development environment.
.github/skills/search-context/SKILL.md Skill spec for traversing shared/local context to answer questions.
.github/scripts/bundle-install.sh Wrapper script for running bundle install with sanitized git env vars.
.github/copilot-instructions.md Rewritten contributor/assistant instructions (commands, architecture, conventions).
Suppressed comments (2)

etc/reference-repo-list.txt:26

  • Typo in comment: "plugn" -> "plugin".
# kitchen plugn (verifier) implementation

.github/skills/search-context/SKILL.md:69

  • Typos/grammar in these list items: "driver api" should be "driver API", "this override" -> "this overrides", and "brough" -> "brought".
2. Technical specifications lower in the tree override specs context higher in the tree. So a technical specification to use a particular driver api might be needed for a good reason (which must be justified) and this override a higher-level mandate.
3. Any confusion or unresolved issues should be brough to the user's attention for a decision.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread etc/reference-repo-list.txt Outdated
Comment thread .github/skills/start-development/SKILL.md Outdated
Comment thread .github/skills/search-context/SKILL.md Outdated

## Initialization Required

If `context/shared/map.md` does not exist, run /start-developement.
Comment thread context/local/design/README.md Outdated
Comment thread .github/copilot-instructions.md Outdated
Comment on lines +5 to +7
A project's testing matrix is declared in `kitchen.yml` at the project root. It
has five top-level sections; four configure the plugin subsystems and two
(`platforms`, `suites`) define the matrix that gets multiplied into instances.
Comment on lines +68 to +71
| type | Omnitruck host |
| ---- | -------------- |
| free / trial | `https://chefdownload-trial.chef.io` |
| commercial | `https://chefdownload-commerical.chef.io` |
@Vasu1105
Vasu1105 marked this pull request as draft August 13, 2026 07:31
- copilot-instructions: note kitchen.yml is preferred over legacy .kitchen.yml
- search-context skill: fix /start-development command typo
- start-development skill: fix "eny" -> "any" typo
- design/06: correct Omnitruck commercial host URL spelling
- design/README: update analyzed version 2.0.15 -> 2.0.19
- reference-repo-list: strip trailing whitespace on kitchen-ec2 entry

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Signed-off-by: Vasu1105 <vjagdale@progress.com>

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants