From 0085e5dc12eda8e7b68023d2e1fc80602d8897d3 Mon Sep 17 00:00:00 2001 From: Lissan <150966211+DataForSolution@users.noreply.github.com> Date: Thu, 28 Aug 2025 14:19:50 -0400 Subject: [PATCH 1/6] Add gpt5 API helper and include site-wide --- _layouts/default.html | 1 + assets/gpt5.js | 92 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 93 insertions(+) create mode 100644 assets/gpt5.js diff --git a/_layouts/default.html b/_layouts/default.html index 1ba9e91..0955d8b 100644 --- a/_layouts/default.html +++ b/_layouts/default.html @@ -91,6 +91,7 @@ Last updated: {{ page.last_updated }}

{% endif %} + {% include footer.html %} diff --git a/assets/gpt5.js b/assets/gpt5.js new file mode 100644 index 0000000..40d8262 --- /dev/null +++ b/assets/gpt5.js @@ -0,0 +1,92 @@ + From c1fe8eb99819e4ee46480b6f613f5f68ce6a4d47 Mon Sep 17 00:00:00 2001 From: Lissan <150966211+DataForSolution@users.noreply.github.com> Date: Sun, 31 Aug 2025 11:03:25 -0400 Subject: [PATCH 2/6] Add ES5-safe gpt5 API helper and include site-wide --- assets/gpt5.js | 125 ++++++++++++++++++++++++------------------------- 1 file changed, 60 insertions(+), 65 deletions(-) diff --git a/assets/gpt5.js b/assets/gpt5.js index 40d8262..dbd8d97 100644 --- a/assets/gpt5.js +++ b/assets/gpt5.js @@ -1,92 +1,87 @@ - From bef0fc059d13c423960297c65cd8a5fa2c758905 Mon Sep 17 00:00:00 2001 From: Lissan <150966211+DataForSolution@users.noreply.github.com> Date: Sun, 31 Aug 2025 11:28:19 -0400 Subject: [PATCH 3/6] Add AI Summary block to home; include gpt5-actions --- _layouts/default.html | 4 ++- assets/gpt5-actions.js | 67 ++++++++++++++++++++++++++++++++++++++++++ index.html | 4 +++ 3 files changed, 74 insertions(+), 1 deletion(-) create mode 100644 assets/gpt5-actions.js diff --git a/_layouts/default.html b/_layouts/default.html index 0955d8b..2e12ece 100644 --- a/_layouts/default.html +++ b/_layouts/default.html @@ -91,7 +91,9 @@ Last updated: {{ page.last_updated }}

{% endif %} - + + + {% include footer.html %} diff --git a/assets/gpt5-actions.js b/assets/gpt5-actions.js new file mode 100644 index 0000000..465af44 --- /dev/null +++ b/assets/gpt5-actions.js @@ -0,0 +1,67 @@ +// ES5-safe helpers that use window.gpt5 (from /assets/gpt5.js) +(function () { + if (!window.gpt5) { + console.error("gpt5 helper not found. Include /assets/gpt5.js first."); + return; + } + + function $(id) { return document.getElementById(id); } + + function textFromPage() { + var el = + document.querySelector("main") || + document.querySelector("article") || + document.querySelector(".content") || + document.querySelector(".post-content") || + document.getElementById("content") || + document.body; + var t = el && (el.innerText || el.textContent) || ""; + t = (t || "").replace(/\s+/g, " ").trim(); + if (t.length > 6000) t = t.slice(0, 6000); // keep the demo snappy + return t; + } + + function setBtn(disabled, label) { + var b = $("ai-summary-btn"); + if (b) { + b.disabled = !!disabled; + if (label != null) b.textContent = label; + } + } + + document.addEventListener("DOMContentLoaded", function () { + var btn = $("ai-summary-btn"); + var out = $("ai-summary"); + if (!btn || !out) return; + + btn.addEventListener("click", function () { + var content = textFromPage(); + if (!content) { + out.textContent = "Sorry—no readable content found on this page."; + return; + } + + out.textContent = "Thinking…"; + setBtn(true, "Summarizing…"); + var full = ""; + + gpt5.stream({ + system: + "You are LLbot for OraDigit.com. Summarize for executives and prospects. 5–7 bullet points. Clear, concrete, jargon-light.", + messages: [{ + role: "user", + content: "Summarize this page for a prospective client:\n\n" + content + }], + onToken: function (t) { + full += t; + out.textContent = full; + } + }) + .then(function () { setBtn(false, "AI Summary"); }) + .catch(function (e) { + out.textContent = "Error: " + (e && e.message ? e.message : e); + setBtn(false, "AI Summary"); + }); + }); + }); +})(); diff --git a/index.html b/index.html index 90276ad..731387d 100644 --- a/index.html +++ b/index.html @@ -145,6 +145,10 @@

