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

Uploaded Python 3

File details

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

File metadata

  • Download URL: daylily_ursa-0.2.19.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.19.tar.gz
Algorithm Hash digest
SHA256 745014baa53886c23aa79361ae93b3e81a36c2866a36b2834a243bb3a2cfc121
MD5 449a2cf15c0849516a49e68590b59f2a
BLAKE2b-256 bcbaed55b274f7c9d09f8056697a57dc7e807d1d8c543190b35bddc778655a9d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: daylily_ursa-0.2.19-py3-none-any.whl
  • Upload date:
  • Size: 229.3 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.19-py3-none-any.whl
Algorithm Hash digest
SHA256 d32418ed63919e2e0b000437f73437abe2428c6564e74210f3be8ed178d7f225
MD5 eeaaf51ee3c200182b5081a59a7cf304
BLAKE2b-256 b2a55ba00205ebab38eb56ce7f5b098b17ec304ddd309b58f1a85c3ed0d97b8b

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