Skip to main content

Daylily Ursa beta analysis API

Project description

daylily-ursa

Daylily Ursa is the analysis execution, review, artifact-linking, and Atlas result-return service.

Authority Boundary

Ursa is analysis-only.

It owns:

  • analysis ingest records linked to sequencing context
  • TapDB-backed analysis state and review state
  • Bloom resolver calls for canonical run context
  • Dewey resolve/register flows for analysis inputs and outputs
  • Atlas result return after approval

It does not own:

  • customer portal routes
  • onboarding or bucket-ownership flows
  • file/file-set authority
  • release visibility policy

Runtime Shape

Primary package: daylib_ursa

Primary entrypoints:

  • app factory: daylib_ursa.workset_api:create_app
  • CLI command: daylily-workset-api
  • package exports: analysis store, Bloom client, Dewey client, app factory

API Surface

Current service routes:

  • GET /healthz
  • POST /api/analyses/ingest
  • GET /api/analyses/{analysis_euid}
  • POST /api/analyses/{analysis_euid}/status
  • POST /api/analyses/{analysis_euid}/artifacts
  • POST /api/analyses/{analysis_euid}/review
  • POST /api/analyses/{analysis_euid}/return

Auth rules:

  • analysis write routes require X-API-Key
  • ingest and return also require Idempotency-Key

Integration Contracts

Ursa expects three external service seams:

  • Bloom for run resolution
  • Dewey for artifact resolution and registration
  • Atlas for result return and target resolution

Supported ingest input references:

  • {"reference_type":"s3_uri","value":"s3://..."}
  • {"reference_type":"artifact_euid","value":"AT-..."}
  • {"reference_type":"artifact_set_euid","value":"AS-..."}

Artifact add requires exactly one of:

  • artifact_euid
  • storage_uri plus artifact_type

Result return requires:

  • review state APPROVED
  • Dewey-linked artifacts for all returned outputs

Required Environment

URSA_INTERNAL_API_KEY=...
URSA_INTERNAL_OUTPUT_BUCKET=...

BLOOM_BASE_URL=https://...
BLOOM_API_TOKEN=...
BLOOM_VERIFY_SSL=true

ATLAS_BASE_URL=https://...
ATLAS_INTERNAL_API_KEY=...
ATLAS_VERIFY_SSL=true

DEWEY_ENABLED=true
DEWEY_BASE_URL=https://...
DEWEY_API_TOKEN=...
DEWEY_VERIFY_SSL=true

Cross-system integrations are authenticated and should run over HTTPS.

Local Development

source ./activate
ursa config init
ursa server start --port 8913

Validation:

pytest -q

Current Docs

Legacy workset-monitor notes remain in docs/, but they are no longer the primary repo contract.

Ursa delegates shared infrastructure ownership:

  • use tapdb for shared DB/runtime lifecycle
  • use daycog for shared Cognito lifecycle
  • use ursa only for Ursa-specific runtime/bootstrap behavior

Ursa template definitions are authored as JSON packs under config/tapdb_templates/ and loaded through TapDB before runtime use.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

daylily_ursa-0.2.20.tar.gz (2.6 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

daylily_ursa-0.2.20-py3-none-any.whl (229.5 kB view details)

Uploaded Python 3

File details

Details for the file daylily_ursa-0.2.20.tar.gz.

File metadata

  • Download URL: daylily_ursa-0.2.20.tar.gz
  • Upload date:
  • Size: 2.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for daylily_ursa-0.2.20.tar.gz
Algorithm Hash digest
SHA256 d7ed459b84a2d7939a17d3032edd7b4341e1e5db4beb1e983f45d63e1fa0289a
MD5 872d2290cb0fc10fd75d0e68b1dee77c
BLAKE2b-256 85d0b0d25a65bcf5e163369d40add996b3d3b7d6d0161bf81118f1a1e04a2e53

See more details on using hashes here.

File details

Details for the file daylily_ursa-0.2.20-py3-none-any.whl.

File metadata

  • Download URL: daylily_ursa-0.2.20-py3-none-any.whl
  • Upload date:
  • Size: 229.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for daylily_ursa-0.2.20-py3-none-any.whl
Algorithm Hash digest
SHA256 71df42abcf9cc9e040c4c606f82ebadc64f85b96649ed6eded4a7060b5d0715b
MD5 9d1ef46d1daaac9cc5f68f6b5524650d
BLAKE2b-256 2143205811b2e5dab35dcc7783d7a9f4da8d58bc6c457f93dd3d18c658204061

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page