Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
89 commits
Select commit Hold shift + click to select a range
372cb13
Five ledger process and tooling fixes: dirty-tree gate, merge-loss de…
BigSimmo Aug 14, 2026
0011a05
harden(rag): validate retrieval RPC rows against a Zod shape contract…
BigSimmo Aug 14, 2026
a5af47d
fix(playwright): isolate the generated child tsconfig's include/exclude
claude Aug 14, 2026
962a6e6
docs(ledger): record review for claude/playwright-tsconfig-isolation
claude Aug 14, 2026
3a32a9b
Merge branch 'main' into claude/playwright-tsconfig-isolation
BigSimmo Aug 14, 2026
af68b32
chore(issues): reconcile 35 queued ledger requests
claude Aug 14, 2026
36b9698
chore(ledger): record the second reconciliation review
claude Aug 14, 2026
088a3ab
Merge pull request #1954 from BigSimmo/claude/ledger-reconcile-batch-2
BigSimmo Aug 14, 2026
93365d6
chore(issues): reconcile 35 queued ledger requests
claude Aug 14, 2026
e4372b5
docs(issues): record why three closures were rejected, and that #231'…
claude Aug 14, 2026
d9f463f
docs(ledger): record the review for PR #1956
claude Aug 14, 2026
aae7081
chore(ledger): record the rejected-closure correction review
claude Aug 14, 2026
b58a235
Merge pull request #1957 from BigSimmo/claude/correct-rejected-closures
BigSimmo Aug 14, 2026
b9485d8
docs(audit): record incident-window forensics, index restore, and pro…
claude Aug 14, 2026
c64f3ec
docs(issues): reconcile the pending inbox batch and correct #310
claude Aug 14, 2026
997d0b2
docs(issues): record the uninstalled-worktree Prettier version trap
claude Aug 14, 2026
a6d429b
docs(skills): record three handoff traps hit during this reconciliation
claude Aug 14, 2026
7905814
docs(ledger): record forensics-PR review (PR #1960)
claude Aug 14, 2026
e092f1b
Merge origin/main into claude/live-drift-forensics-lnhvja
claude Aug 14, 2026
26072d7
docs(issues): resolve the duplicate pending #231 mutation with cancel…
claude Aug 14, 2026
f1f95a2
docs(audit): address Codex review — correct drop window, add indexdef…
claude Aug 14, 2026
7679dfa
Merge pull request #1960 from BigSimmo/claude/live-drift-forensics-ln…
BigSimmo Aug 14, 2026
cabdd29
chore(issues): reconcile 9 queued ledger requests (2 cancellation dec…
claude Aug 14, 2026
d78d3d7
docs(ledger): record reconcile-PR review (PR #1967)
claude Aug 14, 2026
73d7321
Merge pull request #1967 from BigSimmo/claude/issues-reconcile-lnhvja
BigSimmo Aug 14, 2026
d68a9fc
Improve Guide Centre mobile UX: verification preview, scrolling, and …
BigSimmo Aug 14, 2026
b39e52e
Merge branch 'main' into claude/playwright-tsconfig-isolation
BigSimmo Aug 14, 2026
71fa97d
Visual polish: PWA icon decode hint + desktop /documents/search CLS a…
BigSimmo Aug 14, 2026
576294b
Merge branch main into claude/playwright-tsconfig-isolation
BigSimmo Aug 14, 2026
0d5448c
docs(review): record PR-1953 base sync
BigSimmo Aug 14, 2026
adc5182
test(coverage): re-ratchet domain coverage floors past their 5pp drif…
BigSimmo Aug 14, 2026
40be0b6
docs(issues): reconcile current main and review feedback
BigSimmo Aug 14, 2026
b3a4324
docs(ledger): record PR #1956 review
BigSimmo Aug 14, 2026
5e5938d
Merge pull request #1956 from BigSimmo/claude/ledger-process-tooling-…
BigSimmo Aug 14, 2026
98b7458
Merge branch main into claude/playwright-tsconfig-isolation
BigSimmo Aug 14, 2026
e6408cd
docs(review): record PR-1953 current-base review
BigSimmo Aug 14, 2026
18f4f1f
Merge pull request #1953 from BigSimmo/claude/playwright-tsconfig-iso…
BigSimmo Aug 14, 2026
eada299
Refine the responsive account setup experience (#1955)
BigSimmo Aug 14, 2026
0c0245b
chore(issues): reconcile the four rejected-closure corrections (#1959)
BigSimmo Aug 14, 2026
9628b24
test(live-drift): prove the drift routing, and close out Phase 0 (#1951)
BigSimmo Aug 14, 2026
ed6ad9a
Merge branch 'main' into claude/ledger-reconcile-310-fix
BigSimmo Aug 14, 2026
cdd6519
docs(ledger): record PR #1961 base sync
BigSimmo Aug 14, 2026
6acf18d
Merge pull request #1961 from BigSimmo/claude/ledger-reconcile-310-fix
BigSimmo Aug 14, 2026
88e3117
Make Tools an all-results directory (#1958)
BigSimmo Aug 14, 2026
885c613
test(style-contract): deterministic Gate 2 tap-carrier enumeration (#…
BigSimmo Aug 14, 2026
3ec6116
fix(scripts): verify actual Chromium binary presence in check:playwri…
BigSimmo Aug 14, 2026
ead4031
docs(issues): queue ledger updates for this session's completed PRs (…
BigSimmo Aug 15, 2026
bf486de
chore(issues): reconcile 9 queued ledger requests (#1968)
BigSimmo Aug 15, 2026
a91420b
docs(audit): fill Phase 1.2 and extend 1.3 with whole-schema drift ev…
BigSimmo Aug 15, 2026
37bbce8
Clarify medication dose columns and prevent row overlap (#1969)
BigSimmo Aug 15, 2026
e60b49a
Fix ECG SVG repaint on Mobile WebKit (remove paint containment; add r…
BigSimmo Aug 15, 2026
1740239
ci(lexicon): gate the generated lexicon report, and correct the remed…
BigSimmo Aug 15, 2026
3824095
Polish medication information navigation (#1972)
BigSimmo Aug 15, 2026
d301d8f
docs(issues): capture the unreconciled drift count as its own P1 row …
BigSimmo Aug 15, 2026
6f7b7de
Add Calculators as a first-class mode (#1973)
BigSimmo Aug 15, 2026
d3633da
Clarify clinical cues in Differentials search results (#1971)
BigSimmo Aug 15, 2026
b646c03
documents: audit & repair cover thumbnails; add `--all` backfill mode…
BigSimmo Aug 15, 2026
32afb08
Polish the responsive PWA install lifecycle (#1976)
BigSimmo Aug 15, 2026
c020eaa
harden(rag): validate signal rows from the candidate-source RPCs (#1981)
BigSimmo Aug 15, 2026
8f5ffeb
docs(issues): close #293 and #312 — confirmed merged on main (#1977)
BigSimmo Aug 15, 2026
7e91545
fix(ledger,guard): survive parallel reconciles and rewritten history …
BigSimmo Aug 15, 2026
3dec7b3
feat(favourites): search-led workspace, no ModeHome (#164) (#1983)
BigSimmo Aug 15, 2026
261ef46
feat(services): progressive referral rail and compact result rows (#1…
BigSimmo Aug 15, 2026
e8c035b
feat(design-system): close gate 2's h-10 case with a ratcheted static…
BigSimmo Aug 15, 2026
2e3ac49
test(contracts): guard source-slice windows against silently widening…
BigSimmo Aug 15, 2026
4c4cf42
Fix mobile forms information overflow (#1986)
BigSimmo Aug 15, 2026
bacea75
docs(issues): reconcile 17 queued ledger requests (#1987)
BigSimmo Aug 15, 2026
a5fe2e0
chore(design-system): tighten seven ratchets to their measured values…
BigSimmo Aug 15, 2026
8069188
Switch answer-activity ECG animation to opacity pulse for WebKit reli…
BigSimmo Aug 15, 2026
45098c5
docs(medications): clinician reading worklist for the lexicon review …
BigSimmo Aug 15, 2026
512b8c2
fix(ui): keep mobile sheet headers below safe areas (#1990)
BigSimmo Aug 15, 2026
f80aff0
Make answer loading pulse reliable on iPhone and PWA (#1995)
BigSimmo Aug 15, 2026
cd9f79a
feat(services): refine filters and referral progress (#1996)
BigSimmo Aug 15, 2026
570740c
fix(services): remove service quick-search suggestions (#1997)
BigSimmo Aug 16, 2026
fd3a100
refactor(sources): migrate source-window contract tests to shared sou…
BigSimmo Aug 16, 2026
087affb
test(ingest): add registry service facets contract test (#2004)
BigSimmo Aug 16, 2026
27f6b60
docs: add guarded edge-ingestion overhaul plan (#1994)
BigSimmo Aug 16, 2026
a96dcbb
fix(api): avoid universal NDJSON stream errors and unify stream error…
BigSimmo Aug 16, 2026
4c52fe1
chore(ledger): add outstanding issue closeout request rows (#2000)
BigSimmo Aug 16, 2026
3f33068
fix(api): strengthen route list response parsing boundaries for non-R…
BigSimmo Aug 16, 2026
fb8c71c
feat(ledger): add durable ULID + Crockford display IDs to outstanding…
BigSimmo Aug 16, 2026
54585e9
test(ui): add low-confidence AccessibleTable mockup journey evidence …
BigSimmo Aug 16, 2026
4b601e3
feat(clinical): implement default-off answer evidence preview renderi…
BigSimmo Aug 16, 2026
0b95d06
feat(tools): add compact show all tools launcher (#2008)
BigSimmo Aug 16, 2026
8f8d111
Use the global footer search on Tools phones (#1993)
BigSimmo Aug 16, 2026
d027671
fix(audit): repair the merge-loss reconciliation exemption and classi…
BigSimmo Aug 17, 2026
dfdb991
Merge remote-tracking branch 'origin/main' into claude/pr-2009-review…
claude Aug 17, 2026
a433847
chore: apply prettier formatting after merge conflict resolution
claude Aug 17, 2026
bee1756
docs(review): record ledger entry for PR #2018 review-fix of PR #2009
claude Aug 17, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
8 changes: 5 additions & 3 deletions .claude/hooks/issues-surface.sh
Original file line numberDiff line numberDiff line change
Expand Up@@ -32,10 +32,11 @@ source_val="$(printf '%s' "$payload" \
rows="$(awk '
/^## Open items/ { inopen=1; next }
/^## / { if (inopen) inopen=0 }
inopen && /^\| #[0-9]/ {
inopen && /^\| #[0-9A-HJKMNP-TV-Z]/ {
n=split($0, c, "|")
id=c[2]; pri=c[3]; typ=c[4]; sum=c[5]
gsub(/^[ \t]+|[ \t]+$/, "", id)
sub(/[ \t]+<!--[ \t]*issue-ulid:[^>]+-->[ \t]*$/, "", id)
gsub(/^[ \t]+|[ \t]+$/, "", pri)
gsub(/^[ \t]+|[ \t]+$/, "", typ)
gsub(/^[ \t]+|[ \t]+$/, "", sum)
Expand DownExpand Up@@ -63,10 +64,11 @@ queue_rows="$(awk '
NR==FNR {
if ($0 ~ /^## Open items/) { inopen=1; next }
if ($0 ~ /^## /) { inopen=0 }
if (inopen && $0 ~ /^\| #[0-9]/) {
if (inopen && $0 ~ /^\| #[0-9A-HJKMNP-TV-Z]/) {
split($0, oc, "|")
oid=oc[2]; odetail=oc[6]
gsub(/^[ \t]+|[ \t]+$/, "", oid)
sub(/[ \t]+<!--[ \t]*issue-ulid:[^>]+-->[ \t]*$/, "", oid)
gsub(/^[ \t]+|[ \t]+$/, "", odetail)
detail[oid]=odetail
}
Expand DownExpand Up@@ -114,7 +116,7 @@ fi

# Keep the priority summary complementary to the queue instead of repeating
# the same recommended IDs in both sections.
queued_ids=" $(printf '%s\n' "$queue_rows" | grep -oE '#[0-9]+' | tr '\n' ' ' || true)"
queued_ids=" $(printf '%s\n' "$queue_rows" | grep -oE '#([0-9A-HJKMNP-TV-Z]{6,16}|[0-9]{3,})' | tr '\n' ' ' || true)"
unqueued_rows="$(printf '%s\n' "$rows" | awk -F'\t' -v queued="$queued_ids" '
index(queued, " " $2 " ") == 0
' || true)"
Expand Down
8 changes: 8 additions & 0 deletions .claude/skills/handoff/SKILL.md
Original file line numberDiff line numberDiff line change
Expand Up@@ -63,6 +63,14 @@ force-push, or discard work.
`head`, or another command that can mask its status. Confirm the remote tip equals local HEAD
with `git ls-remote` before reporting success. The pre-push guards run
(auto-merge sentinel, format, drift) — heed a block rather than overriding blindly.

**Restarting a branch whose PR already merged:** GitHub deletes the remote branch on merge,
so the local `origin/<branch>` ref is stale and `--force-with-lease` fails with `stale info`
before it ever reaches the remote. That is not a lease violation to override — run
`git remote prune origin` and push normally. There is nothing to force: the branch no longer
exists remotely, so the push creates it fresh. Observed 2026-08-14 restarting this branch
after PR #1944 merged.

6. **Open a PR** with `gh pr create --base main`, body ending with the Claude Code
attribution line. Write the body from `.github/pull_request_template.md` in full normal
prose — exact `## Summary` / `## Verification` / `## Risk and rollout` / (when clinical-risk
Expand Down
6 changes: 6 additions & 0 deletions .claude/skills/issues/SKILL.md
Original file line numberDiff line numberDiff line change
Expand Up@@ -118,6 +118,12 @@ report that the Markdown source is current and the visual artifact is stale. Sti
reconciliation handoff — a stale visual artifact must not invalidate a successful canonical
transaction.

**This step is unavailable off the operator's Windows machine.** The script and the artifact are
both absolute Windows paths, so a Linux, container, or cloud session cannot run it and cannot
verify it — the artifact drifts silently from the moment such a session reconciles. Do not
improvise a substitute renderer or write the HTML by hand; report the register as stale, name the
reconciliation commit that made it so, and leave the refresh to the operator.

## Persist the memory (commit)

When the user explicitly asks for a commit, commit only the newly created request file(s), never
Expand Down
8 changes: 8 additions & 0 deletions .claude/skills/newtask/SKILL.md
Original file line numberDiff line numberDiff line change
Expand Up@@ -33,6 +33,14 @@ than opening a second branch. This is one GitHub read (`mcp__github__list_pull_r
boundary. If GitHub is unreachable, treat it as a warning and continue — an offline session
must still be able to start work. Recorded as `#292`.

**If the PR-handoff stop hook has already armed in this session, that read is denied** — a
session that opened its own PR and then picks up another queued item cannot call
`list_pull_requests` or `gh pr list` at all (see `docs/pr-handoff-stop-cross-agent-gap.md`).
Do not unlock the hook for this; fall back to `git ls-remote --heads origin`, which needs no
provider tool and still answers the question, because a session building the same surface
almost always has a pushed branch named after it. Report which check you used. Observed
2026-08-14 on PR #1956.

## Steps

1. **Sync main.** `git fetch --quiet origin main`.
Expand Down
2 changes: 1 addition & 1 deletion .design-sync/config.json

Large diffs are not rendered by default.

3 changes: 3 additions & 0 deletions .env.example
Original file line numberDiff line numberDiff line change
Expand Up@@ -145,6 +145,9 @@ SENTRY_ENVIRONMENT=production
# on the answer stream. Server emission flag; client rendering ships separately. Keep false
# until the offline contract proof has landed and enablement is deliberately staged.
RAG_INCREMENTAL_EVIDENCE_PREVIEW=false
# #100 Phase 1 client rendering gate. This NEXT_PUBLIC value is inlined at build time;
# keep it off until focused browser, accessibility, and clinical-governance proof is accepted.
#NEXT_PUBLIC_RAG_INCREMENTAL_EVIDENCE_PREVIEW_RENDER=false
# Ambiguity-only structured semantic reranking. Keep false until the retrieval canary is approved.
RAG_SEMANTIC_RERANK_ENABLED=false
# Append OR-relaxed recall behind weak-but-nonzero strict text matches (P8b extension).
Expand Down
8 changes: 8 additions & 0 deletions .github/workflows/ci.yml
Original file line numberDiff line numberDiff line change
Expand Up@@ -188,6 +188,14 @@ jobs:
if: needs.changes.outputs.static_heavy_changed == 'true'
run: npm run check:upload-limit-parity

# The generated lexicon review is a clinical-facing artefact. It was in the
# local verify:pr-local chain but in no CI job, so it rotted on main and
# failed every local preflight while every required check stayed green
# (#333). Same static-heavy condition verify-pr-local.mjs already uses.
- name: Medication lexicon report freshness
if: needs.changes.outputs.static_heavy_changed == 'true'
run: npm run check:medication-lexicon-report

- name: GitHub Actions pin check
if: needs.changes.outputs.workflow_changed == 'true'
run: npm run check:github-actions
Expand Down
3 changes: 3 additions & 0 deletions docs/README.md
Original file line numberDiff line numberDiff line change
Expand Up@@ -93,6 +93,9 @@ npm run docs:check-links
## Plans and workstreams (living)

- [maturity-backlog-workorders.md](maturity-backlog-workorders.md) — actionable work orders tracking the repository-maturity audit backlog
- [no-unchecked-indexed-access-migration-plan.md](no-unchecked-indexed-access-migration-plan.md) — staged multi-PR rollout for the `noUncheckedIndexedAccess` TypeScript flag (ledger `#211`)
- [ledger-id-scheme-proposal.md](ledger-id-scheme-proposal.md) — design for collision-free outstanding-issue ids so concurrent sessions stop contending on `issues:next-id` (ledger `#168`)
- [pr-handoff-stop-cross-agent-gap.md](pr-handoff-stop-cross-agent-gap.md) — why the PR-handoff stop rule is hook-enforced for Claude Code but prose-only for Codex and Cursor, and what parity would require (ledger `#258`)
- [framework-dependency-modernization-checklist.md](framework-dependency-modernization-checklist.md) — ordered Next.js 16, runtime, dependency, Turbopack, and verification migration program
- [search-rag-master-plan.md](search-rag-master-plan.md) / [search-rag-master-context.md](search-rag-master-context.md) — search/RAG roadmap and shared context
- [rag-improvement/README.md](rag-improvement/README.md) — reviewed/updated RAG improvement programme: answer-quality track (intent-aware related information, length) + corrected eval/safety infra track
Expand Down
Loading