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

Uploaded Python 3

File details

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

File metadata

  • Download URL: daylily_ursa-0.2.16.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.16.tar.gz
Algorithm Hash digest
SHA256 82dd5ac417158acb4a0407e1bd9d1467bac23a2947c7250571544e611ce36f9a
MD5 fbacf20b2fdb321bb2074a5f888988a6
BLAKE2b-256 6d23f450b4471c6af39f1fb7be8b250c310c619192ee87187cfe04ccd2474c6f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: daylily_ursa-0.2.16-py3-none-any.whl
  • Upload date:
  • Size: 216.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.16-py3-none-any.whl
Algorithm Hash digest
SHA256 eb0ccc470b51d5bc4b0ff8470676683a0f4715568e8a38b088990d17e3d193de
MD5 5bf67410b531449330b0a2b4b3550abc
BLAKE2b-256 8d47236a9c06723e08a941db08c611aa0f2c5d369affbf78e45ccac8337c8a49

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