ado-sync 0.1.61 → 0.1.63

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -41,7 +41,7 @@ Minimum config:
41
41
  | `pull` | Azure Test Cases → local files |
42
42
  | `status` | Show pending changes without modifying anything |
43
43
  | `diff` | Field-level drift between local and Azure |
44
- | `generate` | Scaffold spec files from ADO User Stories (AI-powered or template) |
44
+ | `generate` | Scaffold spec files from ADO User Stories (template-first, optionally AI-enhanced) |
45
45
  | `publish-test-results` | Publish TRX / JUnit / Playwright / Cucumber results to a Test Run |
46
46
  | `story-context` | Show AC, suggested tags, and linked TCs for a User Story |
47
47
  | `coverage` | Spec link rate and story coverage report |
@@ -92,6 +92,8 @@ Minimum config:
92
92
 
93
93
  ado-sync supports multiple AI providers for test-step summarisation (`push`/`pull`/`status`), spec generation (`generate`), and failure analysis (`publish-test-results`). All provider SDKs are **optional** — install only what you need.
94
94
 
95
+ `generate` does not crawl the whole repo by default. It uses ADO story data first, and you can add targeted app/test context explicitly when you want richer AI-generated specs.
96
+
95
97
  | Provider | Commands | SDK (install separately) | Auth |
96
98
  |---|---|---|---|
97
99
  | `heuristic` | push / pull / status | none — built-in | none |
@@ -105,87 +107,41 @@ ado-sync supports multiple AI providers for test-step summarisation (`push`/`pul
105
107
  | `github` | all AI commands | `npm i openai` | `$GITHUB_TOKEN` (auto-detected) |
106
108
  | `azureinference` | all AI commands | `npm i @azure-rest/ai-inference @azure/core-auth` | `$AZURE_AI_KEY` + `--ai-url` |
107
109
 
108
- ### Local LLM options
109
-
110
- If you want to run ado-sync without sending prompts to a hosted model, there are three practical local setups:
111
-
112
- | Option | Best for | How it works | Commands |
113
- |---|---|---|---|
114
- | `heuristic` | Zero setup, fastest start | No model at all; built-in rules only | `push`, `pull`, `status` |
115
- | `local` | Single-machine offline use | Runs a GGUF model directly in-process via `node-llama-cpp` | `push`, `pull`, `status`, `generate` |
116
- | `ollama` | Easier local model management | Talks to a local Ollama server over HTTP | `push`, `pull`, `status`, `generate`, `publish-test-results` failure analysis |
117
-
118
- `llama.cpp`-style setups work in two ways:
119
-
120
- - Use `local` when you want to run a GGUF model directly inside ado-sync through `node-llama-cpp`.
121
- - Use `openai --ai-url ...` when you already run the `llama.cpp` server in OpenAI-compatible mode and want ado-sync to call it over HTTP.
110
+ ### AI quick guide
122
111
 
123
- You can also point the `openai` provider at other local OpenAI-compatible servers such as LM Studio, vLLM, or LocalAI by setting `--ai-url`, but that is an advanced setup rather than the default local path.
112
+ - Use `heuristic` for zero-setup summaries.
113
+ - Use `local` for GGUF models through `node-llama-cpp`.
114
+ - Use `ollama` if you already manage models with Ollama.
115
+ - Use `openai`, `anthropic`, `github`, `bedrock`, `azureai`, or `azureinference` for hosted/provider-backed generation.
116
+ - For `generate`, pass a small set of relevant files with `--ai-context` instead of the whole repo.
124
117
 
125
- ### Which local option to choose
126
-
127
- - Use `heuristic` if you only want lightweight summaries and do not want to download a model.
128
- - Use `local` if you want fully offline inference with a `.gguf` file and no background server. This is the closest built-in path to native `llama.cpp` model usage.
129
- - Use `ollama` if you prefer model pull/run management through Ollama and want the same local provider available to more commands.
130
- - Use `openai --ai-url ...` if you already run `llama.cpp` server mode or another compatible local endpoint and want ado-sync to treat it like an OpenAI-style API.
131
-
132
- ### Local examples
118
+ Examples:
133
119
 
134
120
  ```bash
135
- # 1. No-model fallback: fastest setup, lowest quality
121
+ # Fastest setup
136
122
  ado-sync push --ai-provider heuristic
137
123
 
138
- # 2. Fully local GGUF model in-process
139
- ado-sync push --ai-provider local \
140
- --ai-model ~/.cache/ado-sync/models/gemma-4-e4b-it-Q4_K_M.gguf
141
-
142
- # 3. Ollama running on the same machine
143
- ollama pull gemma-4-e4b-it
144
- ado-sync push --ai-provider ollama --ai-model gemma-4-e4b-it
145
-
146
- # 4. Local OpenAI-compatible endpoint (LM Studio / vLLM / LocalAI)
147
- ado-sync generate --story-ids 1234 \
148
- --ai-provider openai \
149
- --ai-url http://localhost:1234/v1 \
150
- --ai-model local-model-name \
151
- --ai-key dummy
152
-
153
- # 5. llama.cpp server in OpenAI-compatible mode
154
- ./server -m ~/.cache/ado-sync/models/gemma-4-e4b-it-Q4_K_M.gguf --port 8080
155
- ado-sync push \
156
- --ai-provider openai \
157
- --ai-url http://localhost:8080/v1 \
158
- --ai-model gemma-4-e4b-it-Q4_K_M \
159
- --ai-key dummy
160
- ```
161
-
162
- ### Notes for local use
163
-
164
- - `local` requires `--ai-model` to point to a `.gguf` file.
165
- - `local` uses `node-llama-cpp`, so it works with GGUF models from the wider `llama.cpp` ecosystem.
166
- - `ollama` defaults to `http://localhost:11434` unless you override `--ai-url`.
167
- - If you run `llama.cpp` as an HTTP server, use the `openai` provider plus `--ai-url`; ado-sync does not call the `llama.cpp` CLI binary directly.
168
- - `publish-test-results --analyze-failures` supports `ollama`, `openai`, and `anthropic`; it does not use the in-process `local` provider.
169
- - For deeper setup guidance and larger local model examples, see [docs/advanced.md](docs/advanced.md) and [docs/cli.md](docs/cli.md).
170
-
171
- ```bash
172
- # GitHub Models — free tier available, no billing setup needed
124
+ # Hosted model
173
125
  ado-sync push --ai-provider github --ai-model gpt-4o
174
126
 
175
- # Anthropic
176
- ado-sync push --ai-provider anthropic --ai-key $ANTHROPIC_API_KEY
177
-
178
- # AWS Bedrock
179
- ado-sync push --ai-provider bedrock --ai-model anthropic.claude-3-haiku-20240307-v1:0 --ai-region us-east-1
180
-
181
- # Azure AI Inference (AI Foundry)
182
- ado-sync generate --story-ids 1234 --ai-provider azureinference \
183
- --ai-url https://myendpoint.inference.azure.com --ai-model gpt-4o --ai-key $AZURE_AI_KEY
127
+ # Repo-aware spec generation with targeted context
128
+ ado-sync generate --story-ids 1234 \
129
+ --ai-provider openai --ai-key $OPENAI_API_KEY \
130
+ --ai-context src/orders/** \
131
+ --ai-context tests/orders/** \
132
+ --ai-context docs/orders.md
184
133
  ```
185
134
 
186
135
  Set once in `ado-sync.json` to apply to all commands:
136
+
187
137
  ```json
188
138
  { "sync": { "ai": { "provider": "github", "model": "gpt-4o" } } }
189
139
  ```
190
140
 
141
+ Detailed AI setup, local-model guidance, provider-specific examples, and generate-context recommendations are in the docs:
142
+
143
+ - [docs/cli.md](docs/cli.md)
144
+ - [docs/advanced.md](docs/advanced.md)
145
+ - [docs/mcp-server.md](docs/mcp-server.md)
146
+
191
147
  > **LLM / AI crawlers:** [`llms.txt`](llms.txt) contains a single-file summary of the entire project — config schema, CLI flags, ID writeback formats, and the full doc index.
@@ -42,11 +42,12 @@ const os = __importStar(require("node:os"));
42
42
  const path = __importStar(require("node:path"));
43
43
  const node_test_1 = __importDefault(require("node:test"));
44
44
  const client_1 = require("../azure/client");
45
+ const test_cases_1 = require("../azure/test-cases");
45
46
  const id_markers_1 = require("../id-markers");
46
47
  const gherkin_1 = require("../parsers/gherkin");
47
- const test_cases_1 = require("../azure/test-cases");
48
48
  const javascript_1 = require("../parsers/javascript");
49
49
  const engine_1 = require("../sync/engine");
50
+ const generate_1 = require("../sync/generate");
50
51
  const publish_results_1 = require("../sync/publish-results");
51
52
  const writeback_1 = require("../sync/writeback");
52
53
  function makeConfig(overrides = {}) {
@@ -276,6 +277,47 @@ function makeParsedTest(overrides = {}) {
276
277
  fs.rmSync(tempDir, { recursive: true, force: true });
277
278
  }
278
279
  });
