Skip to content

papi repos / query: scoped-tier (--recipient) for gated repos and fields #13

@friedenberg

Description

@friedenberg

Problem

papi repos and papi query (#12) fetch the anonymous projection only. A subject can gate repositories (visibility:"private") and arbitrary document nodes behind the §5 auth handshake (§2); those are dropped for the anonymous principal, so papi repos/papi query never surface them.

Ask

Add --recipient / --decrypt-cmd to both subcommands (mirroring papi person and papi validate): run the §5 challenge/response handshake and fetch the scoped projection so gated repos/fields project in.

  • Reuse inspect.Handshake(ctx, c, inspect.Options{Recipient, DecryptCmd}) + c.FetchAuthed(ctx, path, sess.ID) — the exact path authedPerson already uses in main.go.
  • repos: fetch /papi/repos authed; query: fetch /papi authed as the query input.

Notes

Deliberately deferred when #12 shipped (anonymous-tier matched the eng clone-papi-repos.bash consumer's need). Additive — the anonymous path is unchanged.

:clown: filed with Clown 0.3.12+e27f901
amarbel-llc/clown@e27f901

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions