From 72dc1373395739e3f9017e5c0e5c96171f6838f7 Mon Sep 17 00:00:00 2001 From: "Ilya (Marshal)" Date: Wed, 3 Dec 2025 16:13:05 +0100 Subject: [PATCH 1/6] Add DASL testing harness to CI workflow --- .github/workflows/test.yml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 0005a75..b490199 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -7,6 +7,7 @@ permissions: env: UV_PYTHON: 3.8 # minimum supported version + DASL_TESTING_REF: "56f7fd74a8eb0955670dab139034e845329dca57" jobs: unit_tests: @@ -29,3 +30,14 @@ jobs: - name: Run Tests. run: uv run pytest + + - name: Checkout dasl-testing. + uses: actions/checkout@v4 + with: + repository: hyphacoop/dasl-testing + path: dasl-testing + ref: ${{ env.DASL_TESTING_REF }} + + - name: Run DASL Python harness. + working-directory: dasl-testing + run: uv run python harnesses/python/main.py libipld From 2f533cb46cc663477253bfad44cee557cc99bb4f Mon Sep 17 00:00:00 2001 From: "Ilya (Marshal)" Date: Wed, 3 Dec 2025 16:18:10 +0100 Subject: [PATCH 2/6] fiz dasl run --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index b490199..b11e964 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -40,4 +40,4 @@ jobs: - name: Run DASL Python harness. working-directory: dasl-testing - run: uv run python harnesses/python/main.py libipld + run: uv run --with cbor2 python harnesses/python/main.py libipld From 0bc00ea231164e9966c2fe7b7b54b7445f08e8ee Mon Sep 17 00:00:00 2001 From: "Ilya (Marshal)" Date: Wed, 3 Dec 2025 16:23:44 +0100 Subject: [PATCH 3/6] expose results to summary --- .github/workflows/test.yml | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index b11e964..3b4db02 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -40,4 +40,12 @@ jobs: - name: Run DASL Python harness. working-directory: dasl-testing - run: uv run --with cbor2 python harnesses/python/main.py libipld + run: | + RESULT_JSON=$(uv run --with cbor2 python harnesses/python/main.py libipld) + { + echo "## DASL Results" + echo + echo '```json' + echo "$RESULT_JSON" + echo '```' + } >> "$GITHUB_STEP_SUMMARY" From 68558b5c2b6cc91c84c5ddac6e506b8b0b102b55 Mon Sep 17 00:00:00 2001 From: "Ilya (Marshal)" Date: Wed, 3 Dec 2025 16:28:01 +0100 Subject: [PATCH 4/6] fix related path issues --- .github/workflows/test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 3b4db02..08dc48a 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -39,9 +39,9 @@ jobs: ref: ${{ env.DASL_TESTING_REF }} - name: Run DASL Python harness. - working-directory: dasl-testing + working-directory: dasl-testing/harnesses/python run: | - RESULT_JSON=$(uv run --with cbor2 python harnesses/python/main.py libipld) + RESULT_JSON=$(uv run --with cbor2 python main.py libipld) { echo "## DASL Results" echo From 1e4e701b229f5ece997f22aca5a8cdb69ea4ad27 Mon Sep 17 00:00:00 2001 From: "Ilya (Marshal)" Date: Wed, 3 Dec 2025 16:30:30 +0100 Subject: [PATCH 5/6] fix python version for dasl --- .github/workflows/test.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 08dc48a..e9d3719 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -40,6 +40,8 @@ jobs: - name: Run DASL Python harness. working-directory: dasl-testing/harnesses/python + env: + UV_PYTHON: "3.13" # DASL testing requires Python 3.13+ run: | RESULT_JSON=$(uv run --with cbor2 python main.py libipld) { From 3bca9a1f1a9f53d827610a4a912e0ea3a496d93a Mon Sep 17 00:00:00 2001 From: "Ilya (Marshal)" Date: Wed, 3 Dec 2025 16:34:30 +0100 Subject: [PATCH 6/6] convert dasl json to md table --- .github/workflows/test.yml | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index e9d3719..15ef256 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -44,10 +44,27 @@ jobs: UV_PYTHON: "3.13" # DASL testing requires Python 3.13+ run: | RESULT_JSON=$(uv run --with cbor2 python main.py libipld) + { echo "## DASL Results" echo - echo '```json' - echo "$RESULT_JSON" - echo '```' + echo "Metadata:" + echo + echo "- Link: $(echo "$RESULT_JSON" | jq -r '.metadata.link')" + echo "- Version: $(echo "$RESULT_JSON" | jq -r '.metadata.version')" + echo + echo "### Per-file summary" + echo + echo "| File | Total | Passed | Failed |" + echo "|------|-------|--------|--------|" + echo "$RESULT_JSON" | jq -r ' + .files + | to_entries[] + | .key as $file + | ( [ .value[] | .pass ] ) as $passes + | ($passes | length) as $total + | ($passes | map(select(. == true)) | length) as $passed + | ($total - $passed) as $failed + | "| \($file) | \($total) | \($passed) | \($failed) |" + ' } >> "$GITHUB_STEP_SUMMARY"