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

Uploaded Python 3

File details

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

File metadata

  • Download URL: daylily_ursa-0.2.17.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.17.tar.gz
Algorithm Hash digest
SHA256 2f1370882c4acfa4e7c296ba529460f1d1f98e91f3a48dfc7322b5dc127af66c
MD5 3190b673c1498091f04edc38a297a7b0
BLAKE2b-256 6ed9b2e9e6df1f85ce02fba548c84abe66115c3d23dc93214195be7cd915dfc2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: daylily_ursa-0.2.17-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.17-py3-none-any.whl
Algorithm Hash digest
SHA256 a302c3d38409496b63d5898d0ace1763f351cda082e50ca0a822b0bf305dc2e2
MD5 ed678fd29a22b71e8937ec37433ea6b9
BLAKE2b-256 a8c5e9ec08ad50e27fcde39d2f094fc0f59e7c442783f2fc6dc2e6a3e15a9d96

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