Source map

A lookup table for "I need to change X — which file and which page?".

Entry points and orientation

I need to find… Go to

Web API entry point

web_api_app.py

Worker entry point and main loop

swf_app.py

The list of processes

task/process.py

Process → task-name mapping

task/process_factory.py

Task dispatch and dependency injection

task/task_factory.py

A specific task’s logic

task/<vendor>/<task_name>/implementation.py

Task base classes and contract

task/generic_task.py

Failure handling

utils/task_utils.py

Vendor and AWS clients

components/

HTTP routes

interface/web_api/router/

HTTP handlers

interface/web_api/endpoint_handling/

Runtime configuration object

config/config.py (from config.config import settings)

Non-secret settings generator

settings_setup.py

Secrets generator

config_setup.py

Application version

version.py

File → page

Path Documented in

web_api_app.py, interface/web_api/router/*

API overview

interface/web_api/endpoint_handling/execute_task.py, get_task_result.py, get_task_status.py, delete_task_results.py, update_final_status.py

Task endpoints

interface/web_api/endpoint_handling/get_tools.py

Tool endpoints

interface/web_api/endpoint_handling/create_entrust_session.py, handle_entrust_webhook.py

Entrust endpoints

interface/web_api/schemas.py, components/auth/schemas.py

Schemas

interface/web_api/endpoint_handling/base.py, web_request_logger.py

Request lifecycle, Auth & permissions

swf_app.py, components/swf_client.py, components/b2b_task_manager.py

SWF orchestration

components/event_bridge/**

EventBridge events

task/process.py, task/process_factory.py, task/task_factory.py, task/generic_task.py, task/exceptions/**, utils/task_utils.py

Domain model: processes & tasks

task/au10tix/**

validate_identity_document (Au10tix)

task/entrust/**

validate_identity_document (Entrust / Onfido)

task/thomson_reuters/request_personal_information_validation/, handle_personal_information_validation_response/

validate_personal_information (KYC)

task/thomson_reuters/request_personal_background_report/, handle_personal_background_report_response/

download_personal_background_report

task/thomson_reuters/request_business_background_report/, handle_business_background_report_response/

download_business_background_report

components/au10tix/**

Au10tix

components/entrust/client.py

Entrust / Onfido

components/hubspot/client.py

HubSpot

components/event_logger/client.py

Supplier event logger

components/thomson_reuters/**

Thomson Reuters CLEAR

components/aws/, components/task_execution_table.py, components/s3_client.py, components/s3_purgable/

AWS clients, DynamoDB tables, S3 datalake

components/payability_internal_api.py, components/pyb_documents.py

Payability internal services

components/auth/, components/permissions/, components/process_source.py

Auth & permissions

components/retry/, components/logger.py, utils/

Utilities

config/config.py, settings_setup.py, config_setup.py

Configuration & secrets, Settings & secrets reference

buildspec.yml, deployment/, artifacts/

Deployment

Makefile, pyproject.toml, requirements.txt, pre_requirements.txt, uv.lock

Local development

pytest.ini, development/**

Testing

docs/**

Writing these docs

Change recipes

Task Touches

Add a process

task/process.py, two task packages, task/process_factory.py, task/task_factory.py, possibly components/, tool_type.py, update_final_status.py, tests, docs. Checklist: domain-model.adoc#adding-a-process.

Add an endpoint

A handler in interface/web_api/endpoint_handling/, a route in the matching router, keep the JWTAuthorizer dependency, a pydantic model in schemas.py, tests, then API overview.

Add an outbound event

A class under components/event_bridge/events/, emitted from a handle task, then EventBridge events.

Add a vendor or AWS client

A module under components/, injected via every TaskFactory construction site (swf_app.py and the Web API handlers), then Component layer.

Add a setting or secret

settings_setup.py or the automatic_uw_tool Secrets Manager entry, then Settings & secrets reference.

Repository-root files

File Purpose

AGENTS.md

Operating guide and doc map for AI coding agents; the entry point they read first.

CLAUDE.md

Points at AGENTS.md (single source of truth for agent guidance).

README.md

Human-facing project overview.

.claude/agents/, .cursor/agents/

Agent definitions (planner, executor, reviewer, validator).

specs/, .cursor/plans/

Historical feature plans — context, not current documentation.

examples/

Recorded vendor responses used by tests and test mode.

temp/, htmlcov/, coverage.xml, report.xml, .coverage

Generated output; not documentation.