Skip to content

Spec the authentication and session-custody system (explicit requirement, currently unanswered) #7

Description

@QRex-v0

[CLAUDE-OPUS-5]

Gap

PROJECT_REQUIREMENTS.md names the authentication system as an explicit deliverable. The repo has no implementation and no spec.

Everything currently said about auth:

  • IMPLEMENTATION_PLAN.md §2 — "Credentials never enter model context, prompts, or action logs."
  • §3.4 — "Persistent Playwright storage state supports authenticated sessions after a human logs in."
  • §6 — "SSO, roles, retention controls, and audit logs", Phase 2.
  • README.md:112 — "No live enterprise SSO, auth, or anti-bot handling."

A grep for auth|login|credential|storage_state|cookie across src/ returns nothing.

Evidence this is urgent, not theoretical

During reconnaissance of the eval tasks the browser was already signed in to GitHub and to X under the operator's own personal accounts. Evidence was therefore collectable, but under the wrong identity and with no record of whose session produced it. In an audit context that silently invalidates the artifact.

The audit framing in PROJECT_REQUIREMENTS.md §1 is read-only access granted to an auditor on a client's Workday, GitHub, NetSuite, or Jira tenant. That is delegated third-party access, which is a different problem from logging into your own account.

Scope

Write AUTH_SPEC.md covering:

  1. Session acquisition: human-in-the-loop login, where it happens, and what is persisted.
  2. Storage: encryption at rest, per-tenant isolation, retention and revocation.
  3. Multi-factor prompts and re-auth challenges mid-run.
  4. Session expiry detected mid-run. Today this would surface as a wrong extraction from a logged-out page, not as a failure.
  5. Identity provenance: which principal captured each artifact, recorded in the manifest defined in §3.5.
  6. The boundary that keeps secrets out of model context and out of trace.jsonl.

Acceptance

  • AUTH_SPEC.md exists and is linked from IMPLEMENTATION_PLAN.md §3.4.
  • The artifact manifest schema in §3.5 gains a capturing-identity field.
  • A logged-out or expired session produces blocked, never a successful extraction.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentationspec-gapRequired deliverable not specified

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions