Paul Huliganga
|
210f273c05
|
Show field mapping caveats in template issues
|
2026-04-23 09:15:49 -04:00 |
Paul Huliganga
|
beede0e497
|
Add admin status view and asset versioning
|
2026-04-22 22:51:15 -04:00 |
Paul Huliganga
|
8f0b14bc62
|
Scope audit activity by session
|
2026-04-22 11:29:37 -04:00 |
Paul Huliganga
|
fb54426bea
|
Add tester activity audit log
|
2026-04-22 11:10:57 -04:00 |
Paul Huliganga
|
eb9ce84001
|
Add multi-user web auth sessions
|
2026-04-21 21:05:15 -04:00 |
Paul Huliganga
|
51f532f452
|
feat: idempotent upload + FastAPI web UI with full test coverage
Phase 1 — Idempotent upload:
- upload_docusign_template.py now upserts: PUT if template with same name
exists (most recently modified), POST otherwise
- --force-create flag to bypass upsert
Phase 2-6 — FastAPI web UI:
- web/app.py: FastAPI app with /health, static file serving
- web/routers/auth.py: Adobe Sign + DocuSign OAuth start/callback/disconnect
- web/routers/templates.py: template listing + migration status badges
(not_migrated / migrated / needs_update)
- web/routers/migrate.py: POST /api/migrate pipeline + GET /api/migrate/history
- web/static/: vanilla HTML/CSS/JS side-by-side template browser UI
Phase 7 — Tests (29/29 passing):
- test_upload_upsert.py: 4 upsert unit tests
- test_api_health/auth/templates/migrate.py: full API coverage
- test_e2e.py: 7-step full pipeline end-to-end test
- test_regression.py: compose output vs snapshots for 3 real templates
- conftest.py: --update-snapshots CLI option
Docs: IMPLEMENTATION-PLAN.md, updated EXECUTION-BOARD.md + architecture.md
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-17 14:47:27 -04:00 |