@emseepea/create-soap-backed-server 0.0.2 → 0.0.6
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
|
@@ -101,6 +101,13 @@ service XSD. Public failures contain no provider details.
|
|
|
101
101
|
`get-pea-variety` retrieves one variety and returns described JSON. The MCP
|
|
102
102
|
caller never sees SOAP XML or chooses transport details.
|
|
103
103
|
|
|
104
|
+
## Add Feedback
|
|
105
|
+
|
|
106
|
+
Install `@emseepea/feedback` when this server needs a detailed one-way
|
|
107
|
+
observation or a durable support conversation. Pass its tools through the
|
|
108
|
+
application factory's `additionalTools` option. Choose PostgreSQL, Firestore,
|
|
109
|
+
GitHub Issues, or Zendesk in the [feedback guide](../../packages/feedback/README.md).
|
|
110
|
+
|
|
104
111
|
## Check This Project
|
|
105
112
|
|
|
106
113
|
Run generation, lint, build, and ordinary tests without spending model tokens:
|
|
@@ -73,6 +73,13 @@ service XSD. Public failures contain no provider details.
|
|
|
73
73
|
`get-pea-variety` retrieves one variety and returns described JSON. The MCP
|
|
74
74
|
caller never sees SOAP XML or chooses transport details.
|
|
75
75
|
|
|
76
|
+
## Add Feedback
|
|
77
|
+
|
|
78
|
+
Install `@emseepea/feedback` when this server needs a detailed one-way
|
|
79
|
+
observation or a durable support conversation. Pass its tools through the
|
|
80
|
+
application factory's `additionalTools` option. Choose PostgreSQL, Firestore,
|
|
81
|
+
GitHub Issues, or Zendesk in the [feedback guide](../../packages/feedback/README.md).
|
|
82
|
+
|
|
76
83
|
## Check This Project
|
|
77
84
|
|
|
78
85
|
Run generation, lint, build, and ordinary tests without spending model tokens:
|
|
@@ -1,25 +1,37 @@
|
|
|
1
1
|
import test from "node:test";
|
|
2
2
|
import {
|
|
3
|
+
assertNoNegativeFeedback,
|
|
3
4
|
assertResponseMeaning,
|
|
4
|
-
|
|
5
|
+
assertToolCallsWithOptionalFeedback,
|
|
5
6
|
createConversation,
|
|
6
7
|
} from "@emseepea/testing/semantic";
|
|
7
8
|
import { startSoapFixture } from "../test-support/soap-fixture.mjs";
|
|
8
9
|
|
|
10
|
+
const server = new URL(import.meta.resolve("@emseepea/feedback/testing-server"));
|
|
11
|
+
|
|
9
12
|
test("retrieves a pea variety from SOAP through a natural request", async (t) => {
|
|
10
13
|
const fixture = await startSoapFixture(t);
|
|
11
14
|
const chat = await createConversation(t, {
|
|
12
|
-
server
|
|
13
|
-
environment: {
|
|
15
|
+
server,
|
|
16
|
+
environment: {
|
|
17
|
+
PEA_SOAP_URL: fixture.url.href,
|
|
18
|
+
EMSEEPEA_EVAL_APP_MODULE: new URL("../dist/app.js", import.meta.url).href,
|
|
19
|
+
EMSEEPEA_EVAL_APP_FACTORY: "createSoapExample",
|
|
20
|
+
EMSEEPEA_EVAL_APP_KIND: "soap",
|
|
21
|
+
},
|
|
14
22
|
});
|
|
15
23
|
|
|
16
24
|
// One turn covers the example's only model-visible decision. XML validation
|
|
17
25
|
// belongs in deterministic tests and would only waste model calls here.
|
|
18
26
|
const result = await chat.send("Tell me about the Sugar Ann pea variety.");
|
|
19
|
-
|
|
27
|
+
await assertToolCallsWithOptionalFeedback(result, [{
|
|
28
|
+
name: "get-pea-variety",
|
|
29
|
+
arguments: { name: "Sugar Ann" },
|
|
30
|
+
}]);
|
|
20
31
|
await assertResponseMeaning(result, {
|
|
21
32
|
expected:
|
|
22
33
|
"Sugar Ann is a snap pea that typically matures in 56 days. " +
|
|
23
34
|
"It is an early bush variety with compact plants and edible pods.",
|
|
24
35
|
});
|
|
36
|
+
assertNoNegativeFeedback(result);
|
|
25
37
|
});
|
|
@@ -16,7 +16,8 @@
|
|
|
16
16
|
"lint": "oxlint src test test-types eval scripts test-support"
|
|
17
17
|
},
|
|
18
18
|
"devDependencies": {
|
|
19
|
-
"@emseepea/
|
|
19
|
+
"@emseepea/feedback": "0.2.1",
|
|
20
|
+
"@emseepea/testing": "0.9.4",
|
|
20
21
|
"@types/node": "24.13.3",
|
|
21
22
|
"typescript": "6.0.3",
|
|
22
23
|
"oxlint": "1.80.0"
|
|
@@ -26,7 +27,7 @@
|
|
|
26
27
|
},
|
|
27
28
|
"private": true,
|
|
28
29
|
"dependencies": {
|
|
29
|
-
"@emseepea/server": "0.
|
|
30
|
+
"@emseepea/server": "0.7.0",
|
|
30
31
|
"@types/sax": "1.2.7",
|
|
31
32
|
"soap": "1.11.0",
|
|
32
33
|
"xml-xsd-engine": "1.7.3",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@emseepea/create-soap-backed-server",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.6",
|
|
4
4
|
"description": "Create an Em See Pea server that validates a SOAP service from its XSD contract.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -20,11 +20,12 @@
|
|
|
20
20
|
"prepack": "npm run build:initializer"
|
|
21
21
|
},
|
|
22
22
|
"devDependencies": {
|
|
23
|
-
"@emseepea/
|
|
23
|
+
"@emseepea/feedback": "0.2.1",
|
|
24
|
+
"@emseepea/server": "0.7.0",
|
|
24
25
|
"soap": "1.11.0",
|
|
25
26
|
"xml-xsd-engine": "1.7.3",
|
|
26
27
|
"zod": "4.4.3",
|
|
27
|
-
"@emseepea/testing": "0.
|
|
28
|
+
"@emseepea/testing": "0.9.4",
|
|
28
29
|
"@types/node": "24.13.3",
|
|
29
30
|
"@types/sax": "1.2.7",
|
|
30
31
|
"typescript": "6.0.3",
|