adobe-to-docusign-migrator/src
Paul Huliganga 342e8c3471 feat(phases-8-13): blueprint alignment — normalized schema, validation, migration options, retry, security, batch
Phase 8: Normalized intermediate schema (src/models/normalized_template.py, src/services/mapping_service.py)
  - Platform-agnostic NormalizedTemplate as pipeline bridge
  - PDF SHA-256 checksums computed during normalization
  - 13 tests passing

Phase 9: Validation service + report builder (src/services/validation_service.py, src/reports/report_builder.py)
  - Blockers (no recipients, no documents) halt migration
  - Warnings (no fields, unassigned roles, unsupported features) logged
  - Structured MigrationReport with per-template status
  - 20 tests passing

Phase 10: Migration options API (web/routers/migrate.py)
  - source_template_ids, dry_run, overwrite_if_exists, include_documents options
  - Backward compatible with legacy adobe_template_ids field
  - 7 tests passing

Phase 11: Retry with exponential backoff (src/utils/retry.py)
  - retry_with_backoff and async_retry_with_backoff decorators
  - 429/5xx detection via check_response_retryable
  - 14 tests passing

Phase 12: Security hardening (src/utils/log_sanitizer.py)
  - SanitizingFilter redacts tokens, JWTs, base64 PDF content from logs
  - 15 tests passing

Phase 13: Batch migration API
  - POST /api/migrate/batch — async background job with job_id
  - GET /api/migrate/batch/{job_id} — poll progress and results
  - 6 tests passing

Full suite: 108/108 tests passing

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-21 02:19:38 -04:00
..
models feat(phases-8-13): blueprint alignment — normalized schema, validation, migration options, retry, security, batch 2026-04-21 02:19:38 -04:00
reports feat(phases-8-13): blueprint alignment — normalized schema, validation, migration options, retry, security, batch 2026-04-21 02:19:38 -04:00
services feat(phases-8-13): blueprint alignment — normalized schema, validation, migration options, retry, security, batch 2026-04-21 02:19:38 -04:00
utils feat(phases-8-13): blueprint alignment — normalized schema, validation, migration options, retry, security, batch 2026-04-21 02:19:38 -04:00
adobe_api.py fix: correct Adobe Sign token refresh endpoint and add auth error handling 2026-04-16 10:10:12 -04:00
adobe_auth.py refactor: rename auth_adobe.py to adobe_auth.py for naming consistency 2026-04-16 10:10:05 -04:00
compose_docusign_template.py feat: map Adobe Sign conditional logic to DocuSign conditionalParentLabel/Value 2026-04-16 12:18:48 -04:00
create_adobe_template.py feat: end-to-end migration runner and test template utilities 2026-04-15 19:45:31 -04:00
docusign_auth.py feat: DocuSign JWT auth and pure-Python template upload client 2026-04-15 19:45:23 -04:00
docusign_ingest_stub.py Add latest migration files and validation outputs 2026-04-20 01:12:46 -04:00
download_templates.py feat: Adobe Sign template download pipeline 2026-04-15 19:44:52 -04:00
generate_pdfs.py feat: end-to-end migration runner and test template utilities 2026-04-15 19:45:31 -04:00
migrate_paul_template.py Add latest migration files and validation outputs 2026-04-20 01:12:46 -04:00
migrate_template.py feat: end-to-end migration runner and test template utilities 2026-04-15 19:45:31 -04:00
test_mapping.py feat: core migration — Adobe Sign to DocuSign field mapping and composition 2026-04-15 19:45:13 -04:00
upload_docusign_template.py feat: idempotent upload + FastAPI web UI with full test coverage 2026-04-17 14:47:27 -04:00