common-qa-mcp 0.2.0 → 0.3.0
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 +6 -0
- package/dist/adapters/factory.d.ts +17 -7
- package/dist/adapters/factory.d.ts.map +1 -1
- package/dist/adapters/factory.js +61 -7
- package/dist/adapters/factory.js.map +1 -1
- package/dist/adapters/http.d.ts +50 -0
- package/dist/adapters/http.d.ts.map +1 -0
- package/dist/adapters/http.js +109 -0
- package/dist/adapters/http.js.map +1 -0
- package/dist/adapters/remoteMcp/adapter.d.ts +10 -1
- package/dist/adapters/remoteMcp/adapter.d.ts.map +1 -1
- package/dist/adapters/remoteMcp/adapter.js +26 -3
- package/dist/adapters/remoteMcp/adapter.js.map +1 -1
- package/dist/adapters/simplifyqa/adapter.d.ts +154 -0
- package/dist/adapters/simplifyqa/adapter.d.ts.map +1 -0
- package/dist/adapters/simplifyqa/adapter.js +1150 -0
- package/dist/adapters/simplifyqa/adapter.js.map +1 -0
- package/dist/adapters/simplifyqa/mapper.d.ts +63 -0
- package/dist/adapters/simplifyqa/mapper.d.ts.map +1 -0
- package/dist/adapters/simplifyqa/mapper.js +409 -0
- package/dist/adapters/simplifyqa/mapper.js.map +1 -0
- package/dist/adapters/types.d.ts +48 -1
- package/dist/adapters/types.d.ts.map +1 -1
- package/dist/adapters/walnut/adapter.d.ts +231 -0
- package/dist/adapters/walnut/adapter.d.ts.map +1 -0
- package/dist/adapters/walnut/adapter.js +1083 -0
- package/dist/adapters/walnut/adapter.js.map +1 -0
- package/dist/adapters/walnut/mapper.d.ts +29 -9
- package/dist/adapters/walnut/mapper.d.ts.map +1 -1
- package/dist/adapters/walnut/mapper.js +136 -24
- package/dist/adapters/walnut/mapper.js.map +1 -1
- package/dist/config.d.ts +28 -14
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +37 -19
- package/dist/config.js.map +1 -1
- package/dist/connection.d.ts +3 -2
- package/dist/connection.d.ts.map +1 -1
- package/dist/connection.js +36 -15
- package/dist/connection.js.map +1 -1
- package/dist/domain/types.d.ts +195 -1
- package/dist/domain/types.d.ts.map +1 -1
- package/dist/drafts/store.d.ts +4 -1
- package/dist/drafts/store.d.ts.map +1 -1
- package/dist/drafts/store.js +7 -2
- package/dist/drafts/store.js.map +1 -1
- package/dist/initAgents.d.ts.map +1 -1
- package/dist/initAgents.js +29 -12
- package/dist/initAgents.js.map +1 -1
- package/dist/requestConnection.d.ts +5 -3
- package/dist/requestConnection.d.ts.map +1 -1
- package/dist/requestConnection.js +11 -5
- package/dist/requestConnection.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +25 -1
- package/dist/server.js.map +1 -1
- package/dist/tools/connection.tools.js +5 -5
- package/dist/tools/connection.tools.js.map +1 -1
- package/dist/tools/discovery.tools.d.ts.map +1 -1
- package/dist/tools/discovery.tools.js +93 -1
- package/dist/tools/discovery.tools.js.map +1 -1
- package/dist/tools/formulas.tools.d.ts +7 -0
- package/dist/tools/formulas.tools.d.ts.map +1 -0
- package/dist/tools/formulas.tools.js +56 -0
- package/dist/tools/formulas.tools.js.map +1 -0
- package/dist/tools/heal.tools.d.ts +17 -0
- package/dist/tools/heal.tools.d.ts.map +1 -0
- package/dist/tools/heal.tools.js +76 -0
- package/dist/tools/heal.tools.js.map +1 -0
- package/dist/tools/recording.tools.d.ts.map +1 -1
- package/dist/tools/recording.tools.js +28 -7
- package/dist/tools/recording.tools.js.map +1 -1
- package/dist/tools/run.tools.d.ts.map +1 -1
- package/dist/tools/run.tools.js +378 -37
- package/dist/tools/run.tools.js.map +1 -1
- package/dist/tools/storySync.tools.d.ts +66 -0
- package/dist/tools/storySync.tools.d.ts.map +1 -0
- package/dist/tools/storySync.tools.js +213 -0
- package/dist/tools/storySync.tools.js.map +1 -0
- package/dist/tools/testcase.tools.d.ts.map +1 -1
- package/dist/tools/testcase.tools.js +17 -2
- package/dist/tools/testcase.tools.js.map +1 -1
- package/dist/tools/testdata.tools.d.ts +7 -0
- package/dist/tools/testdata.tools.d.ts.map +1 -0
- package/dist/tools/testdata.tools.js +161 -0
- package/dist/tools/testdata.tools.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/adapters/walnut/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Step, TcSummary, TestCase } from '../../domain/types.js';
|
|
1
|
+
import type { Step, Story, StorySummary, Suite, SuiteSummary, TcSummary, TestCase } from '../../domain/types.js';
|
|
2
2
|
export type CfKind = NonNullable<Step['controlFlow']>['kind'];
|
|
3
3
|
export declare const WALNUT_TO_CF: Record<string, CfKind>;
|
|
4
4
|
/** Inverse of WALNUT_TO_CF (neutral controlFlow.kind -> walnut action_type),
|
|
@@ -6,25 +6,45 @@ export declare const WALNUT_TO_CF: Record<string, CfKind>;
|
|
|
6
6
|
export declare const CF_TO_WALNUT: Record<CfKind, string>;
|
|
7
7
|
/**
|
|
8
8
|
* Maps one walnut wire `test_steps[]` entry (models/schemas.ts `step` schema shape)
|
|
9
|
-
* to a neutral `Step`.
|
|
9
|
+
* to a neutral `Step`.
|
|
10
10
|
*/
|
|
11
11
|
export declare function fromWalnutStep(raw: any): Step;
|
|
12
12
|
/**
|
|
13
13
|
* Maps a walnut `GET /api/test-cases/:id` response document (test-cases.ts:5125,
|
|
14
|
-
* TestCaseSchema-shaped) to the neutral `TestCase`.
|
|
15
|
-
* direction, exact payload shape the backend's zod schema accepts) lands in Task 6.
|
|
14
|
+
* TestCaseSchema-shaped) to the neutral `TestCase`.
|
|
16
15
|
*/
|
|
17
16
|
export declare function fromWalnutTc(doc: any): TestCase;
|
|
18
17
|
/** Maps one walnut `GET /api/test-cases` list-row (test-cases.ts:1746 `testCases[]`) to a `TcSummary`. */
|
|
19
18
|
export declare function fromWalnutTcSummary(row: any): TcSummary;
|
|
19
|
+
/** One row of `GET /api/test-suites` → neutral SuiteSummary. */
|
|
20
|
+
export declare function fromWalnutSuiteSummary(row: any): SuiteSummary;
|
|
21
|
+
/** `GET /api/test-suites/:id` doc → neutral Suite. Members come from `testCases[]`
|
|
22
|
+
* (already null-TC-filtered by the backend), ordered by `order`; each member's
|
|
23
|
+
* `tcId` is the friendly business key when populated, else the Mongo id. */
|
|
24
|
+
export declare function fromWalnutSuite(doc: any): Suite;
|
|
25
|
+
/** One `GET /api/stories` list-row → neutral StorySummary. */
|
|
26
|
+
export declare function fromWalnutStorySummary(row: any): StorySummary;
|
|
27
|
+
/** `GET /api/stories/:id` doc (or a list row) → neutral Story, with the acceptance criteria the
|
|
28
|
+
* manual-test-case drafting reads. */
|
|
29
|
+
export declare function fromWalnutStory(doc: any): Story;
|
|
20
30
|
/**
|
|
21
|
-
* One neutral `Step` -> one walnut
|
|
22
|
-
* `fromWalnutStep` above is the reverse (
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
* asserts on stepType/controlFlow.kind, the fields both shapes agree on).
|
|
31
|
+
* One neutral `Step` -> one walnut `test_steps[]` entry (backend wire + editor draft).
|
|
32
|
+
* `fromWalnutStep` above is the reverse (see the round-trip test in
|
|
33
|
+
* mapper.test.ts, which exercises both directions and asserts on
|
|
34
|
+
* stepType/controlFlow.kind, the fields both shapes agree on).
|
|
26
35
|
*/
|
|
27
36
|
export declare function toWalnutStep(s: Step): Record<string, unknown>;
|
|
37
|
+
/**
|
|
38
|
+
* Default-row test data (param name -> value) derived from the steps, for the persistence path.
|
|
39
|
+
*
|
|
40
|
+
* Walnut resolves a web step's value at execution time from a `${param}` token in its description
|
|
41
|
+
* backed by a datarow (NOT from `input_value`, which is android-only) -- see the create route's
|
|
42
|
+
* dataset auto-creation. So a step that carries both a single `${param}` token AND a literal `value`
|
|
43
|
+
* binds that value to that parameter. Steps with zero or multiple tokens are skipped (nothing to bind
|
|
44
|
+
* unambiguously) -- the caller can still supply those via the explicit `TestCase.data` map, which
|
|
45
|
+
* WalnutAdapter merges ON TOP of this. First-seen wins, mirroring the backend's own row extraction.
|
|
46
|
+
*/
|
|
47
|
+
export declare function deriveTestData(steps: Step[]): Record<string, string>;
|
|
28
48
|
/**
|
|
29
49
|
* Whole neutral TestCase -> the walnut-frontend draft payload's TestCase-level
|
|
30
50
|
* fields. `tc_draft_open` layers `draftId`/`mode` on top of this -- those
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapper.d.ts","sourceRoot":"","sources":["../../../src/adapters/walnut/mapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"mapper.d.ts","sourceRoot":"","sources":["../../../src/adapters/walnut/mapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAE5H,MAAM,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AAK9D,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAM/C,CAAC;AAEF;mEACmE;AACnE,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAErB,CAAC;AA0C5B;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,CAqD7C;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,GAAG,GAAG,QAAQ,CAuB/C;AAED,0GAA0G;AAC1G,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,GAAG,GAAG,SAAS,CAQvD;AAQD,gEAAgE;AAChE,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,GAAG,GAAG,YAAY,CAM7D;AAED;;6EAE6E;AAC7E,wBAAgB,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,KAAK,CAc/C;AAQD,8DAA8D;AAC9D,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,GAAG,GAAG,YAAY,CAQ7D;AAED;uCACuC;AACvC,wBAAgB,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,KAAK,CAY/C;AA0CD;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAsD7D;AAED;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAWpE;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,EAAE,EAAE,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAOhE"}
|
|
@@ -53,7 +53,7 @@ function fromWalnutFlags(raw) {
|
|
|
53
53
|
}
|
|
54
54
|
/**
|
|
55
55
|
* Maps one walnut wire `test_steps[]` entry (models/schemas.ts `step` schema shape)
|
|
56
|
-
* to a neutral `Step`.
|
|
56
|
+
* to a neutral `Step`.
|
|
57
57
|
*/
|
|
58
58
|
export function fromWalnutStep(raw) {
|
|
59
59
|
const n = raw.step_number;
|
|
@@ -62,9 +62,11 @@ export function fromWalnutStep(raw) {
|
|
|
62
62
|
const expectedResult = raw.expected_result ?? undefined;
|
|
63
63
|
const flags = fromWalnutFlags(raw);
|
|
64
64
|
const cfKind = WALNUT_TO_CF[actionType];
|
|
65
|
+
const sourceId = raw._id != null ? String(raw._id) : undefined;
|
|
65
66
|
if (cfKind) {
|
|
66
67
|
return {
|
|
67
68
|
n,
|
|
69
|
+
...(sourceId ? { sourceId } : {}),
|
|
68
70
|
description,
|
|
69
71
|
actionType,
|
|
70
72
|
stepType: 'control_flow',
|
|
@@ -78,8 +80,10 @@ export function fromWalnutStep(raw) {
|
|
|
78
80
|
flags,
|
|
79
81
|
};
|
|
80
82
|
}
|
|
83
|
+
const fcd = raw.function_call_data;
|
|
81
84
|
return {
|
|
82
85
|
n,
|
|
86
|
+
...(sourceId ? { sourceId } : {}),
|
|
83
87
|
description,
|
|
84
88
|
actionType,
|
|
85
89
|
stepType: normalizeStepType(raw.step_type),
|
|
@@ -88,13 +92,23 @@ export function fromWalnutStep(raw) {
|
|
|
88
92
|
expectedResult,
|
|
89
93
|
api: raw.api_request_data ?? undefined,
|
|
90
94
|
db: raw.db_request_data ?? undefined,
|
|
95
|
+
// Nested test-case call — carry the child binding so it survives a read→edit→save round-trip.
|
|
96
|
+
...(fcd && fcd.test_case_id != null
|
|
97
|
+
? {
|
|
98
|
+
functionCall: {
|
|
99
|
+
testCaseId: String(fcd.test_case_id),
|
|
100
|
+
testCaseName: fcd.function_name ?? undefined,
|
|
101
|
+
inputParams: fcd.input_params ?? undefined,
|
|
102
|
+
continueOnFailure: fcd.continue_on_failure ?? undefined,
|
|
103
|
+
},
|
|
104
|
+
}
|
|
105
|
+
: {}),
|
|
91
106
|
flags,
|
|
92
107
|
};
|
|
93
108
|
}
|
|
94
109
|
/**
|
|
95
110
|
* Maps a walnut `GET /api/test-cases/:id` response document (test-cases.ts:5125,
|
|
96
|
-
* TestCaseSchema-shaped) to the neutral `TestCase`.
|
|
97
|
-
* direction, exact payload shape the backend's zod schema accepts) lands in Task 6.
|
|
111
|
+
* TestCaseSchema-shaped) to the neutral `TestCase`.
|
|
98
112
|
*/
|
|
99
113
|
export function fromWalnutTc(doc) {
|
|
100
114
|
const id = doc.test_case_id ?? (doc._id != null ? String(doc._id) : undefined);
|
|
@@ -109,8 +123,11 @@ export function fromWalnutTc(doc) {
|
|
|
109
123
|
category,
|
|
110
124
|
preconditions: doc.preconditions ?? undefined,
|
|
111
125
|
expectedOutcome: doc.expected_outcome ?? undefined,
|
|
126
|
+
// Story linkage (story_id → user_stories); may be a raw ObjectId or a populated doc. Carried so a
|
|
127
|
+
// read→edit→save round-trip (and the manual→automated promote) keeps the test case linked to its story.
|
|
128
|
+
storyRef: doc.story_id != null ? String(doc.story_id?._id ?? doc.story_id) : undefined,
|
|
112
129
|
tags: doc.tags ?? [],
|
|
113
|
-
// Passthrough for
|
|
130
|
+
// Passthrough for the optimistic-concurrency PUT retry -- dropping this
|
|
114
131
|
// silently overwrites concurrent edits.
|
|
115
132
|
version: doc.version ?? undefined,
|
|
116
133
|
steps: (doc.test_steps ?? []).map(fromWalnutStep),
|
|
@@ -127,15 +144,72 @@ export function fromWalnutTcSummary(row) {
|
|
|
127
144
|
};
|
|
128
145
|
}
|
|
129
146
|
// ---------------------------------------------------------------------------
|
|
130
|
-
//
|
|
147
|
+
// Suites. The list row and the single-doc GET share the same shape (both
|
|
148
|
+
// `{ ...suite, testCases, totalTests, ... }`); `_id` is the id the GET /:id
|
|
149
|
+
// route resolves by (NOT the `SU_` business key), so it is what we surface.
|
|
150
|
+
// ---------------------------------------------------------------------------
|
|
151
|
+
/** One row of `GET /api/test-suites` → neutral SuiteSummary. */
|
|
152
|
+
export function fromWalnutSuiteSummary(row) {
|
|
153
|
+
return {
|
|
154
|
+
id: String(row._id ?? ''),
|
|
155
|
+
name: row.name ?? '',
|
|
156
|
+
...(typeof row.totalTests === 'number' ? { memberCount: row.totalTests } : {}),
|
|
157
|
+
};
|
|
158
|
+
}
|
|
159
|
+
/** `GET /api/test-suites/:id` doc → neutral Suite. Members come from `testCases[]`
|
|
160
|
+
* (already null-TC-filtered by the backend), ordered by `order`; each member's
|
|
161
|
+
* `tcId` is the friendly business key when populated, else the Mongo id. */
|
|
162
|
+
export function fromWalnutSuite(doc) {
|
|
163
|
+
const members = (doc?.testCases ?? [])
|
|
164
|
+
.filter((m) => m && m.testCaseId)
|
|
165
|
+
.map((m, i) => ({
|
|
166
|
+
tcId: m.testCaseId?.test_case_id ?? String(m.testCaseId?._id ?? m.testCaseId ?? ''),
|
|
167
|
+
order: typeof m.order === 'number' ? m.order : i,
|
|
168
|
+
}))
|
|
169
|
+
.sort((a, b) => a.order - b.order);
|
|
170
|
+
return {
|
|
171
|
+
id: String(doc?._id ?? ''),
|
|
172
|
+
name: doc?.name ?? '',
|
|
173
|
+
...(doc?.description ? { description: String(doc.description) } : {}),
|
|
174
|
+
members,
|
|
175
|
+
};
|
|
176
|
+
}
|
|
177
|
+
// ---------------------------------------------------------------------------
|
|
178
|
+
// User stories (Walnut `user_stories`, type 'story'). List rows and the single GET share the doc
|
|
179
|
+
// shape; `_id` is the id test cases link to (story_id), and `walnut_key`/`key` is the human business
|
|
180
|
+
// key (US_001, or an external Jira/ADO key). `key` in the list response already falls back walnut_key→…
|
|
181
|
+
// ---------------------------------------------------------------------------
|
|
182
|
+
/** One `GET /api/stories` list-row → neutral StorySummary. */
|
|
183
|
+
export function fromWalnutStorySummary(row) {
|
|
184
|
+
return {
|
|
185
|
+
id: String(row?._id ?? row?.id ?? ''),
|
|
186
|
+
...(row?.key || row?.walnut_key ? { key: String(row.key ?? row.walnut_key) } : {}),
|
|
187
|
+
title: row?.title ?? '',
|
|
188
|
+
...(row?.status ? { status: String(row.status) } : {}),
|
|
189
|
+
...(row?.priority ? { priority: String(row.priority) } : {}),
|
|
190
|
+
};
|
|
191
|
+
}
|
|
192
|
+
/** `GET /api/stories/:id` doc (or a list row) → neutral Story, with the acceptance criteria the
|
|
193
|
+
* manual-test-case drafting reads. */
|
|
194
|
+
export function fromWalnutStory(doc) {
|
|
195
|
+
return {
|
|
196
|
+
id: String(doc?._id ?? doc?.id ?? ''),
|
|
197
|
+
...(doc?.key || doc?.walnut_key ? { key: String(doc.key ?? doc.walnut_key) } : {}),
|
|
198
|
+
title: doc?.title ?? '',
|
|
199
|
+
...(doc?.description ? { description: String(doc.description) } : {}),
|
|
200
|
+
...(Array.isArray(doc?.acceptance_criteria) && doc.acceptance_criteria.length
|
|
201
|
+
? { acceptanceCriteria: doc.acceptance_criteria.map((x) => String(x)) }
|
|
202
|
+
: {}),
|
|
203
|
+
...(doc?.status ? { status: String(doc.status) } : {}),
|
|
204
|
+
...(doc?.priority ? { priority: String(doc.priority) } : {}),
|
|
205
|
+
};
|
|
206
|
+
}
|
|
207
|
+
// ---------------------------------------------------------------------------
|
|
208
|
+
// FORWARD direction: neutral -> walnut.
|
|
131
209
|
//
|
|
132
|
-
//
|
|
133
|
-
//
|
|
134
|
-
//
|
|
135
|
-
// TestStepsEditor consumes off the `/embed/test-case-draft#d=<payload>` URL
|
|
136
|
-
// fragment -- reproduced here from scripts/open-in-walnut-editor.ts's hand-built
|
|
137
|
-
// literal so there is one real implementation instead of a throwaway script and
|
|
138
|
-
// a second hand-written literal drifting apart from it.
|
|
210
|
+
// The same shape serves BOTH (a) the backend persistence wire (`POST/PUT /api/test-cases`, which
|
|
211
|
+
// WalnutAdapter posts) and (b) the walnut-frontend draft the real TestStepsEditor consumes off the
|
|
212
|
+
// `/embed/test-case-draft#d=<payload>` URL fragment. `fromWalnutStep` is the reverse.
|
|
139
213
|
// ---------------------------------------------------------------------------
|
|
140
214
|
const PARAM_TOKEN = /\$\{([^}]+)\}/g;
|
|
141
215
|
/** Every distinct `${name}` token in a step description, in first-seen order. */
|
|
@@ -162,18 +236,16 @@ function toWalnutCondition(c) {
|
|
|
162
236
|
};
|
|
163
237
|
}
|
|
164
238
|
/** Forward of fromWalnutFlags's stepLevelActions branch. `is_optional` is
|
|
165
|
-
* deliberately NOT emitted -- it never appears in the editor draft payload
|
|
166
|
-
*
|
|
167
|
-
* wire shape (a different contract, out of scope here). */
|
|
239
|
+
* deliberately NOT emitted -- it never appears in the editor draft payload,
|
|
240
|
+
* only in the backend persistence wire shape (a different contract). */
|
|
168
241
|
function toWalnutFlags(flags) {
|
|
169
242
|
return { skip: !!flags.skip, captureScreenshot: !!flags.screenshot, continueOnFailure: !!flags.continueOnFailure };
|
|
170
243
|
}
|
|
171
244
|
/**
|
|
172
|
-
* One neutral `Step` -> one walnut
|
|
173
|
-
* `fromWalnutStep` above is the reverse (
|
|
174
|
-
*
|
|
175
|
-
*
|
|
176
|
-
* asserts on stepType/controlFlow.kind, the fields both shapes agree on).
|
|
245
|
+
* One neutral `Step` -> one walnut `test_steps[]` entry (backend wire + editor draft).
|
|
246
|
+
* `fromWalnutStep` above is the reverse (see the round-trip test in
|
|
247
|
+
* mapper.test.ts, which exercises both directions and asserts on
|
|
248
|
+
* stepType/controlFlow.kind, the fields both shapes agree on).
|
|
177
249
|
*/
|
|
178
250
|
export function toWalnutStep(s) {
|
|
179
251
|
const cf = s.controlFlow;
|
|
@@ -182,7 +254,12 @@ export function toWalnutStep(s) {
|
|
|
182
254
|
step_type: s.stepType === 'api' ? 'API' : s.stepType,
|
|
183
255
|
action_type: cf ? CF_TO_WALNUT[cf.kind] : s.actionType,
|
|
184
256
|
step_description: s.description ?? '',
|
|
185
|
-
expected_result
|
|
257
|
+
// The backend `step` schema marks expected_result REQUIRED (non-empty) — an empty string makes
|
|
258
|
+
// insertMany throw a 400. Manual/control-flow steps often carry none, so fall back to a neutral,
|
|
259
|
+
// non-empty phrase derived from the step rather than let the save fail.
|
|
260
|
+
expected_result: s.expectedResult?.trim() || `Verified: ${(s.description ?? 'step').trim() || 'step'}`,
|
|
261
|
+
// Kept-step identity for the update PUT's upsert (matched by _id; new steps omit it → created).
|
|
262
|
+
...(s.sourceId ? { _id: s.sourceId } : {}),
|
|
186
263
|
};
|
|
187
264
|
if (s.stepType === 'control_flow' && cf) {
|
|
188
265
|
const condition = toWalnutCondition(cf.condition);
|
|
@@ -195,9 +272,8 @@ export function toWalnutStep(s) {
|
|
|
195
272
|
}
|
|
196
273
|
const params = detectParams(s.description);
|
|
197
274
|
// Real recorded locator, when this step originated from a LIVE recording
|
|
198
|
-
// session
|
|
199
|
-
//
|
|
200
|
-
// fromRecordedStep below). `element.locator_type`/`locator_value` is exactly
|
|
275
|
+
// session rather than LLM-authored text -- `objectRef.locators` is only ever
|
|
276
|
+
// populated in that path. `element.locator_type`/`locator_value` is exactly
|
|
201
277
|
// the field walnut-frontend's TestStepsEditor `TestStep.element` reads
|
|
202
278
|
// (TestStepsEditor.tsx ~line 2007) -- prefer the locator flagged `unique`
|
|
203
279
|
// (the same selector Walnut's own replay ladder prioritizes), else the first.
|
|
@@ -210,8 +286,44 @@ export function toWalnutStep(s) {
|
|
|
210
286
|
...(s.flags ? { stepLevelActions: toWalnutFlags(s.flags) } : {}),
|
|
211
287
|
...(s.objectRef?.id !== undefined ? { object_id: s.objectRef.id } : {}),
|
|
212
288
|
...(primaryLocator ? { element: { locator_type: primaryLocator.name, locator_value: primaryLocator.value } } : {}),
|
|
289
|
+
// Nested test-case call — emit the wire shape the backend + editor expect (function_call_data),
|
|
290
|
+
// the inverse of fromWalnutStep, so an inserted/edited nested step persists its child binding.
|
|
291
|
+
...(s.functionCall
|
|
292
|
+
? {
|
|
293
|
+
function_call_data: {
|
|
294
|
+
test_case_id: s.functionCall.testCaseId,
|
|
295
|
+
...(s.functionCall.testCaseName ? { function_name: s.functionCall.testCaseName } : {}),
|
|
296
|
+
...(s.functionCall.inputParams ? { input_params: s.functionCall.inputParams } : {}),
|
|
297
|
+
...(s.functionCall.continueOnFailure ? { continue_on_failure: true } : {}),
|
|
298
|
+
},
|
|
299
|
+
}
|
|
300
|
+
: {}),
|
|
213
301
|
};
|
|
214
302
|
}
|
|
303
|
+
/**
|
|
304
|
+
* Default-row test data (param name -> value) derived from the steps, for the persistence path.
|
|
305
|
+
*
|
|
306
|
+
* Walnut resolves a web step's value at execution time from a `${param}` token in its description
|
|
307
|
+
* backed by a datarow (NOT from `input_value`, which is android-only) -- see the create route's
|
|
308
|
+
* dataset auto-creation. So a step that carries both a single `${param}` token AND a literal `value`
|
|
309
|
+
* binds that value to that parameter. Steps with zero or multiple tokens are skipped (nothing to bind
|
|
310
|
+
* unambiguously) -- the caller can still supply those via the explicit `TestCase.data` map, which
|
|
311
|
+
* WalnutAdapter merges ON TOP of this. First-seen wins, mirroring the backend's own row extraction.
|
|
312
|
+
*/
|
|
313
|
+
export function deriveTestData(steps) {
|
|
314
|
+
const data = {};
|
|
315
|
+
for (const s of steps) {
|
|
316
|
+
if (s.value === undefined || s.value === '')
|
|
317
|
+
continue;
|
|
318
|
+
const params = detectParams(s.description);
|
|
319
|
+
if (params.length === 1) {
|
|
320
|
+
const key = params[0];
|
|
321
|
+
if (!(key in data))
|
|
322
|
+
data[key] = s.value;
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
return data;
|
|
326
|
+
}
|
|
215
327
|
/**
|
|
216
328
|
* Whole neutral TestCase -> the walnut-frontend draft payload's TestCase-level
|
|
217
329
|
* fields. `tc_draft_open` layers `draftId`/`mode` on top of this -- those
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapper.js","sourceRoot":"","sources":["../../../src/adapters/walnut/mapper.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mapper.js","sourceRoot":"","sources":["../../../src/adapters/walnut/mapper.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -41,31 +41,45 @@ export type OfflineQaConfig = ConfigCommon & {
|
|
|
41
41
|
token?: string;
|
|
42
42
|
projectId?: string;
|
|
43
43
|
};
|
|
44
|
-
/**
|
|
45
|
-
*
|
|
46
|
-
*
|
|
47
|
-
*
|
|
44
|
+
/** token + at least one of (baseUrl | url) present -- the shape a live ProviderAdapter is built from.
|
|
45
|
+
* `baseUrl` (QA_BASE_URL) is the Walnut BACKEND REST base (direct data ops); `url` (QA_MCP_URL) is the
|
|
46
|
+
* agent /mcp endpoint to hop to (recording + save-with-editor, and the SimplifyQA/legacy forwarder).
|
|
47
|
+
* Both are OPTIONAL at the type level — a cloud editor has only `baseUrl`, a legacy config has only
|
|
48
|
+
* `url` — but resolveConfig guarantees at least one is present at runtime. `projectId` is OPTIONAL: a
|
|
49
|
+
* session can be connected with NO project selected yet, and the user picks one at runtime
|
|
50
|
+
* (list_projects -> qa_switch_project). */
|
|
48
51
|
export type ConnectedQaConfig = ConfigCommon & {
|
|
49
52
|
mode: 'connected';
|
|
50
|
-
url
|
|
53
|
+
url?: string;
|
|
51
54
|
token: string;
|
|
52
55
|
projectId?: string;
|
|
53
56
|
};
|
|
54
57
|
export type QaConfig = OfflineQaConfig | ConnectedQaConfig;
|
|
58
|
+
/**
|
|
59
|
+
* A token "looks like a JWT" when it is exactly three non-empty base64url segments separated by dots
|
|
60
|
+
* (header.payload.signature). Used to AUTO-DETECT the auth mode: a Walnut user JWT → 'jwt' (Bearer +
|
|
61
|
+
* x-project-id + x-user-id), anything else (an MCP API key) → 'key' (Bearer only). No decode/verify —
|
|
62
|
+
* shape alone is enough to pick the header set; the backend re-verifies the token itself.
|
|
63
|
+
*/
|
|
64
|
+
export declare function looksLikeJwt(token: string): boolean;
|
|
55
65
|
/**
|
|
56
66
|
* Resolution order (spec §12): defaults -> ~/.common-qa-mcp/config.json
|
|
57
67
|
* (named connections; cliFlags.connection selects) -> QA_MCP_* env -> CLI flags.
|
|
58
68
|
* Each layer only overrides keys it actually sets.
|
|
59
69
|
*
|
|
60
|
-
* Credentials
|
|
61
|
-
* -
|
|
62
|
-
*
|
|
63
|
-
* -
|
|
64
|
-
*
|
|
65
|
-
* -
|
|
66
|
-
*
|
|
67
|
-
*
|
|
68
|
-
*
|
|
70
|
+
* Credentials are optional overall (design note §3):
|
|
71
|
+
* - token AND baseUrl AND url ALL ABSENT -> OfflineQaConfig, no throw. The normal, supported way to
|
|
72
|
+
* run with no backend at all (author drafts, hand off to the editor).
|
|
73
|
+
* - a PARTIAL set (a baseUrl/url but no token, or a token but neither baseUrl nor url) ->
|
|
74
|
+
* misconfiguration, throws naming what is missing.
|
|
75
|
+
* - token + at least one of (baseUrl | url) -> ConnectedQaConfig. `baseUrl` (QA_BASE_URL) is the
|
|
76
|
+
* Walnut backend for direct data ops; `url` (QA_MCP_URL) is the agent /mcp endpoint (recording +
|
|
77
|
+
* the legacy/SimplifyQA forwarder). projectId is OPTIONAL: absent means "connected, no project
|
|
78
|
+
* selected yet" and the user chooses one at runtime.
|
|
79
|
+
*
|
|
80
|
+
* Auth mode is AUTO-DETECTED from the token shape (jwt vs key) unless QA_MCP_WALNUT_AUTH is set
|
|
81
|
+
* explicitly (env/config-file/CLI), which always wins. Never logs `token` -- callers must go through
|
|
82
|
+
* `mask()` from log.ts if they log config at all.
|
|
69
83
|
*/
|
|
70
84
|
export declare function resolveConfig(env: NodeJS.ProcessEnv, cliFlags?: Partial<QaConfig>): QaConfig;
|
|
71
85
|
/**
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAKA,KAAK,YAAY,GAAG;IAClB,QAAQ,CAAC,EAAE,QAAQ,GAAG,YAAY,CAAC;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,KAAK,GAAG,KAAK,CAAC;IAC1B,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;;;8EAQ0E;IAC1E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;qDAIiD;IACjD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;wDAEoD;IACpD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,eAAe,GAAG,YAAY,GAAG;IAC3C,IAAI,EAAE,SAAS,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAKA,KAAK,YAAY,GAAG;IAClB,QAAQ,CAAC,EAAE,QAAQ,GAAG,YAAY,CAAC;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,KAAK,GAAG,KAAK,CAAC;IAC1B,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;;;8EAQ0E;IAC1E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;qDAIiD;IACjD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;wDAEoD;IACpD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,eAAe,GAAG,YAAY,GAAG;IAC3C,IAAI,EAAE,SAAS,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;;;;4CAM4C;AAC5C,MAAM,MAAM,iBAAiB,GAAG,YAAY,GAAG;IAC7C,IAAI,EAAE,WAAW,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG,eAAe,GAAG,iBAAiB,CAAC;AA2G3D;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAGnD;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,EAAE,QAAQ,GAAE,OAAO,CAAC,QAAQ,CAAM,GAAG,QAAQ,CAmChG;AA4BD;;;;;GAKG;AACH,wBAAsB,cAAc,CAClC,GAAG,EAAE,MAAM,EACX,SAAS,GAAE,OAAO,KAAa,GAC9B,OAAO,CAAC,QAAQ,GAAG,YAAY,GAAG,IAAI,CAAC,CAoBzC;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAK7D"}
|
package/dist/config.js
CHANGED
|
@@ -107,41 +107,59 @@ function applyLayer(target, layer) {
|
|
|
107
107
|
target[key] = value;
|
|
108
108
|
}
|
|
109
109
|
}
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
110
|
+
/**
|
|
111
|
+
* A token "looks like a JWT" when it is exactly three non-empty base64url segments separated by dots
|
|
112
|
+
* (header.payload.signature). Used to AUTO-DETECT the auth mode: a Walnut user JWT → 'jwt' (Bearer +
|
|
113
|
+
* x-project-id + x-user-id), anything else (an MCP API key) → 'key' (Bearer only). No decode/verify —
|
|
114
|
+
* shape alone is enough to pick the header set; the backend re-verifies the token itself.
|
|
115
|
+
*/
|
|
116
|
+
export function looksLikeJwt(token) {
|
|
117
|
+
const parts = token.split('.');
|
|
118
|
+
return parts.length === 3 && parts.every((p) => p.length > 0 && /^[A-Za-z0-9_-]+$/.test(p));
|
|
119
|
+
}
|
|
117
120
|
/**
|
|
118
121
|
* Resolution order (spec §12): defaults -> ~/.common-qa-mcp/config.json
|
|
119
122
|
* (named connections; cliFlags.connection selects) -> QA_MCP_* env -> CLI flags.
|
|
120
123
|
* Each layer only overrides keys it actually sets.
|
|
121
124
|
*
|
|
122
|
-
* Credentials
|
|
123
|
-
* -
|
|
124
|
-
*
|
|
125
|
-
* -
|
|
126
|
-
*
|
|
127
|
-
* -
|
|
128
|
-
*
|
|
129
|
-
*
|
|
130
|
-
*
|
|
125
|
+
* Credentials are optional overall (design note §3):
|
|
126
|
+
* - token AND baseUrl AND url ALL ABSENT -> OfflineQaConfig, no throw. The normal, supported way to
|
|
127
|
+
* run with no backend at all (author drafts, hand off to the editor).
|
|
128
|
+
* - a PARTIAL set (a baseUrl/url but no token, or a token but neither baseUrl nor url) ->
|
|
129
|
+
* misconfiguration, throws naming what is missing.
|
|
130
|
+
* - token + at least one of (baseUrl | url) -> ConnectedQaConfig. `baseUrl` (QA_BASE_URL) is the
|
|
131
|
+
* Walnut backend for direct data ops; `url` (QA_MCP_URL) is the agent /mcp endpoint (recording +
|
|
132
|
+
* the legacy/SimplifyQA forwarder). projectId is OPTIONAL: absent means "connected, no project
|
|
133
|
+
* selected yet" and the user chooses one at runtime.
|
|
134
|
+
*
|
|
135
|
+
* Auth mode is AUTO-DETECTED from the token shape (jwt vs key) unless QA_MCP_WALNUT_AUTH is set
|
|
136
|
+
* explicitly (env/config-file/CLI), which always wins. Never logs `token` -- callers must go through
|
|
137
|
+
* `mask()` from log.ts if they log config at all.
|
|
131
138
|
*/
|
|
132
139
|
export function resolveConfig(env, cliFlags = {}) {
|
|
133
140
|
const merged = {
|
|
134
|
-
walnutAuth: 'key',
|
|
135
141
|
caps: new Set(DEFAULT_CAPS),
|
|
136
142
|
};
|
|
137
143
|
applyLayer(merged, readConfigFileLayer(cliFlags.connection));
|
|
138
144
|
applyLayer(merged, parseEnvLayer(env));
|
|
139
145
|
applyLayer(merged, cliFlags);
|
|
140
|
-
|
|
141
|
-
|
|
146
|
+
// Auth mode: an explicit QA_MCP_WALNUT_AUTH (env/config-file/CLI) always wins; otherwise auto-detect
|
|
147
|
+
// from the token — a JWT-shaped token → 'jwt', anything else → 'key'. Offline (no token) keeps the
|
|
148
|
+
// harmless 'key' default. Computed AFTER the token is known (below the layer merge).
|
|
149
|
+
merged.walnutAuth = merged.walnutAuth ?? (merged.token && looksLikeJwt(merged.token) ? 'jwt' : 'key');
|
|
150
|
+
const hasToken = !!merged.token;
|
|
151
|
+
const hasUrl = !!merged.url;
|
|
152
|
+
const hasBaseUrl = !!merged.baseUrl;
|
|
153
|
+
if (!hasToken && !hasUrl && !hasBaseUrl) {
|
|
142
154
|
// No credentials supplied at all -- offline is the intended, error-free outcome.
|
|
143
155
|
return { ...merged, mode: 'offline' };
|
|
144
156
|
}
|
|
157
|
+
// A partial set is a misconfiguration -- name exactly what is missing.
|
|
158
|
+
const missing = [];
|
|
159
|
+
if (!hasToken)
|
|
160
|
+
missing.push('QA_MCP_TOKEN');
|
|
161
|
+
if (!hasUrl && !hasBaseUrl)
|
|
162
|
+
missing.push('QA_BASE_URL or QA_MCP_URL');
|
|
145
163
|
if (missing.length) {
|
|
146
164
|
throw new Error(`Missing required configuration: set ${missing.join(', ')} (via environment variables, ` +
|
|
147
165
|
`~/.common-qa-mcp/config.json, or CLI flags).`);
|