You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Remove the prerequisite on optional checkpoint/conformance #434. Preserve layout compatibility and core C15 prerequisites, native platform acceptance tests, and signed artifacts. Ordinary native review must not require preflight, a seal, or historical RED proof.
Owner: nold-ai/specfact-cli#740; paired product contract: #481. This section supersedes conflicting default-workflow and dependency statements below; other acceptance criteria remain in force.
Why
SpecFact is a local-first CLI for developers and agentic AI. Code Review must execute directly on macOS, Linux, and Windows; a Linux-only validation runtime forces local users into Docker or emulation even where analyzers already have native builds.
C14 currently hardcodes Linux x86-64 environments, Bubblewrap ELF descriptors, /proc observations, and Linux runtime paths. Changing architecture detection alone is insufficient.
Required outcome
Keep the same native specfact code review run workflow and machine-readable results across macOS, Linux, and Windows.
No Docker, WSL, Linux VM, OS emulation, or CPU emulation prerequisite. OS-native sandboxing is permitted.
Define and verify native x64/ARM64 coverage per OS; never advertise an architecture supported only through emulation.
Preserve scope truth, differential classification, C15 authoritative status/exit behavior, signed runtime provenance, and complete required analyzer evidence.
Provision native runtimes through verified platform artifacts; support offline reuse after explicit provisioning.
Keep local validation independent of GitHub and agent vendor. Protected CI evidence promotion remains separately authenticated.
Do not silently drop analyzers or claim unsupported isolation capabilities. Record backend/platform identities and explicit unsupported states.
Core C14 #680 and modules C15 #417 -> core #679 retain their actual compatible release, policy/profile and exception prerequisites. Optional preflight #431/#432/#434 and harness adapters #433 do not block native implementation or release. Core #680's current native blockers are shipped/closed modules #459 and #466; no #431 edge remains.
Do not begin native runtime implementation until the released prerequisite and C15 identities are available. Reassess the proposal using that exact baseline, validate/refine and approve the design, then use relevant native tests and current-run results. Preflight, checkpoints, conformance seals and historical RED proof are optional assurance capabilities, not prerequisites for this workflow.
Implementation planning and acceptance
Separate portable review logic from native runtime acquisition, isolation, launching, and observation.
Audit all pinned analyzer/native dependencies and supported Python/OS/architecture combinations.
Validate native isolation prototypes on each OS before choosing production backends or publishing compatibility claims.
Specify backend capabilities, filesystem/network boundaries, child-process cleanup, resource bounds, artifact integrity, project dependencies, and offline behavior against the released baseline.
Add failing-first tests for each supported platform, then verify native analyzer execution and stable verdict semantics.
Test paths with spaces/Unicode, case sensitivity, permissions, symlinks/reparse points, cancellation, unavailable backends, and missing/incompatible native dependencies.
Demonstrate local and CI execution on native OS runners without Docker/WSL/VM/emulation; distinguish platform-dependent project test results.
Preserve historical C14 identities. Any new profile/schema or consumer adoption requires an explicit versioned contract and paired core scope.
Feasibility evidence and limitations
Checked 2026-09-06: the pinned Semgrep 1.144.0, CrossHair 0.0.109, Z3 5.1.0.0, and Node 24.16.0 packages provide native macOS ARM64 and Windows x64 wheels. This is packaging evidence, not proof of sandboxed execution. Linux ARM64 CrossHair wheels are absent at that version; the Z3 Linux ARM64 wheel has a manylinux_2_38 baseline. Recheck all versions after prerequisite releases.
Planning-only delivery
The initial PR records requirements, dependencies, risk/verification scenarios, and future tasks. No production code, tests, runtime/schema artifacts, versions, signatures, registry changes, or platform-support claims ship. This issue stays open after the planning PR merges.
Planning-only PR #461 targets dev and contains the OpenSpec proposal. It references this issue without closing it. Implementation remains pending; keep this issue open and Todo after the planning merge.
Scope rescope — 2026-09-20
Remove the prerequisite on optional checkpoint/conformance #434. Preserve layout compatibility and core C15 prerequisites, native platform acceptance tests, and signed artifacts. Ordinary native review must not require preflight, a seal, or historical RED proof.
Owner: nold-ai/specfact-cli#740; paired product contract: #481. This section supersedes conflicting default-workflow and dependency statements below; other acceptance criteria remain in force.
Why
SpecFact is a local-first CLI for developers and agentic AI. Code Review must execute directly on macOS, Linux, and Windows; a Linux-only validation runtime forces local users into Docker or emulation even where analyzers already have native builds.
C14 currently hardcodes Linux x86-64 environments, Bubblewrap ELF descriptors, /proc observations, and Linux runtime paths. Changing architecture detection alone is insufficient.
Required outcome
Dependencies and scheduling
Parent feature: #163 (under epic #162). Type: User Story. Assignee: djm81. Project: SpecFact CLI. Status: Todo. Milestone: none.
Direct native blocked-by relationships (read back 2026-09-20):
Core C14 #680 and modules C15 #417 -> core #679 retain their actual compatible release, policy/profile and exception prerequisites. Optional preflight #431/#432/#434 and harness adapters #433 do not block native implementation or release. Core #680's current native blockers are shipped/closed modules #459 and #466; no #431 edge remains.
Do not begin native runtime implementation until the released prerequisite and C15 identities are available. Reassess the proposal using that exact baseline, validate/refine and approve the design, then use relevant native tests and current-run results. Preflight, checkpoints, conformance seals and historical RED proof are optional assurance capabilities, not prerequisites for this workflow.
Implementation planning and acceptance
Feasibility evidence and limitations
Checked 2026-09-06: the pinned Semgrep 1.144.0, CrossHair 0.0.109, Z3 5.1.0.0, and Node 24.16.0 packages provide native macOS ARM64 and Windows x64 wheels. This is packaging evidence, not proof of sandboxed execution. Linux ARM64 CrossHair wheels are absent at that version; the Z3 Linux ARM64 wheel has a manylinux_2_38 baseline. Recheck all versions after prerequisite releases.
Planning-only delivery
The initial PR records requirements, dependencies, risk/verification scenarios, and future tasks. No production code, tests, runtime/schema artifacts, versions, signatures, registry changes, or platform-support claims ship. This issue stays open after the planning PR merges.
OpenSpec Change Proposal: code-review-native-platform-execution
OpenSpec proposal (available after the planning PR merges).
Planning delivery
Planning-only PR #461 targets dev and contains the OpenSpec proposal. It references this issue without closing it. Implementation remains pending; keep this issue open and Todo after the planning merge.