Skip to content

Claude code team 2#4

Open
FabianWesner wants to merge 18 commits intomainfrom
claude-code-team-2
Open

Claude code team 2#4
FabianWesner wants to merge 18 commits intomainfrom
claude-code-team-2

Conversation

@FabianWesner
Copy link
Contributor

No description provided.

FabianWesner and others added 17 commits February 13, 2026 18:35
Implements the complete foundation layer:
- Core migrations: organizations, stores, store_domains, store_users, store_settings
- Updated users table with status, last_login_at, password_hash
- Enums: StoreStatus, StoreUserRole, StoreDomainType, UserStatus
- Models with relationships and factories: Organization, Store, StoreDomain, StoreUser, StoreSettings
- BelongsToStore trait with StoreScope for multi-tenant isolation
- ResolveStore middleware (hostname + session-based resolution)
- CheckStoreRole middleware for RBAC
- CustomerAuthenticate middleware
- Custom CustomerUserProvider for store-scoped customer auth
- Admin and Customer auth Livewire components with views
- 10 authorization policies following the permission matrix
- Rate limiters for login, API, checkout, search, analytics
- All 24 Phase 1 tests passing

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add complete product catalog system with:
- Product/variant/option models with full relationship graph
- VariantMatrixService for cartesian product generation
- InventoryService with reserve/release/commit/restock operations
- Collection management (manual + automated types)
- Media upload handling with ProcessMediaUpload job
- HandleGenerator for unique URL-friendly slugs
- 48 tests covering CRUD, variants, inventory, collections, media, handles

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add storefront frontend system with:
- Theme/ThemeFile/ThemeSettings models and migrations
- Page CMS model with draft/published/archived status
- NavigationMenu and NavigationItem models with tree structure
- NavigationService with menu tree building and URL resolution
- Storefront Blade layout with responsive navigation
- Livewire components: Home, Collections, Products, Cart, Search, Pages
- 7 tests covering navigation service and page rendering

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add complete shopping flow with:
- Cart service with session binding, version control, merge on login
- Checkout state machine (started/addressed/shipping/payment/completed/expired)
- Discount service with percent/fixed/free-shipping types and validation
- Shipping calculator with zone matching and flat/weight/price rate types
- Tax calculator with inclusive/exclusive modes using basis points
- Pricing engine pipeline: subtotals, discounts, shipping, tax, total
- Value objects: PricingResult, TaxLine, DiscountResult
- Scheduled jobs: ExpireAbandonedCheckouts, CleanupAbandonedCarts
- 106 new tests (206 total, all passing)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add complete purchase flow with:
- Mock payment provider (credit card magic numbers, PayPal, bank transfer)
- Order service with sequential numbering, line snapshots, inventory commit
- Refund service with partial/full refunds and optional restock
- Fulfillment service with guard (blocks until paid), tracking, delivery
- Customer and CustomerAddress models for store-scoped accounts
- Bank transfer confirmation workflow with auto-cancel after 7 days
- Auto-fulfill digital products on payment confirmation
- Order events: OrderCreated, OrderPaid, OrderFulfilled, OrderCancelled, OrderRefunded
- 44 new tests (250 total, all passing)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…ests

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…t fix

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…plete

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Product page: add-to-cart with quantity selector, stock status, inventory checks
- Cart page: line items, quantity stepper, discount codes, subtotal display
- Checkout: 4-step flow (contact, address, delivery, payment) with validation
- Confirmation page: order summary, shipping address, bank transfer details
- Fix store context persistence across Livewire AJAX requests via session fallback
- Fix order number URL routing (strip # prefix to avoid URL fragment issue)
- Fix tax display in checkout (template key mismatch: tax vs tax_total)
- Fix tax seeder config key (default_rate_bps -> default_rate)
- 18 new checkout tests, all 335 tests passing (730 assertions)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Install Larastan v3.9.2 for Laravel-aware static analysis and fix all
364 type errors across models, services, Livewire components, jobs,
middleware, and providers. Add @Property PHPDoc annotations to 16+
Eloquent models, type assertions throughout services, and generic
type parameters for collections and relationships.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Define 16 architectural layers (Enums, ValueObjects, Contracts,
Exceptions, Support, Events, Concerns, Traits, Models, Services,
Policies, Observers, Jobs, Controllers, Middleware, Livewire, Actions,
Providers) with strict dependency rules enforcing clean architecture.
All 805 inter-layer dependencies are allowed, 0 violations.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
After authenticating, store the user's first store ID in the session
so the ResolveStore middleware can resolve the admin context. Without
this, admin routes returned 404 after login.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Track storefront UI, PHPStan/Deptrac compliance, admin login fix,
and full review meeting completion.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Fix order confirmation IDOR: scope orders to current store
- Fix checkout IDOR: scope checkout retrieval to current store
- Fix admin fulfillment: use FulfillmentService instead of direct creation
- Fix admin refund: use RefundService instead of direct creation
- Fix discount min purchase key mismatch (min_purchase_amount vs minimum_purchase)
- Fix customer registration: validate email uniqueness per store

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@sonarqubecloud
Copy link

Quality Gate Failed Quality Gate failed

Failed conditions
22 Security Hotspots
9.5% Duplication on New Code (required ≤ 3%)

See analysis details on SonarQube Cloud

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant