Skip to content

extract --json: fresh-run stdout omits the extraction key (cached re-runs include it) #189

Description

@yzld2002

Symptom

On ade 1.0.1, a fresh ade extract <parse_job_id> --schema s.json --json run prints a payload with status, credits, store_dir, and fields as a bare count — no extraction key. The schema-shaped result lands only on disk at <store_dir>/extract.json.

Re-running the same command once the item is cached DOES inline extraction on stdout (verified: cached re-run payload keys include extraction, evidence, empty_fields, ungroundable, …). So the payload shape differs between the fresh-completion path and the cached path.

Why it matters

The skill/agent contract says the whole result is on stdout — "the payload's extraction key is the schema-shaped result itself — read it there, not off disk" — and downstream tooling (e.g. the build-schema skill's adapt.py) parses exactly that. Fresh runs violating the documented shape break any pipeline built on the contract, and the failure surfaces one step later as a confusing "payload has no 'extraction' key" in the consumer.

Reported from the field by a build-schema skill user (ExtractBench docs) and reproduced while triaging their report.

Expected

Fresh-run and cached-run --json payloads have the same shape, with extraction inline in both — or, if the summary shape is intentional for fresh runs, the divergence is documented in ade help extract --json and a flag opts into the full payload.

🤖 Generated with Claude Code

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions