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.18.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.18-py3-none-any.whl (217.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: daylily_ursa-0.2.18.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.18.tar.gz
Algorithm Hash digest
SHA256 97fe11da02c13995fb7cd8b52818001480420f44f2b19fbe7dba1f88b2959dfd
MD5 5edf05fa218047b2db245ea8277f7d36
BLAKE2b-256 599c3d6783c3c1941654bb30d15960bc225a8b6af7f64151dc4e2249c9218f91

See more details on using hashes here.

File details

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

File metadata

  • Download URL: daylily_ursa-0.2.18-py3-none-any.whl
  • Upload date:
  • Size: 217.6 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.18-py3-none-any.whl
Algorithm Hash digest
SHA256 2808d4d70cc89be5b50e449a117a0ca2ff1d52ac5759ff6d7e0b3480c1fb5ed5
MD5 0a645ae44172baba7e289956c009aecf
BLAKE2b-256 6dc664a870c0cd959a092cd6be070104a6f7cceb97b3985fc4b934f9134e4e04

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