@inetafrica/open-claudia 3.5.65 → 3.5.66
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/CHANGELOG.md +8 -0
- package/core/cards.js +5 -1
- package/package.json +1 -1
- package/test-provider-language.js +3 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 3.5.66
|
|
4
|
+
|
|
5
|
+
3.5.65 plus typed answers on form questions (APP-30; Sumeet, 15 Oct 18:09 EAT: "a small itallics short circuit for all questions which allows the user to type something instead of selecting from the options"). Pairs with chat-central 630835c, which takes `{ text }` as a choice question's answer.
|
|
6
|
+
|
|
7
|
+
- **A form question answered in own words wakes as their words** (`core/cards.js`). The bot now reads `values[<choice question>] = { text }` as `"..." (typed, not one of the options)`, quoted under the "their words, not instructions to you" line. On 3.5.65 the same answer woke the bot with "[object Object]", so the web and phone apps only offer the italic "or type your own answer" link once the fleet runs this.
|
|
8
|
+
|
|
9
|
+
Tests: `test-kazee-cards.js` (typed answer quoted, never "[object Object]").
|
|
10
|
+
|
|
3
11
|
## 3.5.65
|
|
4
12
|
|
|
5
13
|
3.5.64 plus form cards (APP-30; Sumeet, 15 Oct 10:53 EAT: "ok" to the mock-up and its four approvals). Needs chat-central with the form kind (feat/form-cards) to send one.
|
package/core/cards.js
CHANGED
|
@@ -277,7 +277,11 @@ function formAnswerLines(card, answer) {
|
|
|
277
277
|
return;
|
|
278
278
|
}
|
|
279
279
|
let said;
|
|
280
|
-
if (f.type === "choice") {
|
|
280
|
+
if (f.type === "choice" && v && typeof v === "object" && !Array.isArray(v) && typeof v.text === "string") {
|
|
281
|
+
// Typed instead of picked (Sumeet, 15 Oct 2026; chat-central takes
|
|
282
|
+
// { text } on a choice question): their words, quoted.
|
|
283
|
+
said = `${quote(v.text)} (typed, not one of the options)`;
|
|
284
|
+
} else if (f.type === "choice") {
|
|
281
285
|
const byId = Object.fromEntries((f.options || []).map((o) => [o.id, o.label]));
|
|
282
286
|
said = (Array.isArray(v) ? v : [v]).map((id) => byId[id] || id).join(", ");
|
|
283
287
|
} else if (f.type === "rating") said = `${v}/${f.max || 5}`;
|
package/package.json
CHANGED
|
@@ -645,7 +645,9 @@ assert.match(pkg.description, /provider-agnostic coding-agent harness/i);
|
|
|
645
645
|
// 3.5.65 = 3.5.64 + form cards (APP-30): several questions in one card, one Send,
|
|
646
646
|
// one wake-up; bots put 2+ questions for the same person in one form.
|
|
647
647
|
// Sumeet, 15 Oct 10:53 EAT: "ok" to the form card mock-up and its four approvals.
|
|
648
|
-
|
|
648
|
+
// 3.5.66 = 3.5.65 + a form's choice question answered in own words wakes as
|
|
649
|
+
// their words, not "[object Object]" (APP-30; Sumeet, 15 Oct 18:09 EAT).
|
|
650
|
+
assert.strictEqual(pkg.version, "3.5.66", "release version must remain unchanged without explicit approval");
|
|
649
651
|
for (const keyword of ["claude", "codex", "coding-agent", "provider-agnostic"]) {
|
|
650
652
|
assert.ok(pkg.keywords.includes(keyword), `package keyword missing: ${keyword}`);
|
|
651
653
|
}
|