Skip to content

Commit 7a642b9

Browse files
chitcommitclaude
andauthored
docs: update CLAUDE.md phase tracker (PRs #86-104) (#105)
docs: update phase tracker to reflect PRs #86-104 - Phase 3.5 (COA trust-path): NEW, marked COMPLETED - Phase 4: marked COMPLETED (all imports shipped) - Phase 6: marked COMPLETED (allocations, export, email) - Phase 2/5: updated with completed items - Route listing: 20 → 22 files (allocations, email) - Wrangler config: .toml → .jsonc reference - Test count: 35 → 246+ Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 5a0c2be commit 7a642b9

1 file changed

Lines changed: 51 additions & 29 deletions

File tree

CLAUDE.md

Lines changed: 51 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -149,15 +149,16 @@ chittyfinance/
149149
│ ├── worker.ts # Cloudflare Workers entry point
150150
│ ├── index.ts # Legacy Express entry (standalone dev)
151151
│ ├── routes.ts # Legacy Express routes (reference only)
152-
│ ├── routes/ # Hono route modules (20 files)
152+
│ ├── routes/ # Hono route modules (22 files)
153153
│ │ ├── health.ts # /health, /api/v1/status
154154
│ │ ├── docs.ts # /api/v1/documentation (OpenAPI spec)
155155
│ │ ├── accounts.ts # /api/accounts
156156
│ │ ├── summary.ts # /api/summary
157157
│ │ ├── tenants.ts # /api/tenants
158158
│ │ ├── properties.ts # /api/properties (CRUD + financials + rent roll + P&L)
159-
│ │ ├── transactions.ts # /api/transactions
159+
│ │ ├── transactions.ts # /api/transactions (+ CSV/OFX/QFX export)
160160
│ │ ├── integrations.ts # /api/integrations
161+
│ │ ├── allocations.ts # /api/allocations (inter-company rules + execution)
161162
│ │ ├── tasks.ts # /api/tasks
162163
│ │ ├── ai.ts # /api/ai-messages
163164
│ │ ├── mercury.ts # /api/mercury (via ChittyConnect)
@@ -168,8 +169,9 @@ chittyfinance/
168169
│ │ ├── forensics.ts # /api/forensics (21 endpoints)
169170
│ │ ├── valuation.ts # /api/properties/:id/valuation (multi-source AVM)
170171
│ │ ├── session.ts # /api/session (KV-backed cookie auth)
171-
│ │ ├── import.ts # /api/import (TurboTenant CSV + Wave sync)
172-
│ │ └── webhooks.ts # Stripe/Mercury webhooks
172+
│ │ ├── email.ts # /api/email (Cloudflare Email Service)
173+
│ │ ├── import.ts # /api/import (TurboTenant, Mercury, HD Pro, Amazon CSV + Wave sync)
174+
│ │ └── webhooks.ts # Stripe/Mercury/Wave webhooks (per-tenant HMAC)
173175
│ ├── middleware/ # auth, tenant, error middleware
174176
│ ├── storage/ # SystemStorage (Drizzle queries)
175177
│ ├── db/ # connection.ts (Neon HTTP), schema.ts
@@ -192,7 +194,7 @@ chittyfinance/
192194
├── shared/ # Shared types and schemas
193195
│ └── schema.ts # Legacy schema with forensic tables (integer-ID)
194196
└── deploy/
195-
└── system-wrangler.toml # Cloudflare Workers config
197+
└── system-wrangler.jsonc # Cloudflare Workers config (JSONC)
196198
```
197199

198200
## Database Architecture
@@ -879,57 +881,77 @@ VALUES ('demo', 'any_value', 'Demo User', 'demo@example.com', 'user');
879881
- ✅ Hierarchy-aware tenant switcher with consolidated portfolio view (PR #52)
880882

881883
### Phase 1.5: Hono Route Migration (COMPLETED)
882-
- ✅ All 17 route modules migrated from Express to Hono
884+
- ✅ All route modules migrated from Express to Hono (22 route files)
883885
- ✅ Edge-compatible: Web Crypto API, Neon HTTP driver, no Node.js dependencies
884886
- ✅ Per-prefix middleware registration (avoids blocking public routes)
885887
- ✅ Deployed to Cloudflare Workers at `finance.chitty.cc`
886-
-30/30 tests passing
888+
-Dev server migrated to Hono (`server/dev.ts`), 15 legacy lib modules deleted (PR #81)
887889

888890
### Phase 2: ChittyConnect Integration (Partially Completed)
889891
- ✅ Mercury Bank via ChittyConnect backend (multi-account support)
890892
- ✅ Registered with ChittyRegistry (`did:chitty:REG-XE6835`, PR #49)
893+
- ✅ Log to ChittyChronicle (audit trail for classification + COA mutations, PR #92)
894+
- ✅ JWT session auth behind ChittyAuth (PR #96)
891895
- ⏳ Integrate with ChittyConnect MCP
892-
- ⏳ Log to ChittyChronicle
893-
- ⏳ Use ChittyAuth tokens
896+
- ⏳ Issue ChittyCert certificates for secure connections
894897

895898
### Phase 3: Real Third-Party Integrations (COMPLETED ✅)
896899
-**Wave Accounting** - OAuth 2.0 flow + GraphQL API (`server/lib/wave-api.ts`)
897900
-**Stripe** - Payment processing, checkout, webhooks (`server/lib/stripe.ts`)
898901
-**Mercury Bank** - Multi-account via ChittyConnect (static egress IP)
899-
-**OAuth Security** - CSRF-protected state tokens (`server/lib/oauth-state.ts`)
902+
-**Mercury Native Webhooks** - Per-tenant HMAC-SHA256 verification, 7 registrations (PR #99)
903+
-**OAuth Security** - CSRF-protected state tokens (`server/lib/oauth-state-edge.ts`)
900904
-**Integration Monitoring** - Config validation endpoint (`/api/integrations/status`)
901-
-**Webhook Infrastructure** - Idempotent event processing (`webhook_events` table)
902-
- ~~DoorLoop~~ - Sunset (mock code is cleanup candidate, not roadmap)
903-
904-
### Phase 4: Property Financial API (Partially Completed)
905+
-**Webhook Infrastructure** - Idempotent event processing (KV-based dedup, 7-day TTL)
906+
- ~~DoorLoop~~ - Sunset, all code removed (PR #78, -35K lines)
907+
908+
### Phase 3.5: COA Trust-Path + Classification (COMPLETED ✅)
909+
- ✅ Database-backed Chart of Accounts with 80 REI accounts seeded (PR #86)
910+
- ✅ L0→L4 trust-path enforcement with concurrency-safe reconciled lock (PR #86)
911+
- ✅ AI-assisted classification via GPT-4o-mini with defense-in-depth fallbacks (PR #87)
912+
- ✅ Classification review UI with bulk-accept guardrails (PR #88)
913+
- ✅ Admin COA editor with code-range validation (PR #89)
914+
- ✅ Mercury webhook real-time classification at ingest (PR #90)
915+
- ✅ Classification enhancements — bulk-accept opt-out, L3 audit trail, tenant settings (PR #94)
916+
- ✅ Schedule E tax workspace + line summary (PRs #91, #96)
917+
- ✅ 246+ tests passing
918+
919+
### Phase 4: Property Financial API + Data Import (COMPLETED ✅)
905920
-`property_valuations` table in system schema
906921
- ✅ Property/unit/lease CRUD in SystemStorage
907922
- ✅ Financial aggregation methods (NOI, cap rate, cash-on-cash, occupancy, rent roll, P&L)
908923
- ✅ Property mutation + financial endpoints (10 new routes in `properties.ts`)
909924
- ✅ Multi-source valuation providers (Zillow, Redfin, HouseCanary, ATTOM, County)
910-
- ✅ Confidence-weighted valuation aggregation
911-
- ✅ Valuation routes (current, refresh, history)
925+
- ✅ Confidence-weighted valuation aggregation + valuation routes
912926
- ✅ TurboTenant CSV import with deduplication
927+
- ✅ Mercury CSV import with account auto-resolution (PR #101)
928+
- ✅ HD Pro CSV import (3K items, 24 job name normalizations) (PR #93)
929+
- ✅ Amazon Business import (2K items, returns dedup, payment card tracking) (PR #93)
913930
- ✅ Wave sync import endpoint
914-
- ✅ Valuation Tab component (`client/src/components/property/ValuationTab.tsx`) — generalized, takes `propertyId` prop
915-
- ✅ Deployed to Cloudflare Workers (35 tests passing)
916-
- ✅ Frontend property management UI (Add/Edit property, Add unit/lease dialogs, detail panel with 5 tabs)
917-
- ✅ Lease expiration notifications (cron trigger + API endpoint + action queue + dashboard widget)
931+
- ✅ Frontend property management UI (Add/Edit property, units, leases, 5-tab detail panel)
932+
- ✅ Lease expiration notifications (cron trigger + API + dashboard widget, PR #70)
918933

919934
### Phase 5: ChittyOS Ecosystem Integration (Partially Completed)
920-
- ✅ Replace demo auth with ChittyID (default login path with graceful email/password fallback)
921-
- ✅ Expose financial data as MCP resources
922-
- ✅ Log to ChittyChronicle (audit trail for classification + COA mutations)
935+
- ✅ Replace demo auth with ChittyID SSO via OAuth 2.0 PKCE (PR #72)
936+
- ✅ Expose financial data as MCP resources (PR #92)
937+
- ✅ Log to ChittyChronicle (PR #92)
938+
- ✅ ChittyDiscovery self-registration + heartbeat (PR #79)
939+
- ✅ Fractal scope projection via shared `@chittyos/schema/scope-projector` (PR #103)
940+
- ✅ Governance workflow gates (PR #95)
923941
- ⏳ Issue ChittyCert certificates for secure connections
942+
- ⏳ Integrate with ChittyConnect MCP
924943

925-
### Phase 6: Advanced Features
944+
### Phase 6: Advanced Features (COMPLETED ✅)
926945
- ✅ Consolidated reporting across all entities (`server/lib/consolidated-reporting.ts`)
927946
- ✅ Multi-currency schema support (ISO 4217, PR #53)
928-
- Inter-company allocation automation
929-
- Tax optimization and reporting
930-
- Advanced AI forecasting (beyond GPT-4o)
931-
- Mobile app (React Native)
932-
- Export/import (CSV, QFX, OFX)
947+
- ✅ Inter-company allocation automation engine (PR #75) + management UI (PR #80)
948+
- ✅ Transaction export CSV/OFX/QFX (PR #76)
949+
- ✅ Complete ledger audit coverage across all financial mutations (PR #77)
950+
- ✅ Cloudflare Email Service integration (PR #102)
951+
- ✅ Wrangler config TOML → JSONC (PR #104)
952+
- ⏳ Tax optimization and reporting (Schedule E data classified, export page shipped)
953+
- ⏳ Advanced AI forecasting (beyond GPT-4o)
954+
- ⏳ Mobile app (React Native)
933955

934956
### Phase 7: furnished-condos.com (Planned)
935957
- Cooperative marketplace for small furnished rental operators (under 10 units)

0 commit comments

Comments
 (0)