Skip to content

Run 5: API Proxy Update

Update @arda-cards/api-proxy TypeScript types and proxy methods to match the updated print API contracts from Runs 1-3.

Specification: Phase 5 Specification Requirements: Phase 5 Requirements Verification: Phase 5 Verification

#CriterionVerification CommandExpected Output
1Run 3 exit gate passes (API contracts finalized)bash .../run-3-diagnostics/validate-exit.shALL CHECKS PASSED
2api-proxy worktree exists and buildscd /Users/jmp/code/arda/projects/multi-pdf-print-and-bugs-worktrees/api-proxy && npm run buildExit 0
3api-proxy tests passcd .../api-proxy && npm test211 passed
4api-proxy on correct branchgit -C .../api-proxy branch --show-currentjmpicnic/multi-pdf-print-and-bugs
ArtifactPathFormatDescription
CompositeRenderResult typeapi-proxy/src/reference/shared/types.tsTypeScriptNew composite response types
PrintOptions typeapi-proxy/src/reference/shared/types.tsTypeScriptDiagnostic parameter options
Updated ItemProxyapi-proxy/src/reference/item/proxy.tsTypeScriptprintLabels/printBreadcrumbs return CompositeRenderResult
Updated KanbanProxyapi-proxy/src/resources/kanban/proxy.tsTypeScriptprintCards returns CompositeRenderResult; new unmarkPrinted()
Updated testsapi-proxy/tests/TypeScriptUpdated mock responses, new method tests
CHANGELOGapi-proxy/CHANGELOG.mdMarkdownVersion entry
#TaskPersonaDepends OnStatusAcceptance Criteria
5.1Update RenderResult → CompositeRenderResult typestypescript-engineerPendingTypes compile. T-P5-001, T-P5-002.
5.2Update print proxy methods + add PrintOptionstypescript-engineer5.1PendingMethods accept options, return composite. T-P5-003 through T-P5-007.
5.3Add KanbanProxy.unmarkPrinted()typescript-engineerPendingCalls correct endpoint. T-P5-008.
5.4Update tests and CHANGELOGtypescript-engineer5.1, 5.2, 5.3PendingAll 211+ tests pass. CHANGELOG updated. T-P5-009, T-P5-010.
5.1 (types) ──→ 5.2 (proxy methods) ──→ 5.4 (tests + CHANGELOG)
5.3 (unmarkPrinted) ──────────────────┘

Tasks 5.1 and 5.3 can run in parallel. Small scope — single typescript-engineer agent.

#CriterionVerification CommandExpected Output
1api-proxy buildscd .../api-proxy && npm run buildExit 0
2All tests passcd .../api-proxy && npm testAll passed
3Lint passescd .../api-proxy && npm run lintExit 0
4CHANGELOG updatedhead -10 .../api-proxy/CHANGELOG.mdContains version entry
5Worktree cleangit -C .../api-proxy status --shortClean

PR creation is gated on explicit user prompt. The api-proxy package publishes to GitHub Packages on merge — coordinate with user before pushing.

You are updating the @arda-cards/api-proxy TypeScript package at /Users/jmp/code/arda/projects/multi-pdf-print-and-bugs-worktrees/api-proxy.

Read the specification at .../../phase-5-api-proxy/specification.md and implement Tasks 5.1 through 5.4. Use mode: "bypassPermissions".

Key points:

  • Replace RenderResult with CompositeRenderResult + GroupRenderResult
  • Add PrintOptions interface for diagnostic parameters (livePrint, debug, dryRun)
  • Add KanbanProxy.unmarkPrinted(cardEId) method
  • Follow existing test patterns (Vitest + fetch mocks)
  • Read api-proxy/CLAUDE.md for repo conventions
ArtifactSource RunPath
CompositeRenderResult shapeRun 2API contract (no file dependency)
Diagnostic parametersRun 3API contract
Unmark endpointRun 1API contract

None — this is the final code run. Run 4 (api-test) can execute in parallel with Run 5 since they operate on independent repositories with no code dependencies.


Copyright: (c) Arda Systems 2025-2026, All rights reserved