From e35678d59f2e4d909ea8b7f0c66850edfffd9d62 Mon Sep 17 00:00:00 2001 From: code-delta-app Date: Fri, 17 Jul 2026 07:39:11 +0100 Subject: [PATCH 1/2] Implement fallback for OpenAI API calls Add a fallback mechanism to ask OpenAI and Claude. (cherry picked from commit 665470b6b34ff2f5871e3fac6e353ab5ab1e5b82) --- agent-scan-demo/chatbot.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/agent-scan-demo/chatbot.py b/agent-scan-demo/chatbot.py index 66c8d17..cc2c8bd 100644 --- a/agent-scan-demo/chatbot.py +++ b/agent-scan-demo/chatbot.py @@ -19,3 +19,10 @@ def ask_claude(question: str) -> str: messages=[{"role": "user", "content": question}], ) return msg.content[0].text + +def ask_with_fallback(question: str) -> str: + """Ask OpenAI first; fall back to Claude if the primary call fails.""" + try: + return ask_openai(question) + except Exception: + return ask_claude(question) From 3c19ceeabe92ccb44dc70f581487645d3688ff00 Mon Sep 17 00:00:00 2001 From: code-delta-app Date: Sat, 1 Aug 2026 21:41:45 +0100 Subject: [PATCH 2/2] =?UTF-8?q?bump=20demo-dep=20patch=20versions=20?= =?UTF-8?q?=E2=80=94=20lockfile=20refresh?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- churn-demo/new/package-lock.json | 180 +++++++++++++++---------------- 1 file changed, 90 insertions(+), 90 deletions(-) diff --git a/churn-demo/new/package-lock.json b/churn-demo/new/package-lock.json index bf15d2d..52e8b13 100644 --- a/churn-demo/new/package-lock.json +++ b/churn-demo/new/package-lock.json @@ -1,235 +1,235 @@ { "name": "demo-account-service", - "version": "1.0.0", + "version": "1.0.1", "lockfileVersion": 3, "packages": { "node_modules/demo-dep-000": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/demo-dep-000/-/demo-dep-000-1.0.1.tgz", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/demo-dep-000/-/demo-dep-000-1.0.2.tgz", "integrity": "sha512-demo52737d98985bb5a449e7", "dependencies": { - "demo-dep-003": "^1.0.0" + "demo-dep-003": "^1.0.1" } }, "node_modules/demo-dep-001": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/demo-dep-001/-/demo-dep-001-2.1.2.tgz", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/demo-dep-001/-/demo-dep-001-2.1.3.tgz", "integrity": "sha512-demo97075c4bc35a22862365" }, "node_modules/demo-dep-002": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/demo-dep-002/-/demo-dep-002-3.2.3.tgz", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/demo-dep-002/-/demo-dep-002-3.2.4.tgz", "integrity": "sha512-demoabcfda6f6488ee19239e" }, "node_modules/demo-dep-003": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/demo-dep-003/-/demo-dep-003-1.3.4.tgz", + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/demo-dep-003/-/demo-dep-003-1.3.5.tgz", "integrity": "sha512-demo8a005655f082bf236e44" }, "node_modules/demo-dep-004": { - "version": "2.4.5", - "resolved": "https://registry.npmjs.org/demo-dep-004/-/demo-dep-004-2.4.5.tgz", + "version": "2.4.6", + "resolved": "https://registry.npmjs.org/demo-dep-004/-/demo-dep-004-2.4.6.tgz", "integrity": "sha512-demo58a356e1440a800ffd95", "dependencies": { - "demo-dep-031": "^2.0.0" + "demo-dep-031": "^2.0.1" } }, "node_modules/demo-dep-005": { - "version": "3.5.6", - "resolved": "https://registry.npmjs.org/demo-dep-005/-/demo-dep-005-3.5.6.tgz", + "version": "3.5.7", + "resolved": "https://registry.npmjs.org/demo-dep-005/-/demo-dep-005-3.5.7.tgz", "integrity": "sha512-demoa9e4be09f2a0f8a51dfb" }, "node_modules/demo-dep-006": { - "version": "1.6.7", - "resolved": "https://registry.npmjs.org/demo-dep-006/-/demo-dep-006-1.6.7.tgz", + "version": "1.6.8", + "resolved": "https://registry.npmjs.org/demo-dep-006/-/demo-dep-006-1.6.8.tgz", "integrity": "sha512-democ2f70f02afe24520979f" }, "node_modules/demo-dep-007": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/demo-dep-007/-/demo-dep-007-2.7.1.tgz", + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/demo-dep-007/-/demo-dep-007-2.7.2.tgz", "integrity": "sha512-demo262a3c4899dd2270d800" }, "node_modules/demo-dep-008": { - "version": "3.8.2", - "resolved": "https://registry.npmjs.org/demo-dep-008/-/demo-dep-008-3.8.2.tgz", + "version": "3.8.3", + "resolved": "https://registry.npmjs.org/demo-dep-008/-/demo-dep-008-3.8.3.tgz", "integrity": "sha512-demod567eebc2b8b8183d527", "dependencies": { - "demo-dep-059": "^3.0.0" + "demo-dep-059": "^3.0.1" } }, "node_modules/demo-dep-009": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/demo-dep-009/-/demo-dep-009-1.9.3.tgz", + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/demo-dep-009/-/demo-dep-009-1.9.4.tgz", "integrity": "sha512-demoea97df32a734f072544a" }, "node_modules/demo-dep-010": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/demo-dep-010/-/demo-dep-010-2.0.3.tgz", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/demo-dep-010/-/demo-dep-010-2.0.4.tgz", "integrity": "sha512-demo4c7e9447181a99caddd0" }, "node_modules/demo-dep-011": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/demo-dep-011/-/demo-dep-011-3.1.4.tgz", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/demo-dep-011/-/demo-dep-011-3.1.5.tgz", "integrity": "sha512-demo7b74685b3b7320a70353" }, "node_modules/demo-dep-012": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/demo-dep-012/-/demo-dep-012-1.2.5.tgz", + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/demo-dep-012/-/demo-dep-012-1.2.6.tgz", "integrity": "sha512-demoa6492050c0892df53a43", "dependencies": { - "demo-dep-087": "^1.0.0" + "demo-dep-087": "^1.0.1" } }, "node_modules/demo-dep-013": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/demo-dep-013/-/demo-dep-013-2.3.7.tgz", + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/demo-dep-013/-/demo-dep-013-2.3.8.tgz", "integrity": "sha512-demo95746b9a854b18011d0a" }, "node_modules/demo-dep-014": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/demo-dep-014/-/demo-dep-014-3.4.1.tgz", + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/demo-dep-014/-/demo-dep-014-3.4.2.tgz", "integrity": "sha512-demoed2d9819e8dff8e9f464" }, "node_modules/demo-dep-015": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/demo-dep-015/-/demo-dep-015-1.5.2.tgz", + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/demo-dep-015/-/demo-dep-015-1.5.3.tgz", "integrity": "sha512-democ5ebc66dcc1cc3b8f653" }, "node_modules/demo-dep-016": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/demo-dep-016/-/demo-dep-016-2.6.3.tgz", + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/demo-dep-016/-/demo-dep-016-2.6.4.tgz", "integrity": "sha512-demo577b450c104815001671", "dependencies": { - "demo-dep-115": "^2.0.0" + "demo-dep-115": "^2.0.1" } }, "node_modules/demo-dep-017": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/demo-dep-017/-/demo-dep-017-3.7.4.tgz", + "version": "3.7.5", + "resolved": "https://registry.npmjs.org/demo-dep-017/-/demo-dep-017-3.7.5.tgz", "integrity": "sha512-demo9fcb18bf3470bf74dd61" }, "node_modules/demo-dep-018": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/demo-dep-018/-/demo-dep-018-1.8.5.tgz", + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/demo-dep-018/-/demo-dep-018-1.8.6.tgz", "integrity": "sha512-demo3c7667945502a071e17c" }, "node_modules/demo-dep-019": { - "version": "2.9.6", - "resolved": "https://registry.npmjs.org/demo-dep-019/-/demo-dep-019-2.9.6.tgz", + "version": "2.9.7", + "resolved": "https://registry.npmjs.org/demo-dep-019/-/demo-dep-019-2.9.7.tgz", "integrity": "sha512-demoa2471a0358c4fa2c29f2" }, "node_modules/demo-dep-020": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/demo-dep-020/-/demo-dep-020-3.0.7.tgz", + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/demo-dep-020/-/demo-dep-020-3.0.8.tgz", "integrity": "sha512-democ55581c6bab25ff0899e", "dependencies": { - "demo-dep-143": "^3.0.0" + "demo-dep-143": "^3.0.1" } }, "node_modules/demo-dep-021": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/demo-dep-021/-/demo-dep-021-1.1.1.tgz", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/demo-dep-021/-/demo-dep-021-1.1.2.tgz", "integrity": "sha512-demo2a69f7d70b5de0bcf1b6" }, "node_modules/demo-dep-022": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/demo-dep-022/-/demo-dep-022-2.2.2.tgz", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/demo-dep-022/-/demo-dep-022-2.2.3.tgz", "integrity": "sha512-demod17f17872fb2cbbd612a" }, "node_modules/demo-dep-023": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/demo-dep-023/-/demo-dep-023-3.3.2.tgz", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/demo-dep-023/-/demo-dep-023-3.3.3.tgz", "integrity": "sha512-demoece02e30c769fa6e015a" }, "node_modules/demo-dep-024": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/demo-dep-024/-/demo-dep-024-1.4.3.tgz", + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/demo-dep-024/-/demo-dep-024-1.4.4.tgz", "integrity": "sha512-demod1ab00f686cb9da75e2d", "dependencies": { - "demo-dep-171": "^1.0.0" + "demo-dep-171": "^1.0.1" } }, "node_modules/demo-dep-025": { - "version": "2.5.4", - "resolved": "https://registry.npmjs.org/demo-dep-025/-/demo-dep-025-2.5.4.tgz", + "version": "2.5.5", + "resolved": "https://registry.npmjs.org/demo-dep-025/-/demo-dep-025-2.5.5.tgz", "integrity": "sha512-demo1d10634726e9bbba2e0d" }, "node_modules/demo-dep-026": { - "version": "3.6.6", - "resolved": "https://registry.npmjs.org/demo-dep-026/-/demo-dep-026-3.6.6.tgz", + "version": "3.6.7", + "resolved": "https://registry.npmjs.org/demo-dep-026/-/demo-dep-026-3.6.7.tgz", "integrity": "sha512-demob5bf949719c130b705d5" }, "node_modules/demo-dep-027": { - "version": "1.7.7", - "resolved": "https://registry.npmjs.org/demo-dep-027/-/demo-dep-027-1.7.7.tgz", + "version": "1.7.8", + "resolved": "https://registry.npmjs.org/demo-dep-027/-/demo-dep-027-1.7.8.tgz", "integrity": "sha512-demoaac333a7f4f5499d9910" }, "node_modules/demo-dep-028": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/demo-dep-028/-/demo-dep-028-2.8.1.tgz", + "version": "2.8.2", + "resolved": "https://registry.npmjs.org/demo-dep-028/-/demo-dep-028-2.8.2.tgz", "integrity": "sha512-demoa49f703f08f817f64c53", "dependencies": { - "demo-dep-199": "^2.0.0" + "demo-dep-199": "^2.0.1" } }, "node_modules/demo-dep-029": { - "version": "3.9.2", - "resolved": "https://registry.npmjs.org/demo-dep-029/-/demo-dep-029-3.9.2.tgz", + "version": "3.9.3", + "resolved": "https://registry.npmjs.org/demo-dep-029/-/demo-dep-029-3.9.3.tgz", "integrity": "sha512-demo20a3ef9e6645348a40ec" }, "node_modules/demo-dep-030": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/demo-dep-030/-/demo-dep-030-1.0.3.tgz", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/demo-dep-030/-/demo-dep-030-1.0.4.tgz", "integrity": "sha512-demo672449abd6e6966d4b23" }, "node_modules/demo-dep-031": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/demo-dep-031/-/demo-dep-031-2.1.4.tgz", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/demo-dep-031/-/demo-dep-031-2.1.5.tgz", "integrity": "sha512-demoffd417a1e200aa26365c" }, "node_modules/demo-dep-032": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/demo-dep-032/-/demo-dep-032-3.2.5.tgz", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/demo-dep-032/-/demo-dep-032-3.2.6.tgz", "integrity": "sha512-demoaeefb1bc4bfceda18821", "dependencies": { - "demo-dep-227": "^3.0.0" + "demo-dep-227": "^3.0.1" } }, "node_modules/demo-dep-033": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/demo-dep-033/-/demo-dep-033-1.3.6.tgz", + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/demo-dep-033/-/demo-dep-033-1.3.7.tgz", "integrity": "sha512-demo31a6415360c3d23b0505" }, "node_modules/demo-dep-034": { - "version": "2.4.7", - "resolved": "https://registry.npmjs.org/demo-dep-034/-/demo-dep-034-2.4.7.tgz", + "version": "2.4.8", + "resolved": "https://registry.npmjs.org/demo-dep-034/-/demo-dep-034-2.4.8.tgz", "integrity": "sha512-demo7ccb935aead579865c02" }, "node_modules/demo-dep-035": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/demo-dep-035/-/demo-dep-035-3.5.1.tgz", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/demo-dep-035/-/demo-dep-035-3.5.2.tgz", "integrity": "sha512-demoe750769a80725f742605" }, "node_modules/demo-dep-036": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/demo-dep-036/-/demo-dep-036-1.6.1.tgz", + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/demo-dep-036/-/demo-dep-036-1.6.2.tgz", "integrity": "sha512-demo7002ebc10264837e0cac", "dependencies": { - "demo-dep-255": "^1.0.0" + "demo-dep-255": "^1.0.1" } }, "node_modules/demo-dep-037": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/demo-dep-037/-/demo-dep-037-2.7.2.tgz", + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/demo-dep-037/-/demo-dep-037-2.7.3.tgz", "integrity": "sha512-demoe2e7f308cacf6190b371" }, "node_modules/demo-dep-038": { - "version": "3.8.3", - "resolved": "https://registry.npmjs.org/demo-dep-038/-/demo-dep-038-3.8.3.tgz", + "version": "3.8.4", + "resolved": "https://registry.npmjs.org/demo-dep-038/-/demo-dep-038-3.8.4.tgz", "integrity": "sha512-demo7ce5ed71e10983d931ec" }, "node_modules/demo-dep-039": { - "version": "1.9.5", + "version": "1.9.6", "resolved": "https://registry.npmjs.org/demo-dep-039/-/demo-dep-039-1.9.5.tgz", "integrity": "sha512-demo4a1796f4e1bdb909d79a" },