Input: Design documents from /specs/002-httpclient-http-api/
Prerequisites: plan.md (✓), research.md (✓), data-model.md (✓), contracts/ (✓), quickstart.md (✓)
1. Load plan.md from feature directory ✓
→ Tech stack: TypeScript 5.1+, Node.js 18.12+, Jest 29.7+
→ Libraries: axios, ethers, tweetnacl, https-proxy-agent, winston
→ Structure: src/core/http-client/, src/adapters/, src/types/
2. Load design documents ✓:
→ data-model.md: 6 entities (HttpClient, PlatformAccount, HTTPRequest, HTTPResponse, AuthenticationContext, PlatformConfiguration)
→ contracts/: http-client.contract.md, platform-adapter.contract.md
→ research.md: Adapter pattern, credential-manager integration, performance optimization
3. Generate tasks by category:
→ Setup: TypeScript environment, ESLint config, credential integration
→ Tests: Contract tests, integration scenarios, performance validation
→ Core: HTTP client refactor, platform adapters, authentication integration
→ Integration: Credential-manager connection, proxy support, logging
→ Polish: Performance benchmarks, documentation, quality validation
4. Apply task rules: Different files = [P], TDD order maintained
5. Number tasks sequentially (T001-T032)
6. Validate completeness ✓
[ID] [P?] Descriptionsrc/core/http-client/ module directory structure per plan.mdsrc/core/http-client/tsconfig.jsonsrc/core/http-client/.eslintrc.jsontests/jest.config.http-client.jsCRITICAL: These tests MUST be written and MUST FAIL before ANY implementation
tests/contract/http-client-core.contract.test.tstests/contract/http-client-batch.contract.test.tstests/contract/http-client-platform.contract.test.tstests/contract/platform-adapter-request.contract.test.tstests/contract/platform-adapter-auth.contract.test.tstests/contract/platform-adapter-proxy.contract.test.tstests/integration/pacifica-balance.integration.test.tstests/integration/multi-platform-concurrent.integration.test.tstests/integration/credential-auth.integration.test.tstests/integration/proxy-routing.integration.test.tssrc/types/httpClient.tssrc/types/httpClient.tssrc/types/platformAdapter.tssrc/types/httpClientCore.tssrc/core/http-client/HttpClientCore.tssrc/core/http-client/PlatformAdapterFactory.tssrc/core/http-client/AuthenticationManager.tssrc/adapters/pacifica/PacificaHttpAdapter.tssrc/adapters/aster/AsterHttpAdapter.tssrc/adapters/binance/BinanceHttpAdapter.tssrc/utils/universalHttpClient.tssrc/core/http-client/PlatformAdapterFactory.tssrc/core/http-client/AuthenticationManager.tssrc/core/http-client/ProxyManager.tssrc/core/http-client/PerformanceMonitor.tssrc/core/http-client/HttpLogger.tstests/performance/response-time.performance.test.tstests/unit/error-handling.unit.test.tstests/unit/connection-pool.unit.test.tsspecs/002-httpclient-http-api/quickstart.mdCritical Dependencies:
Implementation Dependencies:
Integration Dependencies:
# Phase 3.2: Launch contract tests together (all must fail initially)
Task: "Contract test IUniversalHttpClient.request() in tests/contract/http-client-core.contract.test.ts"
Task: "Contract test IUniversalHttpClient.batchRequest() in tests/contract/http-client-batch.contract.test.ts"
Task: "Contract test IUniversalHttpClient.registerPlatform() in tests/contract/http-client-platform.contract.test.ts"
Task: "Contract test IPlatformAdapter.request() in tests/contract/platform-adapter-request.contract.test.ts"
# Phase 3.3: Launch type definitions in parallel
Task: "Extend HttpClientRequest interface in src/types/httpClient.ts"
Task: "Define IPlatformAdapter interface in src/types/platformAdapter.ts"
Task: "Define IUniversalHttpClient interface in src/types/httpClientCore.ts"
# Phase 3.3: Launch platform adapters in parallel (after core interfaces)
Task: "Enhance PacificaAdapter with credential-manager integration in src/adapters/pacifica/PacificaHttpAdapter.ts"
Task: "Enhance AsterAdapter with credential-manager integration in src/adapters/aster/AsterHttpAdapter.ts"
Task: "Enhance BinanceAdapter with credential-manager integration in src/adapters/binance/BinanceHttpAdapter.ts"
# Phase 3.5: Launch polish tasks in parallel
Task: "Performance benchmark tests for <100ms response time in tests/performance/response-time.performance.test.ts"
Task: "Unit tests for error handling and retry logic in tests/unit/error-handling.unit.test.ts"
Task: "Unit tests for connection pooling in tests/unit/connection-pool.unit.test.ts"
src/core/credential-manager/From Contracts:
From Data Model:
From Quickstart Scenarios:
From Research Decisions: