Skip to content

Update: pin Trust 1.2.0 and SpecSync 6.0.0 - #24

Merged
corvid-agent merged 2 commits into
mainfrom
leif/pin-trust-1-2-0-specsync-6-0-0
Sep 10, 2026
Merged

corvid-agent merged 2 commits into
mainfrom
leif/pin-trust-1-2-0-specsync-6-0-0

Conversation

@0xLeif

@0xLeif 0xLeif commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

Summary

Class: pin-only. Moves the Trust gate to the stable 1.2.0 release so this repo runs SpecSync 6.0.0 as its contract toolchain.

Pin Old New
Trust action CorvidLabs/trust@9d32b5786d2e9e4d39fc581c0091c721ee3d4226 # v1.0.0 CorvidLabs/trust@fcc889f54d8b4892a81af463c5a0250e2be66fc5 (v1.2.0)
SpecSync uses: CorvidLabs/spec-sync@59bbfa766c6cce01ab815ab47db195b0629cc014 # v5.0.1, version: "5.0.1" CorvidLabs/spec-sync@3c2ed497... (v6.0.0) with version: "6.0.0"

Trust 1.2.0 defaults specsync-version to 6.0.0, and its nested SpecSync action is already pinned to the v6.0.0 tag object, so consumers do not re-pin that nested SHA.

SpecSync: this repo invokes SpecSync directly as well as through Trust, so both the action ref and its version: input are pinned to 6.0.0. No floating @v6 tag is used.

SDD: not required. Trust's contract stage runs specsync check, and this diff is pins only.

Augur: unchanged. Attest: unchanged, left soft or skipped exactly as configured.

Test Plan

Run against the committed tree with the local specsync 6.0.0 binary:

  • specsync --version reports specsync 6.0.0
  • Trust contract gate (specsync check with this repo's require_coverage) exit 0
  • YAML parse of every workflow file exit 0
  • fledge lanes run trust exit 1
  • Hosted Trust gate on this PR (not run locally)

Changed: 1 workflow file(s), 3 line(s). Leftover drift: none in tracked files outside .specsync/changes/** and .specsync/archive/** history.

Do not merge until reviewed.

🤖 Generated with Claude Code

https://claude.ai/code/session_01JNdwGkbfU1o5jk6LiPhcF2

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JNdwGkbfU1o5jk6LiPhcF2
@0xLeif
0xLeif requested a review from corvid-agent September 10, 2026 04:11

@corvid-agent corvid-agent left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

REQUEST_CHANGES exact tip 6683e5d3989d — pin PR but CI not green: trust=FAILURE. Fix and push; tip move retires this review.

CoS mention-triage 2026-09-09 22:13 MDT.

SpecSync 6.0.0 stopped reporting success for checks that did not run, so a
`status: draft` spec that documents a Public API now warns, and the gate's
strict setting turns those five warnings into errors. Activating those specs
exposed a second gap: the type tables used a non-canonical `Structs & Enums`
heading, so every exported type read as undocumented. Rename that heading to
`Exported Types`, split the grouped re-export rows in the package spec, and
list the Swift loader's public members so the documented surface is compared
against source. No gate, pin, or threshold changed.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JNdwGkbfU1o5jk6LiPhcF2
@0xLeif

0xLeif commented Sep 10, 2026

Copy link
Copy Markdown
Contributor Author

CI is green (trust run 34444057873).

Cause: SpecSync 6.0.0 stopped reporting success for validation it did not perform. All ten module specs are status: draft, which skips section and export validation, so the five specs that document a real Public API now emit a warning, and the workflow gate runs SpecSync with strict: "true" (warnings as errors). That is why the pin flipped a passing gate red: 10 passed, 5 warnings, 0 failed, exit 1.

Activating those specs exposed a second, older gap: the type tables used a non-canonical ### Structs & Enums heading, so SpecSync never matched any exported type against source. Those exports had been silently unvalidated the whole time.

Fix (specs only, 5 files): set status: active on loader-swift, package, runtime, threemd, and validation; rename their type table heading to the canonical ### Exported Types; split the grouped re-export rows in the package spec into one row per export; and list the Swift loader public members that were never documented individually. SpecSync now reports 10 passed, 0 warnings, 0 failed at 100% file and LOC coverage, and the Trust gate ran to completion for the first time on this branch.

No pin, gate, threshold, or configuration was changed: strict: "true", require-coverage: "100", .trust.toml, .augur.toml, and .attest.json are untouched, and no test or lint check was skipped or softened.

@corvid-agent corvid-agent left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

APPROVE exact tip 3baa1c8 — Trust SUCCESS; recovering prior CR from red tip. Squash.

@corvid-agent
corvid-agent merged commit b42c8ac into main Sep 10, 2026
5 checks passed
@corvid-agent
corvid-agent deleted the leif/pin-trust-1-2-0-specsync-6-0-0 branch September 10, 2026 07:06
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.

2 participants