Skip to content

docs: record task 0217 evidence for windows unicode temp investigation #176

docs: record task 0217 evidence for windows unicode temp investigation

docs: record task 0217 evidence for windows unicode temp investigation #176

name: cross-platform-smoke
on:
push:
branches:
- main
- master
pull_request:
workflow_dispatch:
permissions:
contents: read
jobs:
smoke:
name: smoke (${{ matrix.os }})
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- windows-2025
- ubuntu-latest
- macos-latest
steps:
- name: Setup .NET
uses: actions/setup-dotnet@v5
with:
dotnet-version: 10.0.x
- name: Install AgentContextKit global tool
shell: pwsh
run: |
$ErrorActionPreference = "Stop"
$PSNativeCommandUseErrorActionPreference = $true
dotnet tool install --global AgentContextKit --version 0.2.0-alpha.3
if ($IsWindows) {
$toolPath = Join-Path $env:USERPROFILE ".dotnet\tools"
}
else {
$toolPath = Join-Path $HOME ".dotnet/tools"
}
$toolPath | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
Write-Host "Added tool path: $toolPath"
- name: Run cross-platform smoke test
shell: pwsh
run: |
$ErrorActionPreference = "Stop"
$PSNativeCommandUseErrorActionPreference = $true
ackit version
ackit --help
$smokeRoot = Join-Path $env:RUNNER_TEMP "ackit-cross-platform-smoke"
if (Test-Path $smokeRoot) {
Remove-Item -LiteralPath $smokeRoot -Recurse -Force
}
New-Item -ItemType Directory -Force -Path $smokeRoot | Out-Null
Push-Location $smokeRoot
try {
dotnet new console -n DemoApp
Push-Location DemoApp
try {
git init
ackit init --lang en
ackit scan --ci
ackit generate --target all --lang en
ackit task "Cross platform smoke test" --lang en
ackit report --output .ackit/reports/smoke.html
ackit webui --output .ackit/webui/index.html
ackit sarif --output .ackit/reports/smoke.sarif
if (-not (Test-Path ".ackit/reports/smoke.sarif")) {
throw "Expected SARIF output was not created."
}
Get-Content ".ackit/reports/smoke.sarif" | ConvertFrom-Json | Out-Null
ackit prompt-pack --output .ackit/prompt-packs/smoke.md --lang en
ackit context-export --prompt-pack .ackit/prompt-packs/smoke.md --approve --output .ackit/context-exports/smoke.json
$fakeSecret = "OPENAI" + "_API_KEY=sk-" + "1234567890abcdef"
$fakeSecret | Out-File -FilePath ".env.test" -Encoding utf8
$PSNativeCommandUseErrorActionPreference = $false
ackit redact-check --profile public-release
$redactExitCode = $LASTEXITCODE
$PSNativeCommandUseErrorActionPreference = $true
if ($redactExitCode -ne 2) {
throw "Expected redact-check exit code 2 for fake secret, got $redactExitCode."
}
Remove-Item -LiteralPath ".env.test" -Force
ackit scan --ci
}
finally {
Pop-Location
}
}
finally {
Pop-Location
}