diff --git a/.github/workflows/report.yml b/.github/workflows/report.yml index 94ea121..c526da2 100644 --- a/.github/workflows/report.yml +++ b/.github/workflows/report.yml @@ -30,7 +30,7 @@ jobs: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: repository: rootform-dev/action - ref: cc457702223d887c9db5da52ba36099ad3e1b4e0 + ref: 8b026e9c7268a960ed6f9b48ecea404180ddb151 path: fixtures/action sparse-checkout: src persist-credentials: false @@ -43,7 +43,7 @@ jobs: bun-version: '1.4.0' - name: Generate actual Form with the published release id: analyze - uses: rootform-dev/action/analyze@cc457702223d887c9db5da52ba36099ad3e1b4e0 + uses: rootform-dev/action/analyze@8b026e9c7268a960ed6f9b48ecea404180ddb151 with: version: 0.1.0-pr.117.1 input: fixtures/rootform/examples/playground/shared-data-platform/base/plan.json @@ -62,7 +62,7 @@ jobs: - name: Produce actual negative Policy result id: check continue-on-error: true - uses: rootform-dev/action/check@cc457702223d887c9db5da52ba36099ad3e1b4e0 + uses: rootform-dev/action/check@8b026e9c7268a960ed6f9b48ecea404180ddb151 with: input: ${{ steps.analyze.outputs.form }} policy-pack: fixtures/negative diff --git a/README.md b/README.md index d21b40a..cacdae9 100644 --- a/README.md +++ b/README.md @@ -22,7 +22,7 @@ the integrated Action keeps its Form, reports, artifacts and Summary with the fork's reduced token, while PR commenting is skipped. The PR report currently qualifies the public CLI Markdown source at -`a1adfafa66a548b270727cfbce913325e5980f77`. A published binary produces the +`2641dfbb8fd5ed665ace7c23864afba6715cf819`. A published binary produces the actual plan Form and negative Policy result, then a small public CLI embedding reopens that saved evidence and exports complete Markdown/JSON. Compilation and Policy evaluation are unavailable in the embedding. A recorded Policy answer diff --git a/scripts/markdown-review/go.mod b/scripts/markdown-review/go.mod index 7f22ccd..d8b0302 100644 --- a/scripts/markdown-review/go.mod +++ b/scripts/markdown-review/go.mod @@ -2,7 +2,7 @@ module github.com/rootform-dev/action-qualification/markdown-review go 1.26.7 -require github.com/rootform-dev/rootform/cli v0.0.0-20261002160814-a1adfafa66a5 +require github.com/rootform-dev/rootform/cli v0.0.0-20261002200054-2641dfbb8fd5 require ( github.com/inconshreveable/mousetrap v1.1.0 // indirect diff --git a/scripts/markdown-review/go.sum b/scripts/markdown-review/go.sum index 8b21ea0..d4af1d1 100644 --- a/scripts/markdown-review/go.sum +++ b/scripts/markdown-review/go.sum @@ -3,6 +3,10 @@ github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2 github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= github.com/rootform-dev/rootform/cli v0.0.0-20261002160814-a1adfafa66a5 h1:asbp+U1A78/NJFmEl3tlWBhakHyZCXZZo7AJfl93bZo= github.com/rootform-dev/rootform/cli v0.0.0-20261002160814-a1adfafa66a5/go.mod h1:3mpH3CHzXAPAIutuAhZS7ENGerHCZvyDvZDOJ+3RRLk= +github.com/rootform-dev/rootform/cli v0.0.0-20261002194947-086dc1f16ffe h1:qN3T4bcjY+3tYX0eNPdDsLqYnfjDMD/Ki9NgqHhe0ZQ= +github.com/rootform-dev/rootform/cli v0.0.0-20261002194947-086dc1f16ffe/go.mod h1:3mpH3CHzXAPAIutuAhZS7ENGerHCZvyDvZDOJ+3RRLk= +github.com/rootform-dev/rootform/cli v0.0.0-20261002200054-2641dfbb8fd5 h1:aNifqVM3GxrnqTPOAvs8Fi/901hA5tX/cfPijb9zruY= +github.com/rootform-dev/rootform/cli v0.0.0-20261002200054-2641dfbb8fd5/go.mod h1:3mpH3CHzXAPAIutuAhZS7ENGerHCZvyDvZDOJ+3RRLk= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/spf13/cobra v1.10.2 h1:DMTTonx5m65Ic0GOoRY2c16WCbHxOOw6xxezuLaBpcU= github.com/spf13/cobra v1.10.2/go.mod h1:7C1pvHqHw5A4vrJfjNwvOdzYu0Gml16OCs2GRiTUUS4= diff --git a/scripts/publish-review.ts b/scripts/publish-review.ts index 56947d3..28ad960 100644 --- a/scripts/publish-review.ts +++ b/scripts/publish-review.ts @@ -4,8 +4,8 @@ import { appendFileSync, copyFileSync, readFileSync, writeFileSync } from 'node: import { resolve } from 'node:path'; import { pathToFileURL } from 'node:url'; -const cliSource = 'a1adfafa66a548b270727cfbce913325e5980f77'; -const actionSource = 'cc457702223d887c9db5da52ba36099ad3e1b4e0'; +const cliSource = '2641dfbb8fd5ed665ace7c23864afba6715cf819'; +const actionSource = '8b026e9c7268a960ed6f9b48ecea404180ddb151'; const source = resolve(process.env.ROOTFORM_ACTION_SOURCE || 'fixtures/action'); const { combineReports, renderReport, REPORT_MARKER } = await import(pathToFileURL(resolve(source, 'src/report.ts')).href); const { readGitHubContext, upsertPullRequestComment } = await import(pathToFileURL(resolve(source, 'src/pull-request.ts')).href); @@ -33,7 +33,9 @@ if (process.argv[2] === 'assemble') { assert.ok(!/\d+ of \d+ (?:entries|evaluations|evidence lines) shown|\(\d+ of \d+ shown\)/.test(markdown)); assert.ok(markdown.includes('> [!CAUTION]\n> **Verdict: VIOLATED**')); assert.ok(markdown.includes('Instances: 76 added')); - assert.ok(markdown.includes('#### Δ Net change')); + for (const heading of ['#### ± Planned changes', '#### ↺ Reported drift', '#### Δ Net change', '#### ▦ Planned architecture', '**? Uncertainty']) { + assert.ok(markdown.includes(heading), `missing review typography: ${heading}`); + } for (const [variable, filename] of [['ROOTFORM_SARIF', 'results.sarif'], ['ROOTFORM_HTML', 'explorer.html']]) { copyFileSync(required(variable), `rendered/${filename}`); }