Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
37178f9
feat: add DomainContext model, CLI flag, and pipeline wiring
deanban Apr 14, 2026
af0cb44
feat: add staged L2 schemas, Stage A/B prompts, and trigger logic
deanban Apr 14, 2026
d81b66d
feat: wire A→B→C→merge pipeline with recovery and enriched vocab context
deanban Apr 14, 2026
d0c3756
feat: add eval harness — assertion dump, diff, telemetry, dev slice
deanban Apr 14, 2026
246c55c
feat: add domain-aware prompts and healthcare few-shot library
deanban Apr 14, 2026
7beea0a
test: add Stage C trigger, execution, merge, and partial failure tests
deanban Apr 14, 2026
676c610
feat: add cBioPortal + OMOP ingest pipeline and Databricks bridge
deanban Apr 19, 2026
b2577f7
chore: gitignore .wolf/ OpenWolf context directory
deanban Apr 19, 2026
a6180bb
feat: add sema eval CLI for dev-slice runner, diff, and milestone report
deanban Apr 19, 2026
bf2da3a
fix: populate real latency and token telemetry in staged L2 pipeline
deanban Apr 19, 2026
39e8b82
chore(eval): add dev_slice_poc.yaml matching current Databricks cBioP…
deanban Apr 19, 2026
9db97a5
fix: sanitize LLM-leaked type suffix from Stage B column names
deanban Apr 19, 2026
12dce77
fix(few-shot): add synonyms to Stage B examples and compact JSON format
deanban Apr 19, 2026
a92e2bf
eval: add dev-slice rollout artifacts for steps 2–5
deanban Apr 19, 2026
f67dd27
feat(ingest): add cBioPortal SV, CNA, gene-panel-matrix, and resource…
deanban Apr 19, 2026
181af3b
eval: expand dev slice to 12 tables, re-run full pipeline on GBM ingest
deanban Apr 20, 2026
005c72d
refactor: remove deprecated single-pass and two-pass L2 code (Task 11)
deanban Apr 20, 2026
6aa21d6
eval: post-cleanup sanity run on 12-table slice
deanban Apr 20, 2026
c5662fe
eval: verification run after Neo4j wipe + Task 11 cleanup
deanban Apr 20, 2026
a047c78
docs(eval): add step 6 milestone summary for 12-table POC slice
deanban Apr 21, 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
7 changes: 7 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -19,3 +19,10 @@ EMBEDDING_PROVIDER=openrouter
EMBEDDING_MODEL=google/gemini-embedding-001
EMBEDDING_API_KEY=sk-or-...
# EMBEDDING_BASE_URL= # Only needed for databricks or custom providers

# Ingest / data bridge (optional)
# INGEST_DUCKDB_PATH=~/.sema/poc.duckdb
# INGEST_CACHE_DIR=~/.sema/cache/cbioportal
# INGEST_OMOP_VOCAB_PATH=~/data/omop/athena_2026_04
# Required only for vocabulary push via COPY INTO (falls back to INSERT when unset).
# INGEST_CLOUD_STAGING_URI=s3://my-bucket/sema-staging/
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ Thumbs.db

# Project tooling
openspec/
.wolf/
.mypy_cache
.pytest_cache
htmlcov/
Expand All @@ -40,3 +41,6 @@ coverage.xml
# Docs (generated, source lives elsewhere)
docs/
backups/

# Eval run logs (artifacts kept, logs are transient)
eval-runs/*.log
72 changes: 72 additions & 0 deletions eval-runs/end-to-end-diff.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
{
"summary": {
"tables_compared": 6,
"total_added": 50,
"total_removed": 94,
"total_changed": 814,
"only_in_baseline": [],
"only_in_current": []
},
"per_table": [
{
"table": "mutation",
"summary": {
"added_count": 25,
"removed_count": 51,
"changed_count": 385,
"total_before": 800,
"total_after": 799
}
},
{
"table": "patient",
"summary": {
"added_count": 12,
"removed_count": 16,
"changed_count": 142,
"total_before": 362,
"total_after": 406
}
},
{
"table": "sample",
"summary": {
"added_count": 5,
"removed_count": 3,
"changed_count": 72,
"total_before": 177,
"total_after": 213
}
},
{
"table": "timeline_sample_acquisition",
"summary": {
"added_count": 0,
"removed_count": 8,
"changed_count": 48,
"total_before": 122,
"total_after": 103
}
},
{
"table": "timeline_status",
"summary": {
"added_count": 2,
"removed_count": 9,
"changed_count": 59,
"total_before": 153,
"total_after": 189
}
},
{
"table": "timeline_treatment",
"summary": {
"added_count": 6,
"removed_count": 7,
"changed_count": 108,
"total_before": 233,
"total_after": 294
}
}
]
}
132 changes: 132 additions & 0 deletions eval-runs/post-cleanup-diff.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,132 @@
{
"summary": {
"tables_compared": 12,
"total_added": 23,
"total_removed": 22,
"total_changed": 670,
"only_in_baseline": [],
"only_in_current": []
},
"per_table": [
{
"table": "clinical_supp_hypoxia",
"summary": {
"added_count": 0,
"removed_count": 0,
"changed_count": 9,
"total_before": 44,
"total_after": 44
}
},
{
"table": "cna",
"summary": {
"added_count": 0,
"removed_count": 0,
"changed_count": 8,
"total_before": 42,
"total_after": 41
}
},
{
"table": "gene_panel_matrix",
"summary": {
"added_count": 0,
"removed_count": 0,
"changed_count": 17,
"total_before": 44,
"total_after": 43
}
},
{
"table": "mutation",
"summary": {
"added_count": 14,
"removed_count": 11,
"changed_count": 256,
"total_before": 788,
"total_after": 795
}
},
{
"table": "patient",
"summary": {
"added_count": 1,
"removed_count": 0,
"changed_count": 116,
"total_before": 364,
"total_after": 362
}
},
{
"table": "resource_definition",
"summary": {
"added_count": 0,
"removed_count": 0,
"changed_count": 17,
"total_before": 57,
"total_after": 58
}
},
{
"table": "resource_patient",
"summary": {
"added_count": 0,
"removed_count": 0,
"changed_count": 9,
"total_before": 31,
"total_after": 30
}
},
{
"table": "sample",
"summary": {
"added_count": 0,
"removed_count": 1,
"changed_count": 50,
"total_before": 184,
"total_after": 182
}
},
{
"table": "structural_variant",
"summary": {
"added_count": 0,
"removed_count": 0,
"changed_count": 38,
"total_before": 117,
"total_after": 115
}
},
{
"table": "timeline_sample_acquisition",
"summary": {
"added_count": 5,
"removed_count": 1,
"changed_count": 44,
"total_before": 118,
"total_after": 118
}
},
{
"table": "timeline_status",
"summary": {
"added_count": 0,
"removed_count": 5,
"changed_count": 25,
"total_before": 99,
"total_after": 77
}
},
{
"table": "timeline_treatment",
"summary": {
"added_count": 3,
"removed_count": 4,
"changed_count": 81,
"total_before": 301,
"total_after": 264
}
}
]
}
Loading
Loading