45 lines
1.5 KiB
Python
45 lines
1.5 KiB
Python
"""
|
|
Study configuration for the Amazon Connect TEI (February 2026).
|
|
|
|
Set ``TOOL_PUBLIC_ID`` to the public_id of the live TEI tool instance in
|
|
Athena once it has been created. ``REPORT_PUBLIC_ID`` is the template
|
|
this tool was created from (Athena admin sets up Report templates).
|
|
|
|
Until both are filled in, the notebooks fall back to local-only mode:
|
|
they compute summaries from ``seed_data.py`` using ``core.calculations``
|
|
and skip the network round-trip.
|
|
"""
|
|
|
|
from __future__ import annotations
|
|
|
|
import os
|
|
|
|
#: Human-friendly study identifier — used in export metadata + filenames.
|
|
STUDY_SLUG = "202602_AmazonConnect"
|
|
|
|
#: TEI Report template public_id (12-char short UUID). Provisioned in
|
|
#: Athena admin → TEI → Reports.
|
|
REPORT_PUBLIC_ID: str = os.getenv("PALLADIUM_REPORT_PUBLIC_ID", "")
|
|
|
|
#: TEI Tool instance public_id. Created via the API
|
|
#: (``client.create_tool``) or the Streamlit app sidebar.
|
|
TOOL_PUBLIC_ID: str = os.getenv("PALLADIUM_TOOL_PUBLIC_ID", "")
|
|
|
|
#: Default discount rate used for local validation of the study numbers.
|
|
DISCOUNT_RATE = 0.10
|
|
|
|
#: Analysis horizon (years).
|
|
ANALYSIS_YEARS = 3
|
|
|
|
def _int_env(name: str) -> int | None:
|
|
raw = os.getenv(name, "").strip()
|
|
return int(raw) if raw else None
|
|
|
|
|
|
#: Athena Proposal PK this tool is linked to (a TEI tool must attach to a
|
|
#: Proposal OR an Engagement — set exactly one).
|
|
PROPOSAL_ID: int | None = _int_env("PALLADIUM_PROPOSAL_ID")
|
|
|
|
#: Athena Engagement PK (alternative attachment point).
|
|
ENGAGEMENT_ID: int | None = _int_env("PALLADIUM_ENGAGEMENT_ID")
|