Skip to content

chore: take libid-profiles 0.13, where github reveals its token request whole - #25

Draft
SupremaLex wants to merge 1 commit into
mainfrom
chore/github-whole-range-fixtures
Draft

SupremaLex wants to merge 1 commit into
mainfrom
chore/github-whole-range-fixtures

Conversation

@SupremaLex

@SupremaLex SupremaLex commented Sep 17, 2026

Copy link
Copy Markdown
Member

Draft until libid-contracts publishes libid-profiles 0.13.0, which is where GitHub's token request becomes one revealed range with no committed suffix — the shape X already has. The profile table is generated there and reaches this crate through crates.io, so this branch lands in two steps.

In this branch now

  • capture_ceremony defaults to one redirect URI for every platform, http://127.0.0.1:8722/auth/callback, the path the bridge serves, and listens on the matching address. One app registration per platform is enough to capture from, and the two values move together; --redirect-uri / --listen still override the pair. Independent of the profile change and green against 0.10.

Once 0.13.0 is on crates.io

  • Pin libid-profiles and libid-identity to 0.13 (0.11/0.12 are content-identical to 0.10, so this is a pure pin bump like chore: take libid-profiles and libid-identity 0.10 #22).
  • Layout::token_request(sent) -> Layout: no profile argument and infallible, since TokenSession has no secret_field after refactor(ceremony): the token request commits nothing, as a rule libID-contracts#45; LayoutError::MissingCredential and the committing-path tests go, nine call sites follow. the_github_exchange_is_revealed_whole, attest.rs and ceremony_end_to_end.rs assert zero sent commitments and the credential present in the revealed bytes. Already written, verified green against that branch's crate, and held for the pin commit.
  • Closing check, no commit: cargo run -p libid-tlsn --example ceremony_fixtures against the published crate must reproduce byte for byte the github-ceremony-session.json the contracts PR carries.

Order across the repos

  1. feat(ceremony)!: github reveals its token request whole libID-contracts#44 merges — the flip, prose, tests, both regenerated fixtures.
  2. refactor(ceremony): the token request commits nothing, as a rule libID-contracts#45 merges — secret_field leaves TokenSession.
  3. libid-contracts release/v0.13.0 merges and the release publishes the crate.
  4. This PR takes the pin and leaves draft.

`capture_ceremony` defaults its redirect URI to
`http://127.0.0.1:8722/auth/callback`, the path the bridge serves, and
listens on the matching address. One app registration per platform is then
enough to capture from, and the two values move together.

A path naming its platform bought nothing: the profile fixes what the
redirect URI must equal, not what it must be, and no ceremony reads it.
`--redirect-uri` and `--listen` still override the pair for an app
registered elsewhere.

Assisted-by: Claude Opus 5
Signed-off-by: SupremaLex <georglutsenko@gmail.com>
xgreenx added a commit that referenced this pull request Sep 17, 2026
`libid-tlsn` exports `AbortOnDrop`, the guard every session driver
needs (#26); the attested-data record moves to
`libid_transcript::attestation`, beside the wire that carries it, and
`libid-tlsn` no longer depends on `libid-ceremony`, which re-exports the
old paths (#27); repository names are canonical (#25).

Assisted-by: Claude Fable 5.1
Signed-off-by: xgreenx <xgreenx9999@gmail.com>
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