VSO announcements
VCP / VSO · ANNOUNCEMENT ·

VSO publishes research updates on incident evidence, controlled uploads and execution authorization

VSO has added VAP PRs #30, #31 and #32 and Evidect PRs #20 and #21 to its public information. Assessment of recorded evidence, uploads through a controlled route and authorization of a synthetic operation remain distinct research subjects. Results below are first-party CI records for the identified revisions.

Research status — unadopted; independent reproduction not established

The proposals and experimental extensions remain unadopted. Independent third-party reproduction has not been established. Merging or passing first-party CI does not establish formal adoption, full VCP/VAP conformance, production safety, certification or an independent external anchor. CI across multiple operating systems or Python versions is still first-party verification.

1. VAP PR #30: an incident-evidence binding proposal

This informative proposal addresses transfer authorization and observed egress, scoped deletion evidence, and bindings between AI-use disclosures and publication. Operational, verification and publication policies are separated. It defines 23 synthetic acceptance scenarios; at the proposal stage, these are not 23 successful executions. A formal proposal identifier and target release remain undecided. The normative VAP v1.2.0 Draft 3 text is unchanged.

Change and target revision: vap-spec PR #30 · ff759c9

2. VAP PR #31: an offline evidence assessor

The assessor performs actual Ed25519 signature checks and RFC 8785 canonicalization, binding evidence to separately selected evaluator trust, a target, workflow and cutoff. Authenticity, applicability, coverage, permission and outcome remain distinct. 20 test methods passed and expected field-level outcomes matched in 23/23 scenarios in first-party Python 3.12 / 3.14 CI. Even positive publication evidence yields REVIEW, not automatic permission to publish. The assessor itself does not collect actual outgoing bytes or connect to production systems.

Change and target revision: vap-spec PR #31 · 590df2e · First-party CI run

3. VAP PR #32: a local measured-byte upload pilot

A single pinned loopback HTTP route captures immutable outgoing bytes, persists an intent in SQLite, rechecks authorization, and uses a separate receiver process to measure bytes and sign a scoped pilot receipt. 39 test methods passed with zero skips; 17/17 upload scenarios and 17/17 exported-evidence rechecks matched expectations in post-merge first-party Python 3.12 / 3.14 CI. Attempt, body send, receiver observation, receipt verification and result persistence are recorded separately. UL-14 deliberately demonstrates a successful direct-call bypass outside the gate. Matching that expected result is not successful bypass prevention. Process separation is not OS privilege isolation; one host administrator controls all roles. SQLite records are not an independent anchor or tamper-resistant storage. The existing assessor retains remote_outcome: UNKNOWN, separately from the pilot receipt.

Change and target revision: vap-spec PR #32 · d1f1441 · First-party CI run

4. Evidect PR #20: a synthetic execution-authorization gate

Actual Ed25519 checks bind a request and separate approval to arguments, a target, a nonce and validity, with a current-policy recheck before execution. The only target is a harmless in-memory marker operation. 37 tests passed; 18 scenarios were exercised: 16 denials, one ordinary allowed call and one partial failure that preserves observed or possible effects and denies retry. Ubuntu / macOS first-party CI records these results. Signed requests are distinct from output reports: reports and observer receipts are unsigned. A same-process observer is not an independent witness.

Change and target revision: evidect-site PR #20 · 3b121d0 · First-party CI run

5. Evidect PR #21: optional SQLite replay reservations

An optional SQLite adapter reserves the nonce before the toy tool is invoked; the default in-memory behavior is retained. Storage failures do not trigger automatic fallback or retry. 33 new tests plus the retained 37 make 70 gate-specific tests, not a repository-wide total. Four real-process scenarios check replay rejection after restart, exactly one call in a four-process race, nonce consumption after partial failure, and retry denial after a kill between committed intent and execution. Ubuntu / macOS first-party CI passed. This depends on the same protected local database; it does not guarantee distributed operation, resistance to database rollback or a hostile administrator, or power-loss behavior. Production controls and regulatory compliance remain NOT_ASSESSED; an observed baseline remains BASELINE_REQUIRED.

Change and target revision: evidect-site PR #21 · eda471c · First-party CI run

Keep dated records and counts separate

These counts cover different subjects and are not added together. The 20 methods and 23 scenarios, and the 39 methods and 17 upload cases, are different measures. The 29 October SDK / Explorer / Evidect article, the 28 October SDK record (306 Python / 140 TypeScript tests), the 27 October Explorer record (159 API / 26 GUI tests), VAP-LAP notices and fixed research kits remain dated records. This website update adds explanatory material only; current normative requirements, schemas, existing implementations, signed data, fixed distributions and K3 are unchanged.

Read the 29 October record