Commit Graph
28 Commits
Author SHA1 Message Date
timmy 1aadca91c6 fix: escalate ordinary fever and pain phrasing without allowlist narrowing
Quality gates / quality (pull_request) Successful in 1m59s
Hostile verification of the fever continuation-word allowlist found ordinary
symptom false negatives at the authoritative zero-Hermes-call boundary:
'I have a fever right now', 'my fever is 103', 'fever started this morning',
plus 'severe pain in/around the abdomen' against the hard-coded 'my' in the
pain pattern.

- fever: drop the continuation-word allowlist entirely; the bare clinical
  word escalates with any continuation. Nonclinical controls become
  structured exclusions (malaria/yellow/dengue/cabin compounds, fever tree,
  figurative 'feverish about'/'feverish with excitement'), so future natural
  symptom wording can never be narrowed again.
- severePain: accept any determiner or none plus location qualifiers
  (lower/upper/left/right) between preposition and organ.
- blood: differential audit against origin/main caught the same regression
  class in the PR's rewrite: 'poop/stool with blood' (escalated on main)
  was lost while 'my stool has been normal' / 'the poop contains seeds'
  became false positives. Restored explicit blood shapes with bounded verbs.

RED regressions first: matrix grows 56 -> 82 pinned positives (fever +20,
severePain +6 with case/punctuation/contraction variants), a pinned
preserved-behavior list for main's blood shapes, and two boundary suites
proving every review phrase and variant escalates at the detector AND
intercepts chat at the service layer with exactly zero Hermes calls.

Gates: npm test 90/90, staging-deploy 20/20 OK, test:ui/test:photo/
test:sleek pass, check:syntax clean, check:diff clean, npm audit 0
vulnerabilities, diff secret scan clean.
2026-08-22 21:46:11 +00:00
timmy e05d7d1e1a test: expand deterministic symptom escalation regression suite
Quality gates / quality (pull_request) Successful in 1m28s
Issue #21 (epic #5). Prove model behavior can never suppress or soften
urgent symptom handling.

- Pin the six authoritative red flags, their canonical order, and the
  exact urgent copy as read-only exports; hostile provider output
  cannot reassemble it.
- Grow the positive text matrix from 24 to 56 pinned clinical phrases
  across all flags (bloody stool, dark-red/black descriptions, severe
  abdominal pain variants, vomiting tenses/slang, fever phrasings,
  inability to pass gas) and pin 27 idiomatic negatives that must not
  escalate (threw up my hands, yellow fever history class, black tea).
- Authoritative boundary suite: every red-flag phrase and confirmed
  ledger symptom/note intercepts chat with zero Hermes calls;
  malicious/missing provider replies cannot weaken the deterministic
  response; truthy junk symptoms can neither fabricate nor suppress
  escalation.
- Wiring suite: the single chat gate screens urgency before any agent
  turn in both service and browser code; detection stays centralized
  in the frozen domain pattern table.

RED evidence: URGENT_MESSAGE unexported, 9 matrix misses (bleeding from
my rectum, bloody stool/poop, severe pain in my abdomen), 8 false
positives (I threw up my hands, feverish about the election).

GREEN: 87/87 npm test, syntax/diff gates clean, 0 vulnerabilities,
browser suites pass with zero /api/agent/chat calls on urgent input.

