From c30bffed732e08ce729b95e70c70047e1660f985 Mon Sep 17 00:00:00 2001 From: Taksh Date: Wed, 29 Jul 2026 16:41:07 +0300 Subject: [PATCH 1/3] fix: treat SURGICAL SAME DAY ADMISSION as elective surgery MIMIC-IV planned surgical admits use that admission_type; matching only ELECTIVE mis-scores them as non-elective in OASIS (+6) and SAPS II (+8). Co-authored-by: Cursor --- mimic-iv/concepts/score/oasis.sql | 2 +- mimic-iv/concepts/score/sapsii.sql | 4 ++-- mimic-iv/concepts_duckdb/score/oasis.sql | 2 +- mimic-iv/concepts_duckdb/score/sapsii.sql | 4 ++-- mimic-iv/concepts_postgres/score/oasis.sql | 2 +- mimic-iv/concepts_postgres/score/sapsii.sql | 4 ++-- 6 files changed, 9 insertions(+), 9 deletions(-) diff --git a/mimic-iv/concepts/score/oasis.sql b/mimic-iv/concepts/score/oasis.sql index 2add3b93..c9e3972b 100644 --- a/mimic-iv/concepts/score/oasis.sql +++ b/mimic-iv/concepts/score/oasis.sql @@ -89,7 +89,7 @@ WITH surgflag AS ( , uo.urineoutput , CASE - WHEN adm.admission_type = 'ELECTIVE' AND sf.surgical = 1 + WHEN adm.admission_type IN ('ELECTIVE', 'SURGICAL SAME DAY ADMISSION') AND sf.surgical = 1 THEN 1 WHEN adm.admission_type IS NULL OR sf.surgical IS NULL THEN NULL diff --git a/mimic-iv/concepts/score/sapsii.sql b/mimic-iv/concepts/score/sapsii.sql index 08902658..bcfdf938 100644 --- a/mimic-iv/concepts/score/sapsii.sql +++ b/mimic-iv/concepts/score/sapsii.sql @@ -326,9 +326,9 @@ WITH co AS ( , comorb.mets , CASE - WHEN adm.admission_type = 'ELECTIVE' AND sf.surgical = 1 + WHEN adm.admission_type IN ('ELECTIVE', 'SURGICAL SAME DAY ADMISSION') AND sf.surgical = 1 THEN 'ScheduledSurgical' - WHEN adm.admission_type != 'ELECTIVE' AND sf.surgical = 1 + WHEN adm.admission_type NOT IN ('ELECTIVE', 'SURGICAL SAME DAY ADMISSION') AND sf.surgical = 1 THEN 'UnscheduledSurgical' ELSE 'Medical' END AS admissiontype diff --git a/mimic-iv/concepts_duckdb/score/oasis.sql b/mimic-iv/concepts_duckdb/score/oasis.sql index 8b5f8f3b..cc6fcded 100644 --- a/mimic-iv/concepts_duckdb/score/oasis.sql +++ b/mimic-iv/concepts_duckdb/score/oasis.sql @@ -60,7 +60,7 @@ WITH surgflag AS ( vent.vent AS mechvent, uo.urineoutput, CASE - WHEN adm.admission_type = 'ELECTIVE' AND sf.surgical = 1 + WHEN adm.admission_type IN ('ELECTIVE', 'SURGICAL SAME DAY ADMISSION') AND sf.surgical = 1 THEN 1 WHEN adm.admission_type IS NULL OR sf.surgical IS NULL THEN NULL diff --git a/mimic-iv/concepts_duckdb/score/sapsii.sql b/mimic-iv/concepts_duckdb/score/sapsii.sql index 0ec63dfb..8124f88b 100644 --- a/mimic-iv/concepts_duckdb/score/sapsii.sql +++ b/mimic-iv/concepts_duckdb/score/sapsii.sql @@ -254,9 +254,9 @@ WITH co AS ( comorb.hem, comorb.mets, CASE - WHEN adm.admission_type = 'ELECTIVE' AND sf.surgical = 1 + WHEN adm.admission_type IN ('ELECTIVE', 'SURGICAL SAME DAY ADMISSION') AND sf.surgical = 1 THEN 'ScheduledSurgical' - WHEN adm.admission_type <> 'ELECTIVE' AND sf.surgical = 1 + WHEN adm.admission_type NOT IN ('ELECTIVE', 'SURGICAL SAME DAY ADMISSION') AND sf.surgical = 1 THEN 'UnscheduledSurgical' ELSE 'Medical' END AS admissiontype diff --git a/mimic-iv/concepts_postgres/score/oasis.sql b/mimic-iv/concepts_postgres/score/oasis.sql index e1e680f6..43afafc7 100644 --- a/mimic-iv/concepts_postgres/score/oasis.sql +++ b/mimic-iv/concepts_postgres/score/oasis.sql @@ -61,7 +61,7 @@ WITH surgflag AS ( vent.vent AS mechvent, uo.urineoutput, CASE - WHEN adm.admission_type = 'ELECTIVE' AND sf.surgical = 1 + WHEN adm.admission_type IN ('ELECTIVE', 'SURGICAL SAME DAY ADMISSION') AND sf.surgical = 1 THEN 1 WHEN adm.admission_type IS NULL OR sf.surgical IS NULL THEN NULL diff --git a/mimic-iv/concepts_postgres/score/sapsii.sql b/mimic-iv/concepts_postgres/score/sapsii.sql index 3daf3794..aeaa0815 100644 --- a/mimic-iv/concepts_postgres/score/sapsii.sql +++ b/mimic-iv/concepts_postgres/score/sapsii.sql @@ -249,9 +249,9 @@ WITH co AS ( comorb.hem, comorb.mets, CASE - WHEN adm.admission_type = 'ELECTIVE' AND sf.surgical = 1 + WHEN adm.admission_type IN ('ELECTIVE', 'SURGICAL SAME DAY ADMISSION') AND sf.surgical = 1 THEN 'ScheduledSurgical' - WHEN adm.admission_type <> 'ELECTIVE' AND sf.surgical = 1 + WHEN adm.admission_type NOT IN ('ELECTIVE', 'SURGICAL SAME DAY ADMISSION') AND sf.surgical = 1 THEN 'UnscheduledSurgical' ELSE 'Medical' END AS admissiontype From 61c5606748b25cbf0c61c103907d51119700d173 Mon Sep 17 00:00:00 2001 From: Taksh Date: Wed, 29 Jul 2026 16:45:51 +0300 Subject: [PATCH 2/3] style: wrap elective admission_type IN lists for sqlfluff Co-authored-by: Cursor --- mimic-iv/concepts/score/oasis.sql | 4 +++- mimic-iv/concepts/score/sapsii.sql | 8 ++++++-- mimic-iv/concepts_duckdb/score/oasis.sql | 4 +++- mimic-iv/concepts_duckdb/score/sapsii.sql | 8 ++++++-- mimic-iv/concepts_postgres/score/oasis.sql | 4 +++- mimic-iv/concepts_postgres/score/sapsii.sql | 8 ++++++-- 6 files changed, 27 insertions(+), 9 deletions(-) diff --git a/mimic-iv/concepts/score/oasis.sql b/mimic-iv/concepts/score/oasis.sql index c9e3972b..bc2ec87d 100644 --- a/mimic-iv/concepts/score/oasis.sql +++ b/mimic-iv/concepts/score/oasis.sql @@ -89,7 +89,9 @@ WITH surgflag AS ( , uo.urineoutput , CASE - WHEN adm.admission_type IN ('ELECTIVE', 'SURGICAL SAME DAY ADMISSION') AND sf.surgical = 1 + WHEN adm.admission_type IN ( + 'ELECTIVE', 'SURGICAL SAME DAY ADMISSION' + ) AND sf.surgical = 1 THEN 1 WHEN adm.admission_type IS NULL OR sf.surgical IS NULL THEN NULL diff --git a/mimic-iv/concepts/score/sapsii.sql b/mimic-iv/concepts/score/sapsii.sql index bcfdf938..3f6c3f9a 100644 --- a/mimic-iv/concepts/score/sapsii.sql +++ b/mimic-iv/concepts/score/sapsii.sql @@ -326,9 +326,13 @@ WITH co AS ( , comorb.mets , CASE - WHEN adm.admission_type IN ('ELECTIVE', 'SURGICAL SAME DAY ADMISSION') AND sf.surgical = 1 + WHEN adm.admission_type IN ( + 'ELECTIVE', 'SURGICAL SAME DAY ADMISSION' + ) AND sf.surgical = 1 THEN 'ScheduledSurgical' - WHEN adm.admission_type NOT IN ('ELECTIVE', 'SURGICAL SAME DAY ADMISSION') AND sf.surgical = 1 + WHEN adm.admission_type NOT IN ( + 'ELECTIVE', 'SURGICAL SAME DAY ADMISSION' + ) AND sf.surgical = 1 THEN 'UnscheduledSurgical' ELSE 'Medical' END AS admissiontype diff --git a/mimic-iv/concepts_duckdb/score/oasis.sql b/mimic-iv/concepts_duckdb/score/oasis.sql index cc6fcded..dd11728a 100644 --- a/mimic-iv/concepts_duckdb/score/oasis.sql +++ b/mimic-iv/concepts_duckdb/score/oasis.sql @@ -60,7 +60,9 @@ WITH surgflag AS ( vent.vent AS mechvent, uo.urineoutput, CASE - WHEN adm.admission_type IN ('ELECTIVE', 'SURGICAL SAME DAY ADMISSION') AND sf.surgical = 1 + WHEN adm.admission_type IN ( + 'ELECTIVE', 'SURGICAL SAME DAY ADMISSION' + ) AND sf.surgical = 1 THEN 1 WHEN adm.admission_type IS NULL OR sf.surgical IS NULL THEN NULL diff --git a/mimic-iv/concepts_duckdb/score/sapsii.sql b/mimic-iv/concepts_duckdb/score/sapsii.sql index 8124f88b..f0cf7c62 100644 --- a/mimic-iv/concepts_duckdb/score/sapsii.sql +++ b/mimic-iv/concepts_duckdb/score/sapsii.sql @@ -254,9 +254,13 @@ WITH co AS ( comorb.hem, comorb.mets, CASE - WHEN adm.admission_type IN ('ELECTIVE', 'SURGICAL SAME DAY ADMISSION') AND sf.surgical = 1 + WHEN adm.admission_type IN ( + 'ELECTIVE', 'SURGICAL SAME DAY ADMISSION' + ) AND sf.surgical = 1 THEN 'ScheduledSurgical' - WHEN adm.admission_type NOT IN ('ELECTIVE', 'SURGICAL SAME DAY ADMISSION') AND sf.surgical = 1 + WHEN adm.admission_type NOT IN ( + 'ELECTIVE', 'SURGICAL SAME DAY ADMISSION' + ) AND sf.surgical = 1 THEN 'UnscheduledSurgical' ELSE 'Medical' END AS admissiontype diff --git a/mimic-iv/concepts_postgres/score/oasis.sql b/mimic-iv/concepts_postgres/score/oasis.sql index 43afafc7..f8a127b5 100644 --- a/mimic-iv/concepts_postgres/score/oasis.sql +++ b/mimic-iv/concepts_postgres/score/oasis.sql @@ -61,7 +61,9 @@ WITH surgflag AS ( vent.vent AS mechvent, uo.urineoutput, CASE - WHEN adm.admission_type IN ('ELECTIVE', 'SURGICAL SAME DAY ADMISSION') AND sf.surgical = 1 + WHEN adm.admission_type IN ( + 'ELECTIVE', 'SURGICAL SAME DAY ADMISSION' + ) AND sf.surgical = 1 THEN 1 WHEN adm.admission_type IS NULL OR sf.surgical IS NULL THEN NULL diff --git a/mimic-iv/concepts_postgres/score/sapsii.sql b/mimic-iv/concepts_postgres/score/sapsii.sql index aeaa0815..87cf8043 100644 --- a/mimic-iv/concepts_postgres/score/sapsii.sql +++ b/mimic-iv/concepts_postgres/score/sapsii.sql @@ -249,9 +249,13 @@ WITH co AS ( comorb.hem, comorb.mets, CASE - WHEN adm.admission_type IN ('ELECTIVE', 'SURGICAL SAME DAY ADMISSION') AND sf.surgical = 1 + WHEN adm.admission_type IN ( + 'ELECTIVE', 'SURGICAL SAME DAY ADMISSION' + ) AND sf.surgical = 1 THEN 'ScheduledSurgical' - WHEN adm.admission_type NOT IN ('ELECTIVE', 'SURGICAL SAME DAY ADMISSION') AND sf.surgical = 1 + WHEN adm.admission_type NOT IN ( + 'ELECTIVE', 'SURGICAL SAME DAY ADMISSION' + ) AND sf.surgical = 1 THEN 'UnscheduledSurgical' ELSE 'Medical' END AS admissiontype From 8f6b331f67a799e40215fa71f2a60cf47e1d0ba6 Mon Sep 17 00:00:00 2001 From: Taksh Date: Wed, 29 Jul 2026 16:50:33 +0300 Subject: [PATCH 3/3] ci: don't fail fork PRs on sqlfluff annotate permissions Co-authored-by: Cursor --- .github/workflows/lint_sqlfluff.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/lint_sqlfluff.yml b/.github/workflows/lint_sqlfluff.yml index 0986785b..0b338395 100644 --- a/.github/workflows/lint_sqlfluff.yml +++ b/.github/workflows/lint_sqlfluff.yml @@ -35,8 +35,12 @@ jobs: shell: bash run: sqlfluff lint --format github-annotation --annotation-level failure --nofail ${{ steps.get_files_to_lint.outputs.lintees }} > annotations.json - name: Annotate + # Fork PRs cannot create check runs with GITHUB_TOKEN; lint already ran. + continue-on-error: true + if: steps.get_files_to_lint.outputs.lintees != '' uses: yuzutech/annotations-action@v0.6.0 with: repo-token: "${{ secrets.GITHUB_TOKEN }}" title: "SQLFluff Lint" - input: "./annotations.json" \ No newline at end of file + input: "./annotations.json" + ignore-missing-file: true