frc-scheduler-server: first-party-rescan

What happened, why, and what came out of it. Written by the harness from its own records; a person decides what to do with it. The same story opens the run's folder as README.md; the example's write-up is on its example page.

repository frc-scheduler-serverlanguage pythonmode rescanhead 2ad04243861bmodel qwen38-27bstarted 2026-09-15T20:02:08+00:00harness 0.1.0run 50ec3b2446fe
frc-scheduler-server. This is the application's own code, frc-scheduler-server, at commit 2ad04243861b. No known vulnerability applies to it, so there is nothing to prove; the tests below characterize what the code does today. Accept the 4 candidate tests if they look right, act on the findings below.

Who, what, why, where, when

WhoThe AI Test Harness 0.1.0 did the work without a person in the loop. A person decides the result; nothing in this run has been merged.
WhatA scheduled scan of frc-scheduler-server at 2ad04243861b, no change under review. 7 of 64 packages carry known vulnerabilities. Tests for the application's own code at 2ad04243861b.
Whyfrc-scheduler-server: the application's own changed code has no tests from anyone else; the harness tests what the change added or changed.
WhereEvery test ran in a sealed sandbox (podman, network none, image docker.io/library/python:3.12-slim); the model was qwen38-27b in fixed mode; the run's own files are in this folder.
WhenStarted 2026-09-15 20:02:08 UTC. The last stage to write was self-verification at 2026-10-13 18:34:44 UTC.

Decisions the harness made

Actions it took

Actions it did not take, by design

How it happened, stage by stage

What each stage read, did and wrote, with the file behind every number.

  1. Self-verificationstage 0

    Read

    the harness's own code and the failure register

    Did

    • 28 register checks, all passed; sandbox probe skipped; model probe skipped.

    Wrote

    selfcheck/selfcheck.json

  2. Intakestage 1

    Read

    the repository at base and head, its dependency manifest

    Did

    • Resolved 63 packages at head and 63 at base with ; looked every version up in OSV: 7 with advisories at head; 0 changed; work list of 64 rows.

    Wrote

    intake/worklist.json · intake/graph.new.json · intake/sbom.new.cdx.json · intake/vulns.json

  3. Analysisstage 2

    Read

    the work list; package source, advisories, the application's call sites

    Did

    • 1 package(s) analyzed: frc-scheduler-server score 35, budget full, 0 advisories, 0 breaking changes.

    Wrote

    analyze/frc-scheduler-server/facts.json

  4. Generationstage 3

    Read

    the fact bundle per package; the model; the sealed sandbox for baseline runs

    Did

    • Model qwen38-27b, mode fixed.
    • frc-scheduler-server: 4 tests kept in 1 file(s), 6 model calls; discarded: negative: no parseable test file after repairs.

    Wrote

    generate/frc-scheduler-server/manifest.json · tests/ · model-calls/

  5. Validation executionstage 4

    Read

    the candidate tests; the environments at head, base or the fixed candidate

    Did

    • frc-scheduler-server: sandbox runs new, new-rerun on podman (image sha256:d6b046b27fe57002af7); 4 tests, 4 pass on head, 0 flaky, 0 fix-pinning confirmed; 350 lines of the package covered.
    • Mutation: 211 sites on executed lines, 25 sampled, 1 killed, score 0.04.
    • Relevance: 4 generated and 47 application tests examined; 0 obsolete, 4 redundant proposed, horizon this change.

    Wrote

    execute/frc-scheduler-server/results.json · new/ · execute/frc-scheduler-server/mutation/mutation.json · execute/frc-scheduler-server/relevance.json

  6. Triagestage 5

    Read

    every verdict and finding from stage 4

    Did

    • frc-scheduler-server: 4 findings, 4 tests to accept, 0 to discard or regenerate, 4 escalated to a person (threshold 0.7).

    Wrote

    triage/frc-scheduler-server/triage.json

  7. Packetstage 6

    Read

    triage, the tests, the advisories

    Did

    • frc-scheduler-server: 4 accepted tests in the patch; VEX drafts {}.

    Wrote

    packet/frc-scheduler-server/packet.md · packet/frc-scheduler-server/tests.patch · packet/frc-scheduler-server/vex.openvex.json

  8. Attestationstage attest

    Read

    the manifest, the tests, the results; UDLM's chain code

    Did

    • frc-scheduler-server: 4 provenance records; statement PASSED, key sha256:4f2defc2e375, verified at build; UDLM records sealed, schema problems 0.

    Wrote

    attest/frc-scheduler-server/statement.dsse.json · attest/frc-scheduler-server/MANIFEST.json · udlm/

  9. Assessmentstage assess

    Read

    every record the run wrote, against the blueprint's goals

    Did

    • 9 goals met, 1 not met, 2 not applicable, 1 measured without a target.

    Wrote

    assess/assess.md

  10. Test pull requeststage propose

    Read

    the packet and the records

    Did

    • did not run in this run.

    Wrote

    nothing

  11. Feedbackstage 7

    Read

    the pull request as a person decided it

    Did

    • did not run in this run.

    Wrote

    nothing

frc-scheduler-server 2ad04243861b

In plain terms. This is the application's own code, frc-scheduler-server, at commit 2ad04243861b. No known vulnerability applies to it, so there is nothing to prove; the tests below characterize what the code does today. Accept the 4 candidate tests if they look right, act on the findings below.

Tests, one row each

TestCategoryOldNewVerdictAction
test_canonical_filename_encodes_shapeunitnapasscandidate: passes on headaccept as candidate
test_canonical_path_uses_base_dirunitnapasscandidate: passes on headaccept as candidate
test_load_canonical_missing_returns_noneunitnapasscandidate: passes on headaccept as candidate
test_parse_csv_reads_rowsunitnapasscandidate: passes on headaccept as candidate

Findings

ClassConfidenceFindingRoute
redundant0.5frc-scheduler-server: test_canonical_filename_encodes_shape killed none of 25 sampled mutants in this runescalate: below confidence threshold
redundant0.5frc-scheduler-server: test_canonical_path_uses_base_dir killed none of 25 sampled mutants in this runescalate: below confidence threshold
redundant0.5frc-scheduler-server: test_load_canonical_missing_returns_none killed none of 25 sampled mutants in this runescalate: below confidence threshold
redundant0.5frc-scheduler-server: test_parse_csv_reads_rows killed none of 25 sampled mutants in this runescalate: below confidence threshold

Mutation: which test killed what

211 sites, 25 sampled, 1 killed, score 0.04.

TestMutants killedKilled only by this test
tests.test_frc_scheduler_server_unit11

Retirement proposals

TestReasonEvidence
test_canonical_filename_encodes_shaperedundant-no-killstest_canonical_filename_encodes_shape killed none of 25 sampled mutants in this run
test_canonical_path_uses_base_dirredundant-no-killstest_canonical_path_uses_base_dir killed none of 25 sampled mutants in this run
test_load_canonical_missing_returns_noneredundant-no-killstest_load_canonical_missing_returns_none killed none of 25 sampled mutants in this run
test_parse_csv_reads_rowsredundant-no-killstest_parse_csv_reads_rows killed none of 25 sampled mutants in this run

Discarded during generation

The records, in plain terms

7 UDLM records, each a fact from this run in the estate's own language. Intent is what the harness proposed, Requested is what a person was asked to decide, Realized is what landed and who made it so. All are sealed with a content hash.

RecordStateWhat it saysWritten
JobRequestedThe harness was asked to run on frc-scheduler-server from None to 2ad04243861b in rescan mode.2026-09-15 20:02:08 UTC
JobRealizedThe run finished; its outputs are the records this statement seals.2026-09-15 20:08:18 UTC
SoftwarePackageDiscoveredfrc-scheduler-server 2ad04243861b (generic) is the version this change installs.2026-09-15 20:08:18 UTC
TestEvidenceIntenttest_canonical_filename_encodes_shape is a unit test in tests/test_frc_scheduler_server_unit.py; it passed on head in the sealed sandbox.2026-09-15 20:08:18 UTC
TestEvidenceIntenttest_canonical_path_uses_base_dir is a unit test in tests/test_frc_scheduler_server_unit.py; it passed on head in the sealed sandbox.2026-09-15 20:08:18 UTC
TestEvidenceIntenttest_load_canonical_missing_returns_none is a unit test in tests/test_frc_scheduler_server_unit.py; it passed on head in the sealed sandbox.2026-09-15 20:08:18 UTC
TestEvidenceIntenttest_parse_csv_reads_rows is a unit test in tests/test_frc_scheduler_server_unit.py; it passed on head in the sealed sandbox.2026-09-15 20:08:18 UTC

The run against the blueprint's goals

IdGoalMeasuredVerdictFrom
G1Nothing merges without a personharness produced patches and drafts only; no git push, no VEX publishedmetpacket.md
G2Every kept test was compiled and run in the sandbox before a reviewer sees it4 tests ran on head, again for flakes, and on base; 0 flakymetresults.json
G3A test that passes on both versions is not presented as CVE evidence0 fix-pinning confirmed; pass-on-both CVE tests are classified test-bug and excluded from VEX 'fixed'mettriage.json
G4Stage 0 passed before evidence was produced28 of 28 register checks; sandbox probe skipped; model probe skippedmetselfcheck.json
G5Generated tests ran with no network, no secrets, read-only root, disposable container{'capabilities': 'all dropped', 'disposable': True, 'limits': {'cpus': '2', 'memory': '2g', 'pids': 512, 'timeout_s': 90metsandbox.json
G6Every accepted test carries a provenance record and a signed attestation4 records; envelopes verified locally: [True]; signer is a development keymet (development signer)statement.dsse.json
G7Every advisory on the work item has a CVE-targeted test attempt and a draft VEX statementno advisory on the work item (the application's own code, or packages with no known vulnerability)not applicablevex.openvex.json
G8The run surfaces a finding the PR diff does not showfrc-scheduler-server: ['frc-scheduler-server: test_canonical_filename_encodes_shape killed none of 25 sa', 'frc-scheduler-server: test_canonical_path_uses_base_dir killed none of 25 sample', 'frcmettriage.json
G9Packet within 2 hours of trigger for depth 0 and 1intake 2026-09-15T20:02:45+00:00 -> packet 2026-09-15T20:29:42+00:00see measurementrun.json summary.json
G10Every number in the packet points at a file in the work directorypacket sections cite artifact paths; attestation subjects are the patch and the manifest digestsmetstatement.json
G11Test strength measured by mutation and coverage deltafrc-scheduler-server: score 0.04 on 25 sampled mutants; coverage delta: no baseline overlay suite yetnot met (target 0.6 on sampled mutants)mutation.json
G12The pipeline's own gaps are stated, never inherited silentlyanalysis predates the pipeline facts; rerun analysisnot applicable
G13Every behaviour the change reaches ends in exactly one state, and a gap carries its reason40 behaviour(s) reached: 0 validated, 0 for your environment, 40 stated gap(s) (1 executed-not-checked, 19 no-test-generated, 20 strength-not-sampled); 189 reference(s) set aside with a reasonmetaccounting-summary.json accounting.json

What is in this folder, and who it is for

What is in this folder, and who it is for

Every file exists for a reader or a tool named here. The plain-English files come first; the machine files stay because they are the proof and the replay.

Everyone

  • README.md: The story of this run: who, what, why, where, when, the outcome, the decisions and the actions.
  • triage/accounting-summary.json: The accounting rolled up: how many behaviours were reached, validated, handed to the team, or left as stated gaps, and why.
  • assess/assess.md: The run against the blueprint's thirteen goals, each with the measurement and the file it came from.

Reviewers (the developer or team that owns the change)

Product Security

Supply Chain Security and auditors

The person who ran the harness

Tools (kept for replay and proof; not meant to be read)