280
+ (0, node_test_1.default)('loadGenerateContextContent collects bounded targeted context from files and folders', () => {
281
+ const tempDir = fs.mkdtempSync(path.join(os.tmpdir(), 'ado-sync-generate-context-'));
282
+ const srcDir = path.join(tempDir, 'src');
283
+ const testsDir = path.join(tempDir, 'tests');
284
+ fs.mkdirSync(srcDir, { recursive: true });
285
+ fs.mkdirSync(testsDir, { recursive: true });
286
+ fs.writeFileSync(path.join(srcDir, 'feature.ts'), 'export const buttonLabel = "Submit order";\n');
287
+ fs.writeFileSync(path.join(testsDir, 'feature.spec.ts'), 'test("submits order", async () => {});\n');
288
+ try {
289
+ const content = (0, generate_1.loadGenerateContextContent)(['src', 'tests/**/*.spec.ts'], tempDir, '[test:ai-generate]');
290
+ strict_1.default.ok(content);
291
+ strict_1.default.match(content ?? '', /--- file: src\/feature.ts ---/);
292
+ strict_1.default.match(content ?? '', /Submit order/);
293
+ strict_1.default.match(content ?? '', /--- file: tests\/feature.spec.ts ---/);
294
+ strict_1.default.match(content ?? '', /submits order/);
295
+ }
296
+ finally {
297
+ fs.rmSync(tempDir, { recursive: true, force: true });
298
+ }
299
+ });
300
+ (0, node_test_1.default)('loadGenerateContextContent caps file count and skips ignored folders', () => {
301
+ const tempDir = fs.mkdtempSync(path.join(os.tmpdir(), 'ado-sync-generate-cap-'));
302
+ const srcDir = path.join(tempDir, 'src');
303
+ const ignoredDir = path.join(tempDir, 'node_modules/pkg');
304
+ fs.mkdirSync(srcDir, { recursive: true });
305
+ fs.mkdirSync(ignoredDir, { recursive: true });
306
+ for (let index = 0; index < 15; index++) {
307
+ fs.writeFileSync(path.join(srcDir, `file-${index}.ts`), `export const value${index} = ${index};\n`);
308
+ }
309
+ fs.writeFileSync(path.join(ignoredDir, 'ignored.js'), 'module.exports = true;\n');
310
+ try {
311
+ const content = (0, generate_1.loadGenerateContextContent)(['src/**/*', 'node_modules/**/*'], tempDir, '[test:ai-generate]');
312
+ strict_1.default.ok(content);
313
+ const sections = (content?.match(/--- file:/g) ?? []).length;
314
+ strict_1.default.equal(sections, 12);
315
+ strict_1.default.doesNotMatch(content ?? '', /ignored.js/);
316
+ }
317
+ finally {
318
+ fs.rmSync(tempDir, { recursive: true, force: true });
319
+ }
320
+ });
279
321
  (0, node_test_1.default)('push skips removed-case detection on tag-filtered runs', async () => {
280
322
  const tempDir = fs.mkdtempSync(path.join(os.tmpdir(), 'ado-sync-push-tags-'));
281
323
  const filePath = path.join(tempDir, 'spec.md');
@@ -1 +1 @@
1
- {"version":3,"file":"regressions.test.js","sourceRoot":"","sources":["../../src/__tests__/regressions.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"regressions.test.js","sourceRoot":"","sources":["../../src/__tests__/regressions.test.ts"],"names":[],"mappings":"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"}
@@ -37,6 +37,8 @@ export interface AiGenerateOpts {
37
37
  apiKey?: string;
38
38
  /** AWS region for bedrock (default: AWS_REGION env or us-east-1). */
39
39
  region?: string;
40
+ /** Additional curated repo/app/test context injected into the generation prompt. */
41
+ contextContent?: string;
40
42
  /** Fall back to template output if the AI call fails. Default: true. */
41
43
  heuristicFallback?: boolean;
42
44
  }
@@ -90,17 +90,28 @@ Description:
90
90
 
91
91
  Acceptance Criteria:
92
92
  {AC}`;
93
- function buildPrompt(story, format) {
93
+ function buildPrompt(story, format, contextContent) {
94
94
  const template = format === 'gherkin' ? GHERKIN_PROMPT : MARKDOWN_PROMPT;
95
+ const contextSection = storyContextSection(contextContent);
95
96
  return template
96
97
  .replace('{TITLE}', story.title)
97
98
  .replace('{TYPE}', story.workItemType ?? 'User Story')
98
99
  .replace('{STATE}', story.state ?? 'Active')
99
100
  .replace('{DESCRIPTION}', story.description?.trim() || '(not provided)')
100
- .replace('{AC}', story.acceptanceCriteria?.trim() || '(not provided)');
101
+ .replace('{AC}', `${story.acceptanceCriteria?.trim() || '(not provided)'}${contextSection}`);
102
+ }
103
+ function storyContextSection(contextContent) {
104
+ const trimmed = contextContent?.trim();
105
+ if (!trimmed)
106
+ return '';
107
+ return `
108
+
109
+ Additional implementation and test context from the workspace:
110
+ ${trimmed}
111
+
112
+ Use this context to make scenarios and steps more concrete, but do not invent behavior that conflicts with the story or AC.`;
101
113
  }
102
114
  // ─── Shared helpers ───────────────────────────────────────────────────────────
103
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
104
115
  const esmImport = new Function('m', 'return import(m)');
105
116
  function resolveEnvVar(value) {
106
117
  if (value.startsWith('$'))
@@ -112,7 +123,6 @@ async function getLlamaSession(modelPath) {
112
123
  if (llamaCache.has(modelPath))
113
124
  return llamaCache.get(modelPath);
114
125
  const promise = (async () => {
115
- // eslint-disable-next-line @typescript-eslint/no-implied-eval, @typescript-eslint/no-explicit-any
116
126
  const esmImport = new Function('m', 'return import(m)');
117
127
  const llamaModule = await esmImport('node-llama-cpp');
118
128
  const { getLlama, LlamaChatSession } = llamaModule;
@@ -139,7 +149,6 @@ async function localProvider(prompt, modelPath) {
139
149
  }
140
150
  }
141
151
  async function ollamaProvider(prompt, model, baseUrl) {
142
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
143
152
  let Ollama;
144
153
  try {
145
154
  ({ Ollama } = await esmImport('ollama'));
@@ -155,7 +164,6 @@ async function ollamaProvider(prompt, model, baseUrl) {
155
164
  return response.message?.content ?? '';
156
165
  }
157
166
  async function openaiProvider(prompt, model, apiKey, baseUrl) {
158
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
159
167
  let OpenAI;
160
168
  try {
161
169
  ({ OpenAI } = await esmImport('openai'));
@@ -176,7 +184,6 @@ async function openaiProvider(prompt, model, apiKey, baseUrl) {
176
184
  return msg.choices[0]?.message?.content ?? '';
177
185
  }
178
186
  async function anthropicProvider(prompt, model, apiKey, baseUrl) {
179
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
180
187
  let Anthropic;
181
188
  try {
182
189
  ({ default: Anthropic } = await esmImport('@anthropic-ai/sdk'));
@@ -193,7 +200,6 @@ async function anthropicProvider(prompt, model, apiKey, baseUrl) {
193
200
  max_tokens: 4096,
194
201
  messages: [{ role: 'user', content: prompt }],
195
202
  });
196
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
197
203
  return msg.content[0]?.text ?? '';
198
204
  }
199
205
  async function huggingfaceProvider(prompt, model, apiKey) {
@@ -205,7 +211,6 @@ async function githubProvider(prompt, model, apiKey) {
205
211
  return openaiProvider(prompt, model, apiKey, 'https://models.inference.ai.azure.com');
206
212
  }
207
213
  async function azureinferenceProvider(prompt, model, apiKey, endpoint) {
208
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
209
214
  let ModelClient, AzureKeyCredential;
210
215
  try {
211
216
  ({ default: ModelClient } = await esmImport('@azure-rest/ai-inference'));
@@ -227,7 +232,6 @@ async function azureinferenceProvider(prompt, model, apiKey, endpoint) {
227
232
  if (response.status !== '200') {
228
233
  throw new Error(`Azure AI Inference ${response.status}: ${JSON.stringify(response.body)}`);
229
234
  }
230
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
231
235
  return response.body.choices?.[0]?.message?.content ?? '';
232
236
  }
233
237
  // ─── Bedrock credential pre-flight ───────────────────────────────────────────
@@ -246,7 +250,6 @@ function warnIfNoBedrockCredentials() {
246
250
  ' Set AWS_ACCESS_KEY_ID + AWS_SECRET_ACCESS_KEY, configure AWS_PROFILE,\n' +
247
251
  ' or ensure ~/.aws/credentials exists. The call will fail without credentials.\n');
248
252
  }
249
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
250
253
  async function bedrockInvokeWithRetry(client, command, maxRetries = 3, baseDelayMs = 5_000) {
251
254
  let attempt = 0;
252
255
  while (true) {
@@ -270,10 +273,8 @@ async function bedrockInvokeWithRetry(client, command, maxRetries = 3, baseDelay
270
273
  async function bedrockProvider(prompt, model, region) {
271
274
  warnIfNoBedrockCredentials();
272
275
  // Dynamic import — requires @aws-sdk/client-bedrock-runtime to be installed
273
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
274
276
  let bedrockModule;
275
277
  try {
276
- // eslint-disable-next-line @typescript-eslint/no-implied-eval, @typescript-eslint/no-explicit-any
277
278
  const esmImport = new Function('m', 'return import(m)');
278
279
  bedrockModule = await esmImport('@aws-sdk/client-bedrock-runtime');
279
280
  }
@@ -321,7 +322,6 @@ async function bedrockProvider(prompt, model, region) {
321
322
  accept: 'application/json',
322
323
  }));
323
324
  const responseText = new TextDecoder().decode(response.body);
324
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
325
325
  const data = JSON.parse(responseText);
326
326
  // Handle different response shapes
327
327
  return (data.content?.[0]?.text ?? // Anthropic Claude
@@ -331,7 +331,6 @@ async function bedrockProvider(prompt, model, region) {
331
331
  '');
332
332
  }
333
333
  async function azureaiProvider(prompt, model, apiKey, baseUrl) {
334
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
335
334
  let AzureOpenAI;
336
335
  try {
337
336
  ({ AzureOpenAI } = await esmImport('openai'));
@@ -360,7 +359,7 @@ async function azureaiProvider(prompt, model, apiKey, baseUrl) {
360
359
  * Falls back to null if generation fails and heuristicFallback is false (caller handles).
361
360
  */
362
361
  async function generateSpecFromStory(story, format, opts) {
363
- const prompt = buildPrompt(story, format);
362
+ const prompt = buildPrompt(story, format, opts.contextContent);
364
363
  const heuristicFallback = opts.heuristicFallback ?? true;
365
364
  const run = async () => {
366
365
  switch (opts.provider) {
@@ -1 +1 @@
1
- {"version":3,"file":"generate-spec.js","sourceRoot":"","sources":["../../src/ai/generate-spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate-spec.js","sourceRoot":"","sources":["../../src/ai/generate-spec.ts"],"names":[],"mappings":"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"}
@@ -30,6 +30,23 @@
30
30
  */
31
31
  import { ParsedStep, ParsedTest } from '../types';
32
32
  export type AiProvider = 'heuristic' | 'local' | 'ollama' | 'openai' | 'anthropic' | 'huggingface' | 'bedrock' | 'azureai' | 'github' | 'azureinference';
33
+ /**
34
+ * Detect if we're running inside an AI assistant environment and return the
35
+ * best available AI provider + credentials automatically so users don't need
36
+ * to pass --ai-provider / --ai-key explicitly.
37
+ *
38
+ * Detection order (first match wins):
39
+ * 1. Explicit API keys in env → use the matching provider directly
40
+ * 2. Known AI-tool session env vars → heuristic (for summary flows only)
41
+ * 3. TERM_PROGRAM matches an AI editor → heuristic
42
+ * 4. Nothing detected → undefined (caller decides the fallback)
43
+ *
44
+ * Covered environments:
45
+ * Claude Code, OpenAI Codex CLI, GitHub Copilot, Cursor, Windsurf,
46
+ * Cline, Google Antigravity, Aider, Continue, Augment Code, Zed AI,
47
+ * JetBrains AI, Roo Code, Trae, PearAI, Void, Amp, Amazon Q Developer.
48
+ */
49
+ export declare function detectAiEnvironment(): Pick<AiSummaryOpts, 'provider' | 'apiKey'> | undefined;
33
50
  export interface AiSummaryOpts {
34
51
  provider: AiProvider;
35
52
  /**