Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
179501f
feat(phase-3): wire classification harness to live on-device model
johnoooh May 7, 2026
26daf7f
fix(phase-3): serialize classify calls — WebLLM engine is not paralle…
johnoooh May 7, 2026
f15a555
feat(phase-3): expand fixture from 6 to 20 trials
johnoooh May 7, 2026
34f8665
feat(phase-3): add 4 realistic-length trials (~3kB eligibility each)
johnoooh May 7, 2026
fa40555
feat(phase-3): "copy results as markdown" button
johnoooh May 7, 2026
379ff3b
tweak(phase-3): default prompt biases toward POSSIBLE over LIKELY
johnoooh May 7, 2026
c66fc36
tweak(phase-3): rewrite prompt with ordered rules + no-assume guard
johnoooh May 7, 2026
8244252
tweak(phase-3): few-shot prompt to fix literal-VERDICT bug + collapse…
johnoooh May 7, 2026
d41cd78
tweak(phase-3): collapse to binary LIKELY/UNLIKELY classification
johnoooh May 7, 2026
15d05b4
feat(phase-3): register Llama 3.2 3B Instruct as a model option
johnoooh May 7, 2026
c0051a3
fix(phase-3): register Qwen2.5-1.5B + diversify few-shot examples
johnoooh May 7, 2026
b0f088f
feat(phase-3): multilingual preset switcher + custom-model stub
johnoooh May 7, 2026
2ce00be
feat(phase-3): translate-then-classify pipeline as harness toggle
johnoooh May 7, 2026
6a9948f
fix(phase-3): include translate-first state in markdown report
johnoooh May 7, 2026
c05ac74
fix(phase-3): wire translate-first state through markdown report (fol…
johnoooh May 7, 2026
6f04fb4
feat(phase-3): production-realistic agreement toggle
johnoooh May 7, 2026
69f6fae
feat(phase-3): wire stage-1 classifyAll into ResultsList + fit dot in…
johnoooh May 7, 2026
44b9e7b
fix(simplifier): replace bare trailing labels with directive instruct…
johnoooh May 7, 2026
a5aca29
feat(phase-3): register Gemma 2 2B q4f16_1 as a faster alternative
johnoooh May 7, 2026
2875992
revert(phase-3): remove gemma_fast — q4f16_1 broke simplifier output
johnoooh May 7, 2026
3845332
revert(simplifier): restore PLAIN-LANGUAGE OUTPUT: label
johnoooh May 7, 2026
1f09331
fix(phase-3): defer simplification until classification completes + r…
johnoooh May 7, 2026
cd30a67
feat(phase-3): pipeline progress caption in detail pane
johnoooh May 7, 2026
9597334
feat(phase-3): drop fit narrative section + add oncologist disclaimer
johnoooh May 7, 2026
45d8839
feat(phase-3): two-tier disclaimer + carry redesign hot-fixes
johnoooh May 7, 2026
73b809b
chore(phase-3): remove disabled sort chips from toolbar
johnoooh May 7, 2026
1b3e759
chore: post-merge follow-ups (matchMedia, regression test, doc move)
johnoooh May 7, 2026
d473033
fix(phase-3): re-run classification when patient description changes
johnoooh May 7, 2026
71926e6
fix(phase-3): address PR #2 review must-fixes
johnoooh May 7, 2026
e3cefa6
chore(phase-3): post-review cleanup + disable classify-in-results
johnoooh May 7, 2026
f99743b
chore(phase-3): clear lint diagnostics introduced by this PR
johnoooh May 7, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions docs/design-references-shared/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# shared/iris-shared.jsx — design reference, not source

Reference implementations from the original Claude.ai design exploration.
Components in this file (`IrisHeader`, `IrisSearchBar`, `LocalAIBadge`,
`FitMeter`, `StatusPill`, `ActionRow`, `StreamingText`, …) were ported into
the live React app under `src/components/` and `src/utils/` — the versions
here are kept verbatim so a future reader can compare implementations
against the original prototype.

**Do not import from this file in `src/`.** It runs against a Babel-standalone
environment in `IRIS Triage.html` and uses inline-style patterns the live
app intentionally moved away from (the live app uses Tailwind utility
classes on top of CSS custom properties from `styles/tokens.css`).

If you're trying to "fix" or "consolidate" this file: stop. Edit the live
component under `src/components/` instead. The existence of this file is
documentation, not duplication.
File renamed without changes.
14 changes: 13 additions & 1 deletion src/App.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -18,12 +18,15 @@ const NLPTestPanel = import.meta.env.DEV
const ProdScenarioTestPanel = import.meta.env.DEV
? lazy(() => import('./components/ProdScenarioTestPanel'))
: null
const ClassificationHarness = import.meta.env.DEV
? lazy(() => import('./components/ClassificationHarness'))
: null

function getTestRoute() {
if (typeof window === 'undefined') return null
if (!import.meta.env.DEV) return null
const t = new URLSearchParams(window.location.search).get('test')
return t === 'nlp' || t === 'scenarios' ? t : null
return t === 'nlp' || t === 'scenarios' || t === 'classify' ? t : null
}

function IrisApp() {
Expand All @@ -45,6 +48,15 @@ function IrisApp() {
</div>
)
}
if (testRoute === 'classify' && ClassificationHarness) {
return (
<div className="min-h-screen bg-parchment-50">
<Suspense fallback={<div className="p-6 text-sm">Loading classification harness…</div>}>
<ClassificationHarness />
</Suspense>
</div>
)
}
if (testRoute === 'scenarios' && ProdScenarioTestPanel) {
// ProdScenarioTestPanel calls fetch directly, so it doesn't need a query
// client. IrisApp is already inside the App() QueryClientProvider, so no
Expand Down
332 changes: 332 additions & 0 deletions src/components/ClassificationHarness.fixtures.js

Large diffs are not rendered by default.

Loading
Loading