Skip to content

[core] harden attr proxy #715

[core] harden attr proxy

[core] harden attr proxy #715

Triggered via push June 25, 2026 12:46
Status Success
Total duration 5m 9s
Artifacts 10

main.yml

on: push
Build Scramjet
3m 2s
Build Scramjet
Check Version
7s
Check Version
Validate Package Structure
12s
Validate Package Structure
Run Scramjet Tests
1m 28s
Run Scramjet Tests
Run Rewriter Tests
1m 1s
Run Rewriter Tests
Build Frontend
23s
Build Frontend
Upload release
11s
Upload release
Publish Scramjet to NPM
0s
Publish Scramjet to NPM
Upload to Github Pages
15s
Upload to Github Pages
Fit to window
Zoom out
Zoom in

Annotations

6 errors and 9 warnings
Run Scramjet Tests
Test "rewriter-css-unrewrite-import-url" error: rewriter-css-unrewrite-import-url: @import url("https://proxy.test/service/https%3A%2F%2Fexample.com%2Fstyles%2Ftheme.css?%24io=https%3A%2F%2Fexample.com"); should be unrewritten to @import url("/styles/theme.css"); Expected: @import url("/styles/theme.css"); Actual: @import url("https://example.com/styles/theme.css");
Run Scramjet Tests
Test "rewriter-css-unrewrite-uppercase-url-function" error: rewriter-css-unrewrite-uppercase-url-function: b{background:URL("https://proxy.test/service/https%3A%2F%2Fexample.com%2Fz.png?%24io=https%3A%2F%2Fexample.com")} should be unrewritten to b{background:URL("/z.png")} Expected: b{background:URL("/z.png")} Actual: b{background:URL("https://example.com/z.png")}
Run Scramjet Tests
Test "rewriter-css-block-comment-should-not-rewrite-url" error: Values are not equal Expected: /* hint url(/ghost.png) */ .x{} Actual: /* hint url(https://proxy.test/service/https%3A%2F%2Fexample.com%2Fghost.png?%24io=https%3A%2F%2Fexample.com) */ .x{}
Run Scramjet Tests
Test "rewriter-css-unrewrite-import-string" error: rewriter-css-unrewrite-import-string: @import "https://proxy.test/service/https%3A%2F%2Fexample.com%2Fstyles%2Ftheme.css?%24io=https%3A%2F%2Fexample.com"; should be unrewritten to @import "/styles/theme.css"; Expected: @import "/styles/theme.css"; Actual: @import "https://example.com/styles/theme.css";
Run Scramjet Tests
Test "rewriter-css-unrewrite-regression-import-layer-supports-media" error: Values are not equal Expected: @import url("/bundle.css") layer(theme) supports(display: grid) screen, print; Actual: @import url("https://example.com/bundle.css") layer(theme) supports(display: grid) screen, print;
Run Scramjet Tests
Test "rewriter-css-unrewrite-url" error: rewriter-css-unrewrite-url: body{background:url("https://proxy.test/service/https%3A%2F%2Fexample.com%2Fassets%2Fbg.png?%24io=https%3A%2F%2Fexample.com")} should be unrewritten to body{background:url("/assets/bg.png")} Expected: body{background:url("/assets/bg.png")} Actual: body{background:url("https://example.com/assets/bg.png")}
Check Version
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/checkout@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Build Scramjet
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: Aandreba/setup-binaryen@v1.0.0, actions/cache@v4, actions/checkout@v4, actions/setup-node@v4, actions/upload-artifact@v4, pnpm/action-setup@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Validate Package Structure
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/checkout@v4, actions/download-artifact@v4, actions/setup-node@v4, pnpm/action-setup@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Build Frontend
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/checkout@v4, actions/download-artifact@v4, actions/setup-node@v4, actions/upload-artifact@v4, pnpm/action-setup@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Run Rewriter Tests
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/checkout@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Run Scramjet Tests
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/checkout@v4, actions/download-artifact@v4, actions/setup-node@v4, pnpm/action-setup@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Upload release
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/download-artifact@v4, dev-drprasad/delete-tag-and-release@v1.1. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Upload release
Failed to upload artifact mercuryworkshop-scramjet-controller-0.0.14.tgz. Validation Failed: {"resource":"ReleaseAsset","code":"already_exists","field":"name"} - https://docs.github.com/rest.
Upload to Github Pages
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/deploy-pages@v4, actions/download-artifact@v4, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/

Artifacts

Produced during runtime
Name Size Digest
create-proxy-app-package
836 KB
sha256:fc49bab45db050018931810c0c99a689950f08d6a70b027ec5ad53240ea376aa
frontend
4.93 MB
sha256:dee34b48d3b697d1ca8738a54e5f873851499b4b256c9b10326704097475b54e
github-pages Expired
4.88 MB
sha256:391747c6f9591155d236e5efcae6a9f5e827239170a8eb631f53e0aa10594566
proxy-bootstrap-package
20.6 KB
sha256:29e4bba5bdd97dde07bee00527c029295736aa2f6ae42999f7cab9479e2f49db
scramjet
2.14 MB
sha256:c1ad48b7654307b5d02823f8757e33f0e482fed6c78ea262763aa51dc8fc8922
scramjet-controller
48.5 KB
sha256:56c9b2569bf3fa9179ea64d67ae9dd7f0c6ebb25bb6a34e2dea0b3bb51e89199
scramjet-controller-package
50.3 KB
sha256:7d51b5188144963b3f0b67e4398476b411df093c1b907f4b1654c91c3033f9a7
scramjet-package
2.14 MB
sha256:f7943d61cd5bc5c4891598fb453557d7a7b92ad5f856ac7d95901b8ca967bac6
scramjet-utils
48.2 KB
sha256:65df10360ecc58707228433ddc2ce16d009020f99f3f662a8ed75d788550ee6a
scramjet-utils-package
40.5 KB
sha256:d7dd24181af3248d727fc398f92dbd39a81a50a264e346b010537d3b8003bedb