Specify grant-bound Remmina console and mirror
docs: add native trial resource requirements
docs: specify Epic 250 native qualification gates
docs: specify active capture consumer bridge
docs: specify Windows synthetic UI evaluation
docs: specify deterministic live-run authorization policy
docs: specify offline bounded review planning
Specify minimized phase-level model refusal observations
Specify approved CPU-only model execution policy
Specify Ollama inference safeguards and split baseline obligations
Specify source-derived configuration and precise implementation traceability
REQ-107, TEST-109: lane guest access channel; cite B2 (PR #213)
New REQ-107 (reach a lane guest only through its run's key-bound
channel) and TEST-109, linked from the SRS, RTM, planned test cases and
SYS-REQ-027. REQ-091, REQ-093 and REQ-106 cite the workload placement
code. Status stays Planned: offline tests pass, no live proof yet.
REQ-104 and TEST-106 remain reserved for #181.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Add REQ-106/TEST-108: lane build phase runs with network link off
Specify the lane network split chosen as N2 on
VITechnologies/projectbuddy#182: fetch steps run with the link on and no
secrets; build steps run with secrets and the link off until power-off.
Outputs return on a per-run disk read after poweroff (completion channel
C1), because any guest process can write a VirtualBox guest property.
Update REQ-090 (per-phase argument vectors and timeouts; CodeRef now cites
scripts/lane/declaration.py), REQ-092 (per-phase evidence), REQ-093
(build-phase-only secrets), SYS-REQ-027 allocation, and SRS/RTM/test lists.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Add REQ-105 and TEST-107: refuse to package an appliance that carries an Actions runner (#195)
The appliance packager scans the running source VM for an Actions
runner unit or configuration, powers it off itself, and records the
scan in a projectbuddy/ubuntu-vagrant-box@2 receipt
(VITechnologies/projectbuddy#198). Allocate REQ-105 to SYS-REQ-008 and
note the scan in the Component View.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Add lane lifecycle requirements REQ-101 to REQ-103 (#166, #165)
Adds three planned requirements under SYS-REQ-027, approved by the
operator on 2026-11-09:
- REQ-101 / TEST-103: each lane run uses a disposable instance of a
base image whose digest matches its receipt (#166 Draft A).
- REQ-102 / TEST-104: lane teardown is bound to the verified VM UUID
and an allow-listed state, and reports removal only after observing
absence (#166 Draft B).
- REQ-103 / TEST-105: a lane guest has no GitHub Actions runner
configured or registered, checked at packaging and clone time
(#165 Draft C).
IDs follow approval order. Updates the SRS, RTM, planned test-case
hubs, and SYS-REQ-027 traceability.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Add human-approved automation request requirements (#177)
SYS-REQ-028, REQ-094 to REQ-100, and planned tests TEST-096 to TEST-102
specify the protected-environment approval gate. Adds glossary terms and
the ADR-0007 index entry (proposed in #178).
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Add lane workload requirements and disclose REQ-001's third exception
Stage 0 of VITechnologies/projectbuddy#164 (operator-approved A1-A4,
allocation option (a), three glossary entries):
- REQ-090 to REQ-093 (workload declaration, toolchain contract and probe,
lane evidence record, secret scoping), all Planned.
- TEST-092 to TEST-095 in the planned specification and system contract
test cases.
- SYS-REQ-027 "Consumer-declared lane workloads", allocated to
REQ-090 to REQ-093.
- Glossary: Lane workload, Toolchain contract, Evidence record.
VITechnologies/projectbuddy#167 item 8, option (a):
- REQ-001 lists all three disclosed exceptions, adding the Ubuntu
appliance scripts that enforce one consumer's package identity.
- Component View discloses them on the appliance lifecycle row.
- REQ-001's Verification records a classified re-sweep at develop
5881465; it found violations the #68 sweep missed, so REQ-001 is now
Not met and the residuals are tracked in
VITechnologies/projectbuddy#176.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Home, RTM: point to the scan's assembled table view
Signed-in GitHub users can review the rebuilt Requirements Traceability
Matrix, with rows linked back to these pages, in each standards scan run
summary (VITechnologies/projectbuddy#174). The RTM hub no longer claims to
render the table itself.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Split governed specification hubs into linked pages
Restructure the four governed hubs (System Requirements Specification,
Software Requirements Specification, Requirements Traceability Matrix,
Architecture Packet) into index-only hubs plus one page per SYS-REQ,
REQ, and TEST ID and one page per architecture section, so the wiki
reads as a linked graph in Obsidian and on GitHub.
scripts/Assemble-WikiSpec.py (VITechnologies/projectbuddy#171) rebuilds
all four hubs byte-identically from these pages for the standards scan.
Home gains a Structure section describing the layout and link rules.
Refs VITechnologies/projectbuddy#169
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Add governed system requirements specification
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Specify Docker-bracketed release conveyor
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Add REQ-039: release gate requires VM-creation + runner-registration proof
Per ADR-0006 (revised after 3-model consensus review). Planned until
#110 (Windows register-runner live-proof) completes and the gate's
actual release.yml implementation lands.
Promote REQ-038 to Verified (live): Ubuntu register-runner real workflow_dispatch proof
Real workflow_dispatch proof against a genuine, freshly-built disposable
VM (register-runner-proof-ubuntu-20261107, upstream run 42403330593) --
the registered runner independently confirmed online via gh api with
exactly the expected labels, not merely the phase's own exit code.
Three real bugs found and fixed during this live-dispatch process:
(1) missing SSH_ASKPASS setup (every ssh/scp call failed with Permission
denied), (2) gh api --jq doesn't support jq's own --arg flag, (3) a
re-registration ordering bug (config.sh remove requires the systemd
service to be stopped/uninstalled first). Each merged as its own PR
(#107, #108, #109).
Disposable test runner deregistered and the temporary
RUNNER_REGISTRATION_PAT secret removed immediately after.
Add REQ-038: Ubuntu register-runner phase parity with Windows
Implementation merged via VITechnologies/projectbuddy#106 (issue #105).
Marked 'implementation complete; live verification pending' until a real
workflow_dispatch produces a runner independently confirmed online via
gh api (dispatch in progress: a fresh disposable VM build, upstream run
42400820191, is running specifically for this purpose).
- SRS REQ-038 added
- RTM row added
- Architecture Packet Component View row added (install-actions-runner.sh,
complete-runner-registration.sh)
Promote REQ-037 to Active: Decode-LbaCapture.py implemented and verified
- scripts/Decode-LbaCapture.py implemented per #102, 23 synthetic-fixture
pytest tests (99% line coverage), real verification run against the
genuine run-1794072448721 capture (reproduces the 31.724 MB/s peak-write
finding at frame 432, reports zero false anomalies on this healthy
capture per ADR-0005's Addendum correction)
- Architecture Packet: Container View row for 'Agent diagnostics' no
longer 'planned'; added matching Component View row
- RTM REQ-037 row updated to Verified (live)
Add ADR-0005: agentic decoding of labview-benchmark-actor capture output
- REQ-037 (Planned): dedicated read-only decoding tool for
labview-benchmark-actor capture output, agent/operator diagnostic use
only, schema-pinned to labview-benchmark-actor/launch-capture@1
- RTM row for REQ-037, tracked via #102
- Architecture Packet: ADR-0005 index entry + planned Container View row
for 'Agent diagnostics'
Grounded in this session's real capture analysis (run-1794072448721):
found the MCP viewer tools show fixed demo data regardless of new
captures, no upstream 'latest capture' pointer exists, resources.disk is
a flat array (richer per-disk/per-frame data lives in the top-level
frames[] array instead), and all 631 frames had a null dhashHex.
Correct REQ-018/REQ-032: no separate LabVIEW activation exists on Ubuntu/Linux
Real workflow_dispatch proof (#62, run 42394542555) found this engine's
Ubuntu-LabVIEW appliance has no separate human-interactive LabVIEW
activation step at all -- NI's Linux LabVIEW distribution's authenticated
package-repository access is itself the licensing gate. VIPM activation
(automated via vipm activate --direct-vipm-io) is the only activation
the complete-activation phase performs or needs.
REQ-018's and REQ-032's prior verification relied solely on
complete-activation.sh's own usage text claiming a prior manual LabVIEW
activation precondition -- an unverified assumption carried over from
the Windows family, never actually true for Linux, now corrected with
real receipt evidence (perpetual, valid VIPM activation; a passing
LabVIEW known-answer probe) rather than code review alone.
Refs VITechnologies/projectbuddy#62
Correct REQ-033/034/035/036 per round-2 verification review of ADR-0003
Second 3-model review (Claude Opus, GPT-6-astra, Gemini-4-argon) of the
revised ADR-0003 found, despite genuine fixes, several residual defects:
a lingering 'already proven upstream' contradiction, an over-broad waiver
clause, REQ-035/036 still not self-contained, and REQ-033's 'pinned-commit'
ambiguity between this engine's release commit and the external suite's
commit. Fixes all of it: REQ-035 restated as an investigative
determine-whether requirement (outcome (a) or (b), neither release-gating
by itself), REQ-036 fully self-contained (no 'same as REQ-034'
cross-reference), waiver narrowed to the single named upstream test only,
and REQ-033 explicitly disambiguates the two distinct commit identities.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Correct SRS/Architecture Packet per ADR-0003's pre-implementation consensus review
Rewrites REQ-033/034/035, adds REQ-036 (Linux feasibility spike split from
execution), to fix: embedded implementation detail in requirement text,
REQ-035's non-self-contained dependency on REQ-034, the premature
'verified-working' claim, and the undecided runner-class gap -- all
independently flagged by 3 models (Claude Opus, GPT-6-astra,
Gemini-4-argon) reviewing ADR-0002 before any implementation began.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Add REQ-033/034/035: ephemeral-container LUnit release gate (planned, ADR-0002)
Spec-first per this wiki's own Constraints section: requirements added
before the corresponding code change (tracked in #87) is merged. Also
adds a planned Container View entry for the new capability.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>