Commit Graph
8 Commits
Author SHA1 Message Date
63e4ceffac docs: REL-001 라이브 스모크 evidence 귀속 (trex-op 2026-06-16) (#13)
- [x] ④ legacy buy Deprecation 헤더: HTTP 200 + deprecation:true 확인
- [x] ⑤ ledger/trades 신규: HTTP 201 + cash_balance_after(-63296.1) + asset_quantity_after(1.0)
- [x] ⑥ idempotency duplicate: HTTP 200 + status=duplicate + ledger_entry_id 42 재반환
- [blocked] ③ 태그 mutation: v1_tags token_source guard로 차단, DB bootstrap 미설정
  → Feedback Handoff Discovery Input 이관

Co-authored-by: trex-dev-b <trex-dev-b@trex-team.internal>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-16 16:41:49 +09:00
de05728edf docs: REL-001 draft→released 정합 (배포 사실 귀속, 검증 처리) (#12)
- Status: draft → released
- Deployment Facts: 코드 6b812b6 + 문서 50beba3, 2026-06-14 13:09 KST, trex-op
- Alembic 마이그레이션: 로그 미보존, health db_enabled:true + 엔드포인트 200으로 적용 확인
- 검증 ①: trex-core cross-repo pending (dev-a/trex-core REL-008 확인 대기)
- 검증 ②: BAT-016 staging dry-run moot (prod 2일+ 가동 성공)
- 검증 ③④⑤⑥: 라이브 스모크 절차 정의 (trex-op 실행 대기)
- Startup/Request Log: 미보존, post-release feedback Discovery Input 이관
- releases/index.md: draft → released

Co-authored-by: trex-dev-b <trex-dev-b@trex-team.internal>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-16 16:27:03 +09:00
genichinandClaude Opus 4.8 50beba3ff6 docs: fold issue #9 user_info hotfix into REL-001 scope + 2026-06-06 smoke
- Add issue #9 hotfix (GET /v1/user_info 500 on missing broker_credentials) to
  REL-001 Included scope + Revision (6b812b6 as integrated main HEAD).
- Add post-deploy smoke item for /v1/user_info 200 + daemon_id (local verified).
- Record 2026-06-06 local verification: ledger_trades absent / portfolio_ledger
  consolidated schema, legacy buy/sell OpenAPI deprecated, full suite 377 passed.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-06 17:51:30 +09:00
genichin b774e40678 docs: consolidate REL-001 scope across BAT-001~016
- fold BAT-015 and BAT-016 into REL-001 release scope
- mark split REL-002 and REL-003 plans as superseded in discovery docs
- update release and batch indexes to match the unified release plan
- expand REL-001 rollout, rollback, verification, and evidence notes
2026-06-05 22:49:10 +09:00
genichinandClaude Opus 4.7 84de34c301 feat: REQ-028 add display_name to GET /v1/portfolios response
- Portfolio domain model + PortfolioItem schema에 display_name 필드 추가
- _SELECT_PORTFOLIO에 a.display_name JOIN 보강, _portfolio_to_item 매퍼 전달
- REQ-028 CHG-20260601-01/02: Implemented → Approved → Implemented
  - AC-13 신설 (display_name == joined assets.display_name)
- BAT-009 verification.md: AC-13 매핑 + augmentation history 누적
- REL-001 verification checklist 재실행 evidence 갱신 (368 PASSED, 로컬 smoke 5건 통과)
- tests/test_v1.py: dead 중복 GET /v1/assets 섹션 제거 (두 번째 동명 정의가 첫 번째를 override하던 잔재)

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-01 14:00:59 +00:00
genichinandClaude Opus 4.7 58899b1a94 feat: REQ-005 assets table tag apply/remove SQL alignment (BAT-013)
- REQ-005 CHG-20260521-02 follow-up: clarify AC-1/AC-5 to target assets table
- Add append_asset_tag_id/remove_asset_tag_id on PostgresPortfolioRepository
- Replace internal calls in apply_asset_tag/remove_asset_tag routes (HTTP contract unchanged)
- 7 new regression tests: method existence, SQL target table, error branches, idempotency guard
- Update existing AC-1/AC-5 assertions to verify new methods + portfolios methods uncalled
- Documentation: runtime-flows.md flow body + change log; rel-001 includes BAT-013
- REQ-005 transition: Approved → Implemented (CHG-20260521-03) via BAT-013 verification
- Total tests: 362 → 369 passed

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-22 00:04:33 +09:00
genichinandClaude Opus 4.7 9038f41010 feat: REQ-002/REQ-010 implementation — assets.tag_ids column + GET /v1/assets admin catalog (BAT-012)
- REQ-002 scope redefinition: portfolios.tag_ids → assets.tag_ids UUID[] column with GIN index
- REQ-010 augmentation: GET /v1/assets redesigned as admin catalog endpoint (admin-only, no token_type branching)
- Asset tagging infrastructure: tag_ids column, archived flag synthesis for inactive tags, list_assets N+1 optimization
- DB migration 20260521_0023: assets.tag_ids UUID[] NOT NULL DEFAULT '{}', idx_assets_tag_ids_gin
- Test suite: 17 new test cases for assets.tag_ids + GET /v1/assets AC-9~12 (362 tests total)
- Documentation: runtime flows, release baseline, batch verification all updated
- BAT-012 added to REL-001 Included Batch and marked release-candidate

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-21 23:37:08 +09:00
genichinandClaude Sonnet 4.6 6add0ade29 feat: REQ-001~018 Implemented 전환, REQ-010 GET /v1/assets admin catalog 재정의, REL-001 draft
- confirm-req-implemented: REQ-001~018 (17건, REQ-013 제외) Approved → Implemented
  - BAT-001(REQ-009/011/014), BAT-002(REQ-010/012/015), BAT-003(REQ-001/002/003/006)
  - BAT-004(REQ-004/005), BAT-005(REQ-007/008), BAT-006(REQ-016/017/018)
  - CHG-20260521-01 entry 각 REQ에 추가; SRS index Recent Change Log 갱신

- REQ-010 CHG-20260521-02: GET /v1/assets admin catalog 전용 재정의
  - 기존 token_type 분기 portfolio 조회 코드 제거, admin permission + list_assets() 호출로 대체
  - AssetCatalogListResponse 스키마 추가 (items/total)
  - REQ-010 Status: Implemented → Approved (재검증 필요)
  - 테스트 343건 전체 통과: service/user token 403, admin token 200 + catalog schema 검증

- migration 보강: portfolios_asset_migration market 컬럼 부재 fallback,
  portfolio_tags 빈 테이블 early-return, service_token index fix autocommit_block 정리

- docs/releases/rel-001: REL-001 draft 추가 (BAT-001~011 포함)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-21 10:17:39 +00:00