Closes #21
2026-08-22 20:57:04 +00:00
timmy 47294a98aa Merge pull request 'Make staging runtime configuration compatible with strict CSP' (#59) from timmy/58-strict-csp-runtime-config into main
Quality gates / quality (push) Successful in 1m56s
daily-2026-08-21.1 daily-2026-08-22 daily-2026-08-23 daily-2026-08-24 daily-2026-08-25
2026-08-21 15:04:43 +00:00
timmy 877b8a01f3 fix: make staging compatible with strict CSP
Quality gates / quality (pull_request) Successful in 1m37s
2026-08-21 15:01:05 +00:00
timmy 067afaed4c Merge pull request 'Hardened atomic private-staging deployment tooling' (#56) from timmy/55-staging-deployment-tooling into main
Quality gates / quality (push) Successful in 1m41s
2026-08-21 14:54:11 +00:00
timmy f8f01c4b2e feat: add hardened atomic staging deployment
Quality gates / quality (pull_request) Successful in 1m28s
2026-08-21 14:49:28 +00:00
timmy fc763fb758 Merge pull request 'Private subpage staging foundation' (#54) from timmy/53-private-subpage-staging into main
Quality gates / quality (push) Successful in 2m7s
2026-08-21 14:16:15 +00:00
timmy 7e11154302 feat: add private subpage staging slice
Quality gates / quality (pull_request) Successful in 1m43s
2026-08-21 14:12:17 +00:00
timmy 11d1b364ab fix: gate bootstrap syntax in release build
Quality gates / quality (push) Successful in 1m45s
daily-2026-08-21
2026-08-21 12:56:48 +00:00
rockachopa 8e3c2f8889 Merge pull request #52 from timmy/10-reproducible-smolvlm-bootstrap
Quality gates / quality (push) Has been cancelled
Merge pull request #52: Package pinned self-hosted SmolVLM2 bootstrap
2026-08-21 12:55:18 +00:00
timmy 982fab273c feat: package pinned self-host vision bootstrap
Quality gates / quality (pull_request) Successful in 1m30s
2026-08-21 08:15:32 +00:00
timmy ca31e6d38b Merge pull request 'Hotfix: recognize past-tense vomiting in deterministic chat safety' (#51) from timmy/48-vomiting-phrase-hotfix into main
Quality gates / quality (push) Successful in 1m26s
daily-2026-08-20.3
2026-08-20 17:17:33 +00:00
timmy 0f3104ebde fix: recognize past-tense vomiting in chat safety
Quality gates / quality (pull_request) Successful in 1m21s
2026-08-20 17:14:20 +00:00
timmy cc1fc6ee36 Merge pull request 'Hotfix: enforce deterministic urgent-symptom override at the server boundary' (#50) from timmy/48-server-safety-override into main
Quality gates / quality (push) Successful in 1m24s
daily-2026-08-20.2
2026-08-20 16:48:02 +00:00
timmy 05b4bafd96 fix: enforce urgent chat override server-side
Quality gates / quality (pull_request) Successful in 1m25s
2026-08-20 16:41:35 +00:00
timmy 09f9528434 Merge pull request 'Sleek Timmy mobile shell and secure Hermes Agent chat' (#49) from timmy/47-sleek-hermes-agent into main
Quality gates / quality (push) Successful in 1m32s
daily-2026-08-20.1
2026-08-20 16:25:47 +00:00
timmy a50afa6722 feat: simplify Timmy and add secure Hermes chat
Quality gates / quality (pull_request) Successful in 1m24s
2026-08-20 16:21:00 +00:00
rockachopa 930f156590 Merge pull request 'Document product boundary and release authority' (#46) from timmy/9-product-boundary-decisions into main
Quality gates / quality (push) Successful in 1m26s
daily-2026-08-20
2026-08-20 13:15:22 +00:00
timmy 3c51308a9e docs: fix product boundary and release authority
Quality gates / quality (pull_request) Successful in 1m14s
2026-08-20 08:32:16 +00:00
timmy 8ab1e85bd1 Merge pull request #45: enforce reproducible quality gates
Quality gates / quality (push) Successful in 1m18s
daily-2026-08-19.2
2026-08-19 12:06:38 +00:00
timmy 47eec47a31 ci: install pinned image test dependency
Quality gates / quality (pull_request) Successful in 1m12s
2026-08-19 08:14:43 +00:00
timmy 29ba8594b8 ci: enforce reproducible quality gates
Quality gates / quality (pull_request) Failing after 1m56s
2026-08-19 08:09:38 +00:00
timmy 535834c060 feat: require verified feature demo video in every release daily-2026-08-19.1 2026-08-19 03:36:04 +00:00
timmy ce84ea577c test: isolate photo acceptance from service workers daily-2026-08-19 2026-08-19 03:02:33 +00:00
timmy 3899eac34f fix: start isolated server for release acceptance gates 2026-08-19 03:01:28 +00:00
timmy 074f52fddc build: add gated reproducible review releases 2026-08-19 03:00:54 +00:00
timmy 0ecf1d1205 docs: add Gitea roadmap and epic map 2026-08-19 02:00:40 +00:00
timmy 58906f11d0 feat: ship photo-first Timmy prototype and sovereign vision spike 2026-08-19 01:54:29 +00:00