{"schema_version":"1","site":"https://decosa.ai","id":"hcc-evidence-file","num":"62","name":"HCC evidence file and RADV defence","tool_name":"Check HCC codes for MEAT evidence","short":"HCC evidence file","blurb":"For Medicare Advantage risk-adjustment and compliance teams. Send a member's submitted diagnosis codes and the notes for the year. For each code that maps to a CMS-HCC V28 payment HCC it says supported, not supported or insufficient, quotes the sentences that show the condition was monitored, evaluated, assessed or treated (MEAT) or says none do, and checks each record the way a RADV reviewer would: face to face, signed with an acceptable credential, in the year, no audio-only calls, radiology reports or late addenda. Deletions come first. It never suggests codes to add. Out comes the net effect, an evidence file and a signed record. A review aid: certified coders decide.","status":"live","labels":{"industry":["healthcare","finance"],"job":["review","attest"],"input":["text","files"],"deploy":["selfhost"],"status":"live","output":["record","data"],"data":["phi"],"hardware":"gpu-96","licence":"permissive"},"industries":["healthcare","finance"],"runs_in":["selfhost"],"part_of":[],"built_from":["grounding","typed-judgment","signed-record","document-reader"],"models":"Qwen3.8-27B reads the notes (evidence, typed judgment, grounding); the V28 map, hierarchies and record checks are plain code","where":"Self-host for real records (PHI); the hosted demo takes synthetic members only","hardware":"1× RTX PRO 6000 (96 GB) or 1× RTX 5090 (32 GB) for Qwen3.8-27B; the V28 map, the record checks and the signed record run on CPU","final_artifact":"Per submitted code a delete, hold or keep with MEAT quotes, the net effect in codes and paying HCCs, a Markdown evidence file (deletions first) and a signed decosa.record.v1.","self_host_first":true,"verification":{"receipt_coverage":"full","summary":"Receipt per model call; every quote is a sentence of the note with offsets; signed hash-chained record with no note text","manual_qa":{"hosted":{"date":"2026-09-26","result":"pass","p50_ms":23863,"p95_ms":null,"runs":null,"receipts_per_run":15,"cost_per_run_usd":0.003061},"selfhost":{"date":"2026-09-26","result":"pass","method":"fresh clone, compose up, sample against local model servers","notes":"A fresh clone of a decosa-api pre-release build (not yet merged), the api image built from it with DECOSA_HCC_SYNTHETIC_ONLY=0, run against the already-running local Qwen3.8-27B vLLM on the direct route. The rehearsal bundle passed 15 of 15 checks in 4.8 s, the smoke module passed in 2.0 s with 9 attested receipts, a member not marked synthetic streamed a full review, and the tampered record failed to verify. Model-server startup itself not re-verified."},"known_limits":["Synthetic only on the hosted demo, and every number here comes from our own synthetic members; not run on real charts or against coder labels.","This page takes typed notes: dates, signatures and credentials sent as fields and text. Scanned charts are read only through the API (POST /hcc/read-chart with an API key) or self-hosted; the page has no upload for them yet.","V28 for payment year 2026 (2025 dates of service) only; no V24 or blended years.","'Not supported' means not supported by the notes sent; a coder may find another record.","It does not compute risk scores or payment amounts, and it does not run the RADV coversheet, attestation or member-identity checks."],"nightly_covers":null},"nightly":"https://api.decosa.ai/verify/status"},"eval_summary":{"metrics":[{"name":"Verdict accuracy, 3 classes","value":"189 / 200","unit":null,"n":200,"split":"test","note":"50 synthetic members; supported, not supported, insufficient."},{"name":"Supported vs not supported","value":"96 / 100","unit":null,"n":100,"split":"test","note":"Codes planted as supported or not supported."},{"name":"Unsupported or held codes called supported (false keep)","value":"0 / 161","unit":null,"n":161,"split":"test","note":null},{"name":"Supported codes called not supported (false delete)","value":"4 / 39","unit":null,"n":39,"split":"test","note":"3 are 'seropositive rheumatoid arthritis' read as not stating rheumatoid factor."},{"name":"Supported calls whose quotes include a planted evidence sentence","value":"35 / 35","unit":null,"n":35,"split":"test","note":null},{"name":"Quoted sentences that are planted evidence","value":"70 / 72","unit":null,"n":72,"split":"test","note":null},{"name":"Add suggestions in any output string or the evidence file","value":"0 (50 members)","unit":null,"n":50,"split":"test","note":null},{"name":"Verdict accuracy, 3 classes (dev)","value":"46 / 48","unit":null,"n":48,"split":"dev","note":"42 / 48 before the one prompt change made on dev."},{"name":"Verdict accuracy, scanned charts (document reader)","value":"187 / 200","unit":null,"n":200,"split":"test","note":"Same members as text in the same run: 192 / 200. Synthetic scans."},{"name":"Same verdict, scanned vs text","value":"195 / 200","unit":null,"n":200,"split":"test","note":"All 5 differences deleted or held. A later split found one false keep (fixed; 50 new members after: none)."}],"dataset":"Synthetic members from the vertical's own generator (invented people, providers and notes): 15 conditions that map to V28 payment HCCs, each code planted as supported, history, uncertain, less specific, absent, or evidence only in a record RADV does not accept. Dev 12 members (48 codes), test 50 members (200 codes), run once after the dev work was frozen.","held_out":true,"caveats":["Everything is synthetic, from sentence templates written by the same agent that wrote the checker and prompts: evidence the mechanisms work, not accuracy on real charts.","No certified-coder labels: a 200-chart coder-labelled set is the next step.","Scanned charts are read by the document reader first; its scans are clean synthetic pages (typed notes, no handwriting in the body), so real faxes will read worse. Text input is unchanged.","9 of the 11 test errors are one condition's wording ('seropositive' not read as 'with rheumatoid factor'); not fixed, since it showed up on test.","V28, payment year 2026 only."],"date":"2026-09-26","doc_url":"https://decosa.ai/metrics/evals/hcc-evidence-file"},"stack":{"summary":"For Medicare Advantage risk-adjustment and compliance teams, and provider groups in risk contracts. Send a member's submitted diagnosis codes and the notes for the service year. Code maps each ICD-10-CM code to its CMS-HCC V28 payment HCC (CMS's own 2026 files) and checks every note and addendum the way a RADV reviewer would: date in the year, an acceptable source, face to face, signed with an acceptable credential, and addenda only from the treating provider within 90 days. Then, per code, Qwen3.8-27B picks the sentences about the condition and tags them monitor, evaluate, assess or treat (MEAT); a typed judgment decides whether the record supports the code as coded; and the grounding judge checks that the quoted sentences carry it on their own. The verdict is supported (keep), insufficient (hold: the evidence is only in a record RADV would not accept, or the model was unsure) or not supported (delete: do not submit). Deletions come first and count as much as confirmations. It reports the net effect in codes and paying HCCs, writes a Markdown evidence file for the audit folder, and signs a hash-chained record with no note text. It checks only the codes you submitted: there is no mode that looks for codes to add or drafts provider queries, and the build fails if a suggestion to add a code reaches the output. A review aid: certified coders decide.","tagline":"Each submitted risk-adjustment code checked against the notes: keep, hold or delete, with the MEAT quotes, and never a suggestion to add one.","deployment":"self-host-first","regulatory_note":"Checked 26 Sep 2026 against CMS primary sources (links under Tools). CMS said on 21 May 2025 that it will audit all eligible MA contracts for each payment year (about 550, up from about 60) and grow its medical coders from 40 to about 2,000. The PY 2024 RADV Audit Methods and Instructions (28 Aug 2026) define a valid record as a legibly signed record from a face-to-face visit with a provider in the data collection period, accept audio-and-video telehealth as face to face (HPMS memo, 4 May 2022), and list the invalid-record codes this tool uses (INV2 no signature, INV4 no date, INV5 invalid source such as lab only, home health, hospice, superbill or non-face-to-face, INV7 no credential, INV14 outside the period). The Contract-Level RADV Medical Record Reviewer Guidance (10 Jan 2020) excludes diagnostic radiologists and telephone contacts, treats amendments as timely at up to 90 days and only from the treating provider, says a third party may not amend a record or query the provider for additional diagnoses, and lists acceptable specialties (Appendix B, PY 2015; CMS points to its CSSC site for the current list, which we did not check). The ICD-10-CM Official Guidelines FY 2026 (IV.H and IV.J) bar coding uncertain diagnoses in the outpatient setting and conditions that no longer exist. MEAT (monitor, evaluate, assess, treat) is the coding industry's documentation test, not a CMS term. The Kaiser Permanente affiliates' $556M settlement (14 Jan 2026) concerned diagnoses added through addenda; we could not load the DOJ page on 26 Sep 2026, so that detail is from our research notes (unverified here). Clinical notes are PHI under HIPAA: self-host first; the hosted demo takes synthetic members only. The tool never suggests adding codes, and any price will be per member reviewed, never a share of recovered or protected revenue (prices aren't published yet). This is not legal or coding advice and not an audit determination: certified coders decide. Model licence: Apache-2.0 (Qwen3.8-27B). The V28 table is a US government work (public domain).","components":[{"id":"review","role":"V28 map and hierarchies, RADV record checks, verdict rules, the no-add guard, net effect, evidence file and signed record (no model; CPU)","name":"decosa-api HCC review (decosa_api/verticals/hcc), importing the grounding judge (vertical 17) and the typed-judgment engine (vertical 24)","hf_repo":null,"license":"AGPL-3.0-or-later","params":null,"quant":null,"vram_gb":0,"memory_gb_estimate":null,"engine":"Python 3.12; CMS 2026 Midyear/Final ICD-10-CM to V28 mapping (8,019 codes, 115 HCCs, 60 hierarchies, CMS age/sex edits) built from the CMS downloads with their SHA-256","receipt_coverage":"partial","in_hosted_demo":null,"tiers":["lite","standard","best"],"alternative_to":null},{"id":"model","role":"Evidence sentences with MEAT tags, the typed judgment per record, and the grounding judge","name":"Qwen3.8-27B (NVFP4)","hf_repo":"nvidia/Qwen3.8-27B-NVFP4","license":"Apache-2.0","params":"27.8B","quant":"NVFP4 (MLP NVFP4, GDN/attention FP8) + FP8 KV cache; MTP head, 3 draft tokens","vram_gb":20,"memory_gb_estimate":null,"engine":"vLLM 0.29.0, temperature 0 (plus 2 votes at temperature 1 for the typed judgment on the gateway route; log-probabilities on the direct route), thinking off, prefix caching","receipt_coverage":"strong","in_hosted_demo":true,"tiers":["standard","best"],"alternative_to":null},{"id":"layout","role":"Scanned charts: finds and orders the regions of each page (layout only)","name":"Docling 2.130 with the Heron layout model","hf_repo":"docling-project/docling-layout-heron","license":"MIT (Docling) + Apache-2.0 (weights)","params":null,"quant":"FP32","vram_gb":1,"memory_gb_estimate":null,"engine":"docling-ibm-models, CUDA (production, our server's GPU0, about 1 GB measured 27 Sep) or MPS; in the docreader service (services/docreader)","receipt_coverage":"partial","in_hosted_demo":false,"tiers":["best"],"alternative_to":null},{"id":"parser","role":"Scanned charts: reads each region (text, tables as cells); Qwen3.8 re-reads what it is unsure of and reads the header and signature fields","name":"PaddleOCR-VL-1.6 (0.9B)","hf_repo":"PaddlePaddle/PaddleOCR-VL-1.6","license":"Apache-2.0","params":"0.9B","quant":"BF16","vram_gb":4.4,"memory_gb_estimate":null,"engine":"vLLM 0.29.0 on an RTX PRO 6000 (production since 27 Sep; measured 4.4 GB peak at --gpu-memory-utilization 0.04, 1.6 s a page reading); mlx-vlm 0.7.3 on the Mac Studio (the eval runtime, measured; same accuracy on the same pages)","receipt_coverage":"partial","in_hosted_demo":false,"tiers":["best"],"alternative_to":null}],"tiers":[{"id":"lite","label":"Lite · map and record checks only, no GPU","summary":"POST /hcc/codes maps codes to V28 payment HCCs after the hierarchies; POST /hcc/records runs the RADV record checks on every note and addendum. No reading of the notes, so no MEAT verdicts.","components":["review"],"hardware":"Any CPU","quality_evidence":[{"metric":"V28 table against CMS's files","value":"8,019 codes, 115 HCC labels, 60 hierarchies; unit-tested against CMS's mapping for spot codes and the age edit on C50.911","source":"tests/test_hcc.py, 26 Sep 2026"},{"metric":"Record-check accuracy on real charts","value":"not measured yet","source":"not measured yet"}],"latency_note":"no model call; milliseconds on CPU (not separately timed)","in_hosted_demo":true,"receipt_coverage":"none","receipt_note":"No model call, so no receipts; the checks are deterministic code.","hosting":null},{"id":"standard","label":"Standard · one GPU for the model (hosted demo)","summary":"Qwen3.8-27B reads the notes per code (evidence, typed judgment, grounding); the map, record checks, verdict rules and guard are code. This is what the hosted demo runs, on synthetic members only.","components":["review","model"],"hardware":"1x RTX PRO 6000 96 GB (measured) or 1x RTX 5090 32 GB (estimate)","quality_evidence":[{"metric":"Verdict accuracy, 3 classes (50 held-out synthetic members, 200 codes)","value":"189 / 200","source":"docs/evals/hcc-evidence-file.md, test split, 26 Sep 2026"},{"metric":"Supported vs not supported (codes planted as one or the other)","value":"96 / 100","source":"docs/evals/hcc-evidence-file.md, test split"},{"metric":"Codes that should be deleted or held but were kept","value":"0 / 161","source":"docs/evals/hcc-evidence-file.md, test split"},{"metric":"Supported calls whose quotes include a planted evidence sentence","value":"35 / 35","source":"docs/evals/hcc-evidence-file.md, test split"},{"metric":"Add suggestions or unsubmitted codes in the output","value":"0 in 50 members","source":"docs/evals/hcc-evidence-file.md, test split"}],"latency_note":"measured: under a minute per member on the shared gateway; about a minute for the sample; seconds self-hosted on the direct route.","in_hosted_demo":true,"receipt_coverage":"strong","receipt_note":"Every model call is a separate gateway call with a gateway-signed receipt; the signed record lists them all.","hosting":null},{"id":"best","label":"Best · scanned charts too (adds the document reader)","summary":"Everything in Standard, plus scanned PDFs and images: the document reader turns each page into a note with its date, record type, provider, credential and signature read as fields tied to boxes, and every MEAT quote is cited to a page and box of the scan.","components":["review","model","layout","parser"],"hardware":"1x RTX PRO 6000 96 GB for Qwen3.8, and the document reader on about 6 GB of a GPU (measured 27 Sep: 5.7 GB peak for parser and layout, 1.6 to 2.4 s a page, the GPU shared) or on a Mac Studio (measured: 3.3 s a page, 2.9 GB)","quality_evidence":[{"metric":"Verdict accuracy on scanned charts vs the same members as text (50 held-out synthetic members, 200 codes, same run)","value":"187 / 200 vs 192 / 200","source":"decosa-api docs/evals/document-reader.md, HCC test split, 26 Sep 2026"},{"metric":"Same verdict, scanned vs text","value":"195 / 200","source":"docs/evals/document-reader.md, test split"},{"metric":"Codes that should be deleted or held but were kept, on scans (test / fresh 1 / fresh 2)","value":"0 / 1 / 0 of about 160 each","source":"docs/evals/document-reader.md: fresh 1 found a coder's addendum read into the note; fixed, then fresh 2 (50 new members) had none"},{"metric":"Record header fields read right from the scans (date, type, provider, credential, signed)","value":"181 / 182 each","source":"docs/evals/document-reader.md, test split"},{"metric":"Quotes cited to a page and box of the scan","value":"315 / 315","source":"docs/evals/document-reader.md, test split"},{"metric":"After both reader fixes, 50 new members: scanned vs text","value":"189 / 200 vs 190 / 200","source":"docs/evals/document-reader.md, fresh2 split"}],"latency_note":"measured: a scanned member takes several times longer than text (direct route); the scanned sample reads and reviews in under a minute. With the reader on the GPU (one run through the hosted API): read and reviewed in under a minute, the same verdicts.","in_hosted_demo":false,"receipt_coverage":"partial","receipt_note":"Qwen3.8 calls are receipted as in Standard; the page parse is attested by decosa-api's own key until the gateway has model-call receipts (designed, not deployed). The reader service runs next to the hosted API since 27 Sep 2026 (POST /hcc/read-chart with an API key); the console does not offer scanned charts yet.","hosting":null}],"alternates":[],"services":[{"name":"decosa-api","port":8445,"image":"${DECOSA_REGISTRY}/decosa-api:<tag>","purpose":"GET /hcc/info, /hcc/samples; POST /hcc/review (SSE or JSON), /hcc/codes, /hcc/records; POST /record/verify. Keeps no note text."},{"name":"vLLM (model)","port":8114,"image":"vllm/vllm-openai@sha256:c2914767605584b6d8f45686b82de173ecc99e781897aa3d0a66dacd72c51ae1","purpose":"Qwen3.8-27B NVFP4 behind our gateway (hosted) or called directly (self-host)."}],"tools":[{"name":"CMS 2026 Midyear/Final ICD-10-CM Mappings and CMS-HCC V28 model software (Python)","url":"https://www.cms.gov/medicare/payment/medicare-advantage-rates-statistics/risk-adjustment/2026-model-software-icd-10-mappings","license":"US government work (public domain); ICD-10-CM is CDC/NCHS, public domain","purpose":"ICD-10-CM to V28 payment HCCs, the V28 hierarchies and HCC labels, for payment year 2026 (2025 dates of service). Rebuilt by scripts/build_hcc_map.py; zip SHA-256 in GET /hcc/info."},{"name":"CMS, Contract-Level RADV Medical Record Reviewer Guidance (10 Jan 2020)","url":"https://www.cms.gov/files/document/medical-record-reviewer-guidance-january-2020.pdf","license":"US government work (public domain)","purpose":"Acceptable sources and provider types, radiology and telephone exclusions, signatures and credentials, 90-day amendments, no third-party amendments or queries."},{"name":"CMS, PY 2024 MA Contract-Specific RADV Audit Methods and Instructions (28 Aug 2026)","url":"https://www.cms.gov/files/document/radv-py2024-audit-methods-guidance.pdf","license":"US government work (public domain)","purpose":"Valid record definition, telehealth, the INV codes, and the confirmed / discrepant outcomes."},{"name":"ICD-10-CM Official Guidelines for Coding and Reporting FY 2026","url":"https://www.cms.gov/files/document/fy-2026-icd-10-cm-coding-guidelines.pdf","license":"US government work (public domain)","purpose":"IV.H (no uncertain diagnoses in the outpatient setting) and IV.J (code coexisting conditions that affect care, not conditions that no longer exist)."},{"name":"CMS press release, 21 May 2025","url":"https://www.cms.gov/newsroom/press-releases/cms-rolls-out-aggressive-strategy-enhance-accelerate-medicare-advantage-audits","license":"US government work (public domain)","purpose":"All eligible MA contracts audited for each payment year; coders from 40 to about 2,000."},{"name":"scripts/eval_hcc.py and docs/evals/hcc-evidence-file.md","url":null,"license":"Apache-2.0","purpose":"The synthetic member generator, the dev and test runs and every result row."},{"name":"POST /hcc/codes, POST /hcc/records and POST /record/verify","url":null,"license":"Apache-2.0","purpose":"Map codes to V28 HCCs and run the record checks with no model call; verify a signed record anywhere."}],"hardware":[{"tier":"1x RTX PRO 6000 Blackwell 96 GB","fits":true,"notes":"Measured on our server: the hosted demo and the eval ran through the shared gateway; the self-host check ran on the direct route on the same card."},{"tier":"1x RTX 5090 32 GB","fits":true,"notes":"Estimate: Qwen3.8-27B NVFP4 needs about 20 GB of weights plus KV cache; not run for this tool."},{"tier":"CPU only","fits":true,"notes":"The lite tier (POST /hcc/codes and /hcc/records: V28 map, hierarchies and record checks) needs no GPU."}],"latency":[{"lane":"one member, 4 codes, hosted gateway route","typical_ms":34300,"source":"measured on our server 2026-09-26: mean over the 50 test members, 3 members in parallel, gateway shared with other workloads"},{"lane":"mixed-file sample, 8 codes, hosted gateway route","typical_ms":45400,"source":"measured on our server 2026-09-26: 45.4 s and 70.7 s in two runs under load"},{"lane":"mixed-file sample, 8 codes, self-hosted direct route","typical_ms":4800,"source":"measured on our server 2026-09-26 in the self-host check (fresh clone, compose up): 4.8-5.0 s; typed judgment by log-probabilities"},{"lane":"codes and record checks only (POST /hcc/codes, /hcc/records)","typical_ms":null,"source":"no model call; milliseconds on CPU (not separately timed)"}],"benchmark":null,"notes":["On 50 held-out synthetic members (200 codes) it gave the planted verdict for 189 codes. It kept no code that should have been deleted or held (0 of 161). Its 11 errors all removed or held a code: 9 are one condition, where 'seropositive rheumatoid arthritis' was not read as 'with rheumatoid factor'.","Every supported call quoted a planted evidence sentence (35 of 35); 70 of 72 quoted sentences were planted evidence. Quotes are the note's own sentences with character offsets, so they are verbatim by construction.","No add suggestion and no unsubmitted code reached the output in any eval run. Tests run every sample with a model that tries to suggest codes and fail the build if one gets through.","A code documented only in a record RADV would not accept (an audio-only call, a radiologist's report, the year before, unsigned, or a coder's addendum months later) is held, with the reason, not kept.","Everything is measured on synthetic members written by the agent that built the checker. It has not been run on real charts or against certified coders' labels.","Scanned charts (POST /hcc/read-chart, the document reader block): on the same 50 held-out synthetic members printed, signed and scanned, 187 of 200 verdicts were right against 192 of 200 for the text version in the same run; 195 of 200 matched the text verdict, and no scan kept a code it should not. A later split found one false keep (a coder's addendum read into the note); after the fix, 50 new members scored 189 of 200 scanned against 190 of 200 as text, with no false keeps. The scans are clean synthetic pages (typed notes, one font, a pen-squiggle signature), so real faxes will read worse."]},"buyer_facts":[{"label":"Data retention","value":"Nothing stored: the member file lives in memory for the request. The signed record holds hashes, verdicts and receipt ids, never note text; logs carry counts only."},{"label":"What leaves the box","value":"Hosted: every model call goes through our gateway to the GPU serving Qwen3.8-27B, and only synthetic members are accepted. Self-hosted on the direct route: nothing leaves the box. Scanned charts: the document reader runs on Decosa's hosted service (self-hosted: on yours)."},{"label":"What it will not do","value":"Suggest codes to add, search notes for new codes, or draft provider queries. It checks only the submitted codes, lists deletions first, and a certified coder decides."},{"label":"Pricing basis","value":"Per member reviewed (or a flat self-host licence). Never a share of recovered, protected or captured revenue."},{"label":"Input formats","value":"JSON: member id and service year (age and sex optional: they only pick CMS's age and sex edits in the code map), up to 20 submitted codes, up to 12 notes of up to 12,000 characters (60,000 in total) with date, record type, provider, credential, specialty, signature and addenda. Or, through the API only (not on this page), a scanned chart (PDF or image, one record per page, up to 10 pages and 12 MB hosted) through POST /hcc/read-chart, read by the document reader."},{"label":"Typical run","value":"The clean sample: a handful of model calls and a fraction of a cent at the gateway list price, under a minute on the shared gateway. Each run shows its own measured cost."}],"data_handling":{"page":"/data#hcc-evidence-file","self_host":{"level":"confidential","leaves":"nothing","summary":"Runs on your machine; nothing is sent to Decosa or a third party by default."},"hosted":{"level":"operator-processed","demo_only":true,"summary":"Hosted demo on sample or public data only; self-host for real data.","gpus":"operator-contracted","third_parties":[],"retention":"Nothing stored: the member file lives in memory for the request. The signed record holds hashes, verdicts and receipt ids, never note text; logs carry counts only.","used_for_training":false,"encrypted_while_processed":false},"sealed_tier":{"applies":false,"note":"The sealed tier (raw chat only, never use-case pipelines) is paused at launch (/docs/sealed-tier)."},"external_calls":[]},"console":{"href":"/clinics/hcc-evidence-file","input":"hcc","lanes":[{"id":"net","title":"Net effect: delete, hold, keep","kind":"list"},{"id":"codes","title":"Per submitted code, deletions first","kind":"list"},{"id":"records","title":"RADV record checks","kind":"list"},{"id":"record","title":"Evidence file and signed record","kind":"json"}],"samples":[{"n":1,"id":"mixed-file","title":"Mixed file","deep_link":"/clinics/hcc-evidence-file?sample=1&autorun=0"},{"n":2,"id":"clean-file","title":"Clean file","deep_link":"/clinics/hcc-evidence-file?sample=2&autorun=0"},{"n":3,"id":"edge-cases","title":"Edge cases","deep_link":"/clinics/hcc-evidence-file?sample=3&autorun=0"}],"deep_link_params":{"sample":"1-based index into samples, or a sample id","autorun":"1 = start the run once the sample is loaded; 0 (default) = only preselect","reduce-motion":"1 = turn off animations"}},"api":{"base":"https://api.decosa.ai","contract":"/api/contract.json","contract_markdown":"/api/contract.md","reference":"/docs/api","keys":"/account/keys"},"prompts":{"hosted":"/prompts/hcc-evidence-file-hosted.md","selfhost":"/prompts/hcc-evidence-file-selfhost.md","assemble":"/prompts/hcc-evidence-file-assemble.md","mac":"/prompts/hcc-evidence-file-mac.md"},"rehearsal":{"bundle":"/samples/hcc-evidence-file.zip","bundle_url":"https://decosa.ai/samples/hcc-evidence-file.zip","folder":"/samples/hcc-evidence-file/","expected":"/samples/hcc-evidence-file/expected.json","files":["/samples/hcc-evidence-file/expected.json","/samples/hcc-evidence-file/inputs/codes.json","/samples/hcc-evidence-file/inputs/member.json","/samples/hcc-evidence-file/inputs/notes.json"],"bytes":3316,"checks":["the 2021 heart attack coded as acute is not supported (delete)","breast cancer treated in 2016 is not supported (delete)","morbid obesity is held: its only evidence is an audio-only call","COPD is held: its only evidence is a diagnostic radiologist's report","diabetes with CKD is kept","chronic systolic heart failure is kept","at least two codes are to be deleted","the net effect covers all eight HCC codes","the code outside the model (I10) is listed as not reviewed","the coder's late addendum is not an acceptable record","the evidence file lists deletions first","an opportunities mode is refused","the signed record verifies","a record with its status changed no longer verifies","every model call has a signed receipt"],"licence":"Synthetic: the member, providers and notes are invented (decosa_api/verticals/hcc/synth.py). ICD-10-CM and the CMS-HCC V28 mapping are CMS/CDC public-domain works. Part of decosa-api, AGPL-3.0-or-later.","about":"A synthetic Medicare Advantage member (service year 2025) with nine submitted diagnosis codes (eight map to CMS-HCC V28 payment HCCs) and four notes plus an addendum: an internist's visit, a cardiology visit, an audio-only phone call, a diagnostic radiologist's CT report, and an addendum a coder wrote five months after the visit. The review must delete the 2021 heart attack coded as acute and the breast cancer treated in 2016, hold the codes whose only evidence is in the phone call and the radiology report, keep diabetes with CKD, CKD 3b and heart failure with MEAT quotes, report the net effect, refuse an 'opportunities' mode, and sign a record that verifies and fails when changed.","run":{"containers":"docker compose exec api python scripts/rehearse.py hcc-evidence-file","checkout":"python scripts/rehearse.py hcc-evidence-file --bundle hcc-evidence-file.zip --base-url http://127.0.0.1:8445","mac":".venv/bin/python scripts/rehearse.py hcc-evidence-file"},"guidance":"Set up with a coding agent (we recommend Claude Code with Claude Opus 5.5; any capable coding agent works) on mock data only, run the rehearsal until every check passes, then run your own data locally yourself. Never give the agent real data during setup."},"hardware_fit":{"check":"/self-host/hardware?use=hcc-evidence-file","data":"/api/hardware.json","tiers":[{"id":"lite","gpu_gb":0,"basis":null,"unknown":[]},{"id":"standard","gpu_gb":57.6,"basis":"stack","unknown":[]},{"id":"best","gpu_gb":63,"basis":"stack","unknown":[]}],"mac":{"fit":"full","memory_gb":32}},"links":{"page":"/clinics/hcc-evidence-file","json":"/use-cases/hcc-evidence-file.json","metrics":"/metrics/hcc-evidence-file","console":"/clinics/hcc-evidence-file","console_sample":"/clinics/hcc-evidence-file?sample=1&autorun=0","stack":"/clinics/hcc-evidence-file#stack","try_live":"/clinics/hcc-evidence-file","watch":"/clinics/hcc-evidence-file","build":"/clinics/hcc-evidence-file#build","self_host":"/clinics/hcc-evidence-file#self-host","prompts":{"hosted":"/prompts/hcc-evidence-file-hosted.md","selfhost":"/prompts/hcc-evidence-file-selfhost.md","assemble":"/prompts/hcc-evidence-file-assemble.md","mac":"/prompts/hcc-evidence-file-mac.md"}}}