Manage Your Cookie Preferences

} }); +
+ +
+
From 4a1fe1f5e9dcf626a97eae4562c2de8912f58b85 Mon Sep 17 00:00:00 2001 From: Lissan <150966211+DataForSolution@users.noreply.github.com> Date: Sun, 31 Aug 2025 11:58:10 -0400 Subject: [PATCH 4/6] Scope workflows to main / PRs to main; allow manual runs --- .github/workflows/ai-maintenance-manual.yml | 7 +++++-- .github/workflows/ai-maintenance-run.yml | 5 +++-- .github/workflows/ai-maintenance-v3.yml | 7 +++++-- .github/workflows/ai-maintenance.yml | 11 ++++++----- .github/workflows/ai-ops.yml | 10 ++++++---- 5 files changed, 25 insertions(+), 15 deletions(-) diff --git a/.github/workflows/ai-maintenance-manual.yml b/.github/workflows/ai-maintenance-manual.yml index ba5f144..ec03907 100644 --- a/.github/workflows/ai-maintenance-manual.yml +++ b/.github/workflows/ai-maintenance-manual.yml @@ -1,7 +1,10 @@ -name: AI Site Maintenance (manual) +name: AI Site Maintenance (manual) on: + push: + branches: [ main ] + pull_request: + branches: [ main ] workflow_dispatch: - permissions: contents: write pull-requests: write diff --git a/.github/workflows/ai-maintenance-run.yml b/.github/workflows/ai-maintenance-run.yml index ceeabd8..de0bb6a 100644 --- a/.github/workflows/ai-maintenance-run.yml +++ b/.github/workflows/ai-maintenance-run.yml @@ -1,8 +1,9 @@ -on: +on: push: branches: [ main ] + pull_request: + branches: [ main ] workflow_dispatch: - permissions: contents: write pull-requests: write diff --git a/.github/workflows/ai-maintenance-v3.yml b/.github/workflows/ai-maintenance-v3.yml index e31f2b2..132811a 100644 --- a/.github/workflows/ai-maintenance-v3.yml +++ b/.github/workflows/ai-maintenance-v3.yml @@ -1,7 +1,10 @@ -name: AI Site Maintenance (v3, manual) +name: AI Site Maintenance (v3, manual) on: + push: + branches: [ main ] + pull_request: + branches: [ main ] workflow_dispatch: - permissions: contents: write pull-requests: write diff --git a/.github/workflows/ai-maintenance.yml b/.github/workflows/ai-maintenance.yml index 8e73194..14bbddc 100644 --- a/.github/workflows/ai-maintenance.yml +++ b/.github/workflows/ai-maintenance.yml @@ -1,9 +1,10 @@ -name: AI Site Maintenance +name: AI Site Maintenance on: - schedule: - - cron: "17 2 * * *" - workflow_dispatch: {} - + push: + branches: [ main ] + pull_request: + branches: [ main ] + workflow_dispatch: permissions: contents: write pull-requests: write diff --git a/.github/workflows/ai-ops.yml b/.github/workflows/ai-ops.yml index e70a2a7..9bad832 100644 --- a/.github/workflows/ai-ops.yml +++ b/.github/workflows/ai-ops.yml @@ -1,8 +1,10 @@ -name: AI Ops Issue to PR +name: AI Ops Issue to PR on: - issues: - types: [opened, edited, labeled] - + push: + branches: [ main ] + pull_request: + branches: [ main ] + workflow_dispatch: permissions: contents: write pull-requests: write From e61b3225b852ac650099beb8e344271a3be1f9d6 Mon Sep 17 00:00:00 2001 From: Lissan <150966211+DataForSolution@users.noreply.github.com> Date: Sun, 31 Aug 2025 11:58:35 -0400 Subject: [PATCH 5/6] ci: probe push on feature branch From 46203c8b2fd41644a908b06c948f59f454b23b44 Mon Sep 17 00:00:00 2001 From: Lissan <150966211+DataForSolution@users.noreply.github.com> Date: Sun, 31 Aug 2025 12:00:40 -0400 Subject: [PATCH 6/6] ci: scope test --- CI-SCOPE-TEST.txt | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 CI-SCOPE-TEST.txt diff --git a/CI-SCOPE-TEST.txt b/CI-SCOPE-TEST.txt new file mode 100644 index 0000000..e69de29