feat(pmo): ping-charles SMS script (curl SMTP relay, offline queue, 0600 config)

This commit is contained in:
2026-08-29 06:29:43 -05:00
parent ee46e700a8
commit 9f1389c443
7 changed files with 127 additions and 1 deletions
+27
View File
@@ -8,3 +8,30 @@ harness: loop: status New -> Resolved on #520
harness: loop: noted REPORT on #520
harness: loop: dispatch 519 (updated 2026-08-29T06:23:26-05:00): "Alpha: draft briefing v0 format as note on 495"
harness: task 519 (redmine): "Alpha: draft briefing v0 format as note on 495" class=study -> mopac-study -> glm-4.7-flash
harness: REPORT reports/REPORT-demo-519-20260829-112832.md
harness: loop: status transition failed for 519: redmine HTTP 502: <!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height" />
<!-- generated from dashboard/public/img/app_down.svg -->
<link rel="icon" href="da...
harness: loop: note writeback failed for 519: redmine HTTP 502: <!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height" />
<!-- generated from dashboard/public/img/app_down.svg -->
<link rel="icon" href="da...
harness: loop: refresh failed for 519: redmine HTTP 502: <!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height" />
<!-- generated from dashboard/public/img/app_down.svg -->
<link rel="icon" href="da... (a re-dispatch may follow)
harness: loop: dispatch 518 (updated 2026-08-29T06:23:26-05:00): "Alpha: triage open MOPAC tickets — next-action note on each New ticket"
harness: task 518 (redmine): "Alpha: triage open MOPAC tickets — next-action note on each New ticket" class=study -> mopac-study -> glm-4.7-flash
View File
+1 -1
View File
@@ -1 +1 @@
I have full context: sibling pattern (mopac-bitwarden-go), harness fake-server test style, PMO python glue to replace, creds at `~/.creds/redmine.env`, Redmine at projects.knownelement.com. Setting up the work plan.Toolchain verified. Creating the repo via Gitea API (idempotent check first):Repo created. Cloning and seeding with LICENSE:Harness done. Now TDD config package — tests first (red):Red confirmed. Implementation:Green. Two atomic commits:
I have full context: sibling pattern (mopac-bitwarden-go), harness fake-server test style, PMO python glue to replace, creds at `~/.creds/redmine.env`, Redmine at projects.knownelement.com. Setting up the work plan.Toolchain verified. Creating the repo via Gitea API (idempotent check first):Repo created. Cloning and seeding with LICENSE:Harness done. Now TDD config package — tests first (red):Red confirmed. Implementation:Green. Two atomic commits:Now the core piece. First the stateful fake Redmine server (test infrastructure, harness-style):Now the library test suite (red first):