Skip to content

Lens skill seam: let fleet create lens jobs and fetch files #1506

Description

@bradflaugher

Counterpart to ElcanoTek/lens#13Create a Lens skill to kick off jobs or get files from fleet.

Fleet orchestrates operational tasks and workflows and currently has no integration into Lens. The Fleet-side skill or runner will need a scoped way to:

  1. Kick off a Lens job (trigger a classification or analysis run via a scoped API key, not an admin key).
  2. Get files out of Lens (fetch classified outputs, reports, or artifact files) so Fleet can ingest results or route them downstream.

Lens-side work

  • Document (or add, if missing) the minimal API surface Fleet should call: trigger classification job, poll/read job status, download output files.
  • Support a scoped runner key for Fleet (e.g., trigger_job / read_artifacts) — do not hand it an admin key.
  • Ensure file and artifact retrieval is fully supported for non-interactive programmatic callers (REST API, not the Lens dashboard).
  • Fail loudly on invalid credentials, Lens service downtime, or missing outputs rather than hanging or timing out silently.

Out of scope here

The Fleet-side workflow logic, task orchestration runner, and trigger definitions live in the Fleet repository. This issue covers only the Lens seam that Fleet depends on.

Acceptance

  • Fleet can trigger a Lens job using a scoped API key.
  • Fleet can download completed output files and artifacts from that Lens run.
  • Error cases (auth failures, missing files, network issues) fail fast with descriptive errors.
  • Document the API seam in Lens docs for subsequent services integrating with Lens.

Refs lens#13.

Activity

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

Metadata

Metadata

Assignees

Labels

MModerate: few days, one subsystemP3Nice-to-haveenhancementNew feature or request

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions