Skip to content

Include Harness versions in Built-with attribution - #1136

Merged
JacobStephens2 merged 3 commits into
issue-978from
issue-1030
Oct 23, 2026
Merged

JacobStephens2 merged 3 commits into
issue-978from
issue-1030

Conversation

@JacobStephens2

@JacobStephens2 JacobStephens2 commented Oct 23, 2026 •

Copy link
Copy Markdown
Owner

Summary

- Built with claude · opus · high
+ Built with claude 2.1.11 · opus · high

Reuse #986's detected Harness version for every factory PR and its Run notification. Refresh attribution after Repair or a Base fix, and keep older versionless lines readable.

Closes #1030

Evidence

  • Before: cargo test --test harness_choice the_run_notification_and_pr_name_the_same_detected_harness_version_model_and_effort -- --exact failed because attribution omitted the version.
    After: passes; all six Harnesses, unknown versions, Tickets and the Spec PR are covered by integration tests.
  • Before: the Spec review's exact reproduction and retained cargo test --test session_traces notification_keeps_the_pull_requests_version_after_a_repair_changes_it -- --exact failed: PR 9.8.7, notification 10.0.0.
    After: passes after refreshing the open PR's line. The Base fix version regression and all PR lifecycle tests pass too.
  • Reader compatibility: cargo test --bin thirdshift harness::built_with::tests::reads_versioned_and_legacy_lines -- --exact passes for both formats.
  • Final validation: NEXTEST_TEST_THREADS=8 /usr/bin/time -p scripts/affected-tests issue-978 passed: 2,381 Rust tests passed, 56 skipped, and 43 site checks passed. Nextest execution took 1,277.444s; the entry point took 1,389.22s wall time, including 18.07s of Rust compilation and browser checks.
  • cargo fmt --check and cargo clippy --all-targets -- -D warnings pass. CI is green on b9bd930.

Test seams

  • The whole binary against fake Harnesses, GitHub and Resend: PR attribution and the Run notification use the detected version, including child Runs, Repairs, Base fixes and unknown versions.
  • The Built-with value's text interface: versioned and legacy lines read back as Harness, optional version, Model and Effort.

Review coverage

Standards and Spec reviewed against issue-978. Both axes read all 21 changed files, including the changed generated HTML. No generated-output exclusions or unread changed files.

The agreed Standards dependency finding is addressed by making the detected version an explicit formatter input. The reproduced Spec mismatch is fixed, with its regression test retained.

Unaddressed findings

Standards

  • S2 — possible Speculative Generality, src/harness/built_with.rs:37: retained the reader. #1030 explicitly requires “The reader accepts lines with and without a version, tested both ways” (.thirdshift-issue.md:12,18). There is no production scoring reader on issue-978 yet; this is the requested compatibility interface. The exact reader test above passes for both versions. This is a decision from the supplied Spec, with no unresolved Day shift decision.

Spec

None.

Security

None. Reviewed the attribution diff against injection, access-control and file-handling classes: the version interpolated into the PR body and Run notification comes only from the trusted Harness CLI (--version output and system/init stream metadata) and thirdshift's own version cache beside the command log, and the BuiltWith reader has no production callers. No introduced trust-boundary crossing was confirmed, so no fix was made.

Security review outcome

No unaddressed introduced findings.

Merge Danger

Door: two-way

Blast Radius: attribution

Changes PR/notification text and its reader. Delivery retains its closed, merged and draft PR gates and preserves original Repair failures. No data migration.

Built with codex · gpt-6.1-sol · xhigh

@JacobStephens2
JacobStephens2 merged commit 90d003a into issue-978 Oct 23, 2026
18 checks passed
@JacobStephens2
JacobStephens2 deleted the issue-1030 branch October 23, 2026 08:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant