chore(agent-prompts): remove old agent prompt files

This commit is contained in:
Ho Ngoc Hai
2026-02-28 21:48:36 +07:00
parent c838d3627b
commit f52813d9cd
5 changed files with 0 additions and 369 deletions

View File

@@ -1,67 +0,0 @@
# Sub-Agent 1A: Admin Dashboard + Store Management
## Objective
Convert 5 Pencil design files into Blazor Server pages for the Admin module.
## Tech Stack
- **Framework**: Blazor Server (.NET 8) with MudBlazor
- **Styling**: Vanilla CSS using existing `admin.css` tokens (BEM: `.admin-{component}--{variant}`)
- **Icons**: Lucide via `<i data-lucide="icon-name"></i>` (add `lucide.createIcons()` in OnAfterRenderAsync)
- **i18n**: `IStringLocalizer<T>` with locale files at `wwwroot/locales/{vi-VN,en-US}.json`
- **Base class**: Inherit from `AdminBase` at `Pages/Admin/AdminBase.cs`
- **Layout**: Use `@layout AdminLayout` (already created at `Layout/AdminLayout.razor`)
## Design Files (Input)
Read and convert these `.pen` files from `pencil-design/src/pages/tPOS/admin/`:
1. `admin-dashboard.pen``Pages/Admin/Dashboard.razor`
2. `store-list.pen``Pages/Admin/Store/StoreList.razor`
3. `store-detail.pen``Pages/Admin/Store/StoreDetail.razor`
4. `store-create.pen``Pages/Admin/Store/StoreCreate.razor`
5. `store-settings.pen``Pages/Admin/Store/StoreSettings.razor`
## Route Definitions
```
@page "/admin" → Dashboard.razor
@page "/admin/stores" → StoreList.razor
@page "/admin/stores/{Id}" → StoreDetail.razor
@page "/admin/stores/create" → StoreCreate.razor
@page "/admin/stores/{Id}/settings" → StoreSettings.razor
```
## Pattern Reference
Follow the same pattern as `Pages/Auth/LoginCustomer.razor`:
- `@page` directive, `@inherits AdminBase`, `@layout AdminLayout`
- Vietnamese/English bilingual comments with `@* EN: ... VI: ... *@`
- All user-visible text uses `@L["Key"]`
- Add locale keys to both `vi-VN.json` and `en-US.json`
## How to Read .pen Files
Each `.pen` file is JSON with structure:
```json
{
"children": [{ "type": "frame", "children": [...] }],
"variables": { "bg-page": { "type": "color", "value": "#0A0A0B" } }
}
```
- `type: "frame"``<div>`
- `type: "text"` with `content` → text node
- `type: "icon_font"` with `iconFontName``<i data-lucide="icon-name">`
- `fill: "$variable-name"` → use CSS var `--admin-variable-name`
- `layout: "vertical"``flex-direction: column`
- `gap`, `padding`, `cornerRadius` → standard CSS properties
## CSS Guidelines
- Use existing classes from `admin.css` wherever possible
- Add new classes to admin.css only if needed, following BEM naming
- Topbar page title/subtitle: use `admin-topbar__title` and `admin-topbar__subtitle`
- For the Dashboard page, include the topbar directly in the page content area
## Output Files
Create these files:
1. `Pages/Admin/Dashboard.razor` (with KPI cards, store overview, alerts, activity feed)
2. `Pages/Admin/Store/StoreList.razor` (data table with search, filters)
3. `Pages/Admin/Store/StoreDetail.razor` (detail view with stats)
4. `Pages/Admin/Store/StoreCreate.razor` (form with validation)
5. `Pages/Admin/Store/StoreSettings.razor` (settings form)
6. Update `wwwroot/locales/vi-VN.json` — add Admin_Dashboard_*, Admin_Store_* keys
7. Update `wwwroot/locales/en-US.json` — matching English translations

View File

@@ -1,52 +0,0 @@
# Sub-Agent 1B: Admin Staff + Products
## Objective
Convert 11 Pencil design files into Blazor Server pages for Staff and Products modules.
## Tech Stack
Same as Agent 1A — Blazor Server, MudBlazor, admin.css tokens, Lucide icons, IStringLocalizer.
- Inherit from `AdminBase`, use `@layout AdminLayout`
## Design Files (Input)
Read from `pencil-design/src/pages/tPOS/admin/`:
### Staff (6 files)
1. `staff-directory.pen``Pages/Admin/Staff/StaffDirectory.razor`
2. `staff-create.pen``Pages/Admin/Staff/StaffCreate.razor`
3. `staff-schedule.pen``Pages/Admin/Staff/StaffSchedule.razor`
4. `attendance-dashboard.pen``Pages/Admin/Staff/AttendanceDashboard.razor`
5. `payroll-commission.pen``Pages/Admin/Staff/PayrollCommission.razor`
6. `role-permissions.pen``Pages/Admin/Staff/RolePermissions.razor`
### Products (5 files)
7. `product-catalog.pen``Pages/Admin/Products/ProductCatalog.razor`
8. `product-create.pen``Pages/Admin/Products/ProductCreate.razor`
9. `menu-builder.pen``Pages/Admin/Products/MenuBuilder.razor`
10. `modifier-groups.pen``Pages/Admin/Products/ModifierGroups.razor`
11. `pricing-rules.pen``Pages/Admin/Products/PricingRules.razor`
## Route Definitions
```
@page "/admin/staff" → StaffDirectory
@page "/admin/staff/create" → StaffCreate
@page "/admin/staff/schedule" → StaffSchedule
@page "/admin/staff/attendance" → AttendanceDashboard
@page "/admin/staff/payroll" → PayrollCommission
@page "/admin/roles" → RolePermissions
@page "/admin/products" → ProductCatalog
@page "/admin/products/create" → ProductCreate
@page "/admin/menu" → MenuBuilder
@page "/admin/products/modifiers" → ModifierGroups
@page "/admin/products/pricing" → PricingRules
```
## Pattern Reference
Same as Agent 1A — see `Pages/Auth/LoginCustomer.razor` for pattern.
## How to Read .pen Files
Same as Agent 1A — JSON with frames, text, icon_font, variables.
## Output Files
- 11 `.razor` files in respective folders
- Update locale files with Admin_Staff_* and Admin_Products_* keys
- Any new CSS classes added to `admin.css`

View File

@@ -1,120 +0,0 @@
# Sub-Agent 2A: Admin Finance + Inventory
## Objective
Convert 8 Pencil design files into Blazor Server pages for Finance and Inventory modules.
## Tech Stack
Same as Agent 1A — Blazor Server, MudBlazor, admin.css tokens, Lucide icons, IStringLocalizer.
- Inherit from `AdminBase`, use `@layout AdminLayout`
## Design Files (Input)
Read from `pencil-design/src/pages/tPOS/admin/`:
### Inventory (4 files)
1. `inventory-dashboard.pen``Pages/Admin/Inventory/InventoryDashboard.razor`
2. `purchase-orders.pen``Pages/Admin/Inventory/PurchaseOrders.razor`
3. `stock-transfer.pen``Pages/Admin/Inventory/StockTransfer.razor`
4. `supplier-management.pen``Pages/Admin/Inventory/SupplierManagement.razor`
### Finance (4 files)
5. `financial-overview.pen``Pages/Admin/Finance/FinancialOverview.razor`
6. `revenue-analytics.pen``Pages/Admin/Finance/RevenueAnalytics.razor`
7. `expense-management.pen``Pages/Admin/Finance/ExpenseManagement.razor`
8. `tax-configuration.pen``Pages/Admin/Finance/TaxConfiguration.razor`
## Route Definitions
```
@page "/admin/inventory" → InventoryDashboard
@page "/admin/inventory/orders" → PurchaseOrders
@page "/admin/inventory/transfers" → StockTransfer
@page "/admin/inventory/suppliers" → SupplierManagement
@page "/admin/finance" → FinancialOverview
@page "/admin/finance/revenue" → RevenueAnalytics
@page "/admin/finance/expenses" → ExpenseManagement
@page "/admin/finance/tax" → TaxConfiguration
```
## Pattern Reference & .pen Reading
Same as Agent 1A/1B.
## Output Files
- 8 `.razor` files
- Update locale files with Admin_Inventory_* and Admin_Finance_* keys
- New CSS classes in `admin.css` if needed
---
# Sub-Agent 2B: Admin Customer + System
## Objective
Convert 7 Pencil design files into Blazor Server pages.
## Design Files (Input)
Read from `pencil-design/src/pages/tPOS/admin/`:
### Customer (3 files)
1. `customer-database.pen``Pages/Admin/Customers/CustomerDatabase.razor`
2. `customer-feedback.pen``Pages/Admin/Customers/CustomerFeedback.razor`
3. `loyalty-program.pen``Pages/Admin/Customers/LoyaltyProgram.razor`
### System (4 files)
4. `device-management.pen``Pages/Admin/System/DeviceManagement.razor`
5. `integration-hub.pen``Pages/Admin/System/IntegrationHub.razor`
6. `notification-center.pen``Pages/Admin/System/NotificationCenter.razor`
7. `audit-log.pen``Pages/Admin/System/AuditLog.razor`
## Route Definitions
```
@page "/admin/customers" → CustomerDatabase
@page "/admin/customers/feedback" → CustomerFeedback
@page "/admin/loyalty" → LoyaltyProgram
@page "/admin/devices" → DeviceManagement
@page "/admin/integrations" → IntegrationHub
@page "/admin/notifications" → NotificationCenter
@page "/admin/audit" → AuditLog
```
---
# Sub-Agent 2C: POS Screens + Payment
## Objective
Convert 33 Pencil design files into Blazor Server pages for POS module.
## Tech Stack
- Inherit from `PosBase` at `Pages/Pos/PosBase.cs`
- Use `@layout PosLayout` (at `Layout/PosLayout.razor`)
- Styling: `pos.css` tokens with BEM `.pos-{component}--{variant}`
- All other conventions same as Admin agents
## Design Files (Input)
Read from `pencil-design/src/pages/tPOS/pos/shared/`:
### Screens (22 files)
`screens/login.pen`, `screens/quick-sale.pen`, `screens/settings.pen`,
`screens/shift-management.pen`, `screens/clock-in-out.pen`,
`screens/device-setup.pen`, `screens/offline-mode.pen`,
`screens/password-reset.pen`, `screens/pin-entry.pen`,
`screens/pending-orders.pen`, `screens/promo-active.pen`,
`screens/staff-list.pen`, `screens/staff-schedule.pen`,
`screens/stock-count.pen`, `screens/theme-customization.pen`,
`screens/training-mode.pen`, `screens/accessibility.pen`,
`screens/backup-restore.pen`, `screens/biometric-setup.pen`,
`screens/cash-drawer.pen`, `screens/commission-setup.pen`,
`screens/customer-group.pen`
### Payment (11 files)
`payment/method-select.pen`, `payment/cash.pen`, `payment/card.pen`,
`payment/qr.pen`, `payment/bank-transfer.pen`, `payment/gift-card.pen`,
`payment/partial-payment.pen`, `payment/tip-entry.pen`,
`payment/payment-pending.pen`, `payment/receipt.pen`, `payment/success.pen`
## Route Definitions
POS screens: `/pos/{screen-name}` (e.g., `/pos/quick-sale`, `/pos/settings`)
Payment: `/pos/payment/{method}` (e.g., `/pos/payment/cash`, `/pos/payment/card`)
## Output
- 22 POS screen `.razor` files in `Pages/Pos/`
- 11 Payment `.razor` files in `Pages/Pos/Payment/`
- Shared POS components in `Components/Pos/` if reusable patterns emerge
- Locale keys: Pos_*, Pos_Payment_*

View File

@@ -1,95 +0,0 @@
# Sub-Agent 3A: POS Dialogs
## Objective
Convert 47 POS dialog design files into MudDialog components.
## Tech Stack
- **Component type**: MudBlazor `MudDialog` (not full pages)
- **Styling**: `pos.css` tokens
- **Icons**: Lucide via `<i data-lucide="icon-name"></i>`
- **i18n**: `IStringLocalizer<T>` with locale files
- **Location**: `Components/Pos/Dialogs/{DialogName}.razor`
## Design Files (Input)
Read ALL `.pen` files from `pencil-design/src/pages/tPOS/pos/shared/dialogs/`:
barcode-scan, change-calculator, confirmation, coupon-redeem,
customer-add, customer-edit, customer-history, customer-note, customer-search,
data-export, deposit-withdrawal, discount-apply, expense-entry, expiry-warning,
feedback-form, help-support, hold-recall, keyboard-shortcuts,
low-stock-alert, loyalty-reward, loyalty-scan, manager-override,
modifier-select, multi-discount, network-error, open-price,
order-cancel, order-edit, order-reprint, permission-denied, petty-cash,
price-check, printer-error, product-search, quantity-adjust,
role-switch, session-timeout, split-bill, stock-in, stock-out,
stock-transfer, sync-conflict, sync-status, two-factor,
vip-benefits, void-refund, weight-entry
## MudDialog Pattern
```razor
@* EN: Dialog description / VI: Mô tả dialog *@
<MudDialog>
<TitleContent>
<div style="display:flex;align-items:center;gap:10px;">
<i data-lucide="icon-name"></i>
<span>@L["Dialog_Title"]</span>
</div>
</TitleContent>
<DialogContent>
@* Dialog content from .pen design *@
</DialogContent>
<DialogActions>
<MudButton OnClick="Cancel">@L["Dialog_Cancel"]</MudButton>
<MudButton Color="Color.Primary" OnClick="Submit">@L["Dialog_Submit"]</MudButton>
</DialogActions>
</MudDialog>
@code {
[CascadingParameter] IMudDialogInstance MudDialog { get; set; }
private void Cancel() => MudDialog.Cancel();
private void Submit() => MudDialog.Close(DialogResult.Ok(true));
}
```
## Output
- 47 dialog `.razor` files in `Components/Pos/Dialogs/`
- Locale keys: Pos_Dialog_{DialogName}_*
---
# Sub-Agent 3B: POS Reports + Verticals
## Objective
Convert 22 Pencil design files for POS reports and vertical-specific screens.
## Tech Stack
Same POS conventions — inherit `PosBase`, use `@layout PosLayout`, `pos.css`.
## Design Files (Input)
### Reports (8 files) from `pos/shared/reports/`:
`sales-dashboard.pen`, `shift-report.pen`, `tax-report.pen`,
`cash-reconciliation.pen`, `inventory-alert.pen`, `payment-report.pen`,
`staff-performance.pen`, `top-sellers.pen`
### Café (5+1 files) from `pos/cafe/`:
`desktop.pen`, `tablet.pen`, `mobile.pen`,
`barista-queue.pen`, `customer-display.pen`
### Restaurant (3 files) from `pos/restaurant/`:
`desktop.pen`, `tablet.pen`, `mobile.pen`
### Karaoke (3 files) from `pos/karaoke/`:
`desktop.pen`, `tablet.pen`, `mobile.pen`
### Spa (3 files) from `pos/spa/`:
`desktop.pen`, `tablet.pen`, `mobile.pen`
## Route Definitions
Reports: `/pos/reports/{report-type}`
Verticals: `/pos/{vertical}/{view}` (e.g., `/pos/cafe/desktop`)
## Output
- 8 Report pages in `Pages/Pos/Reports/`
- Vertical pages in `Pages/Pos/Cafe/`, `Pages/Pos/Restaurant/`, etc.
- Locale keys: Pos_Report_*, Pos_Cafe_*, Pos_Restaurant_*, etc.

View File

@@ -1,35 +0,0 @@
# Sub-Agent 4: Admin Onboarding Wizard
## Objective
Convert 6 Pencil onboarding files into a multi-step wizard flow.
## Tech Stack
Same Admin conventions — inherit `AdminBase`, use `@layout AdminLayout`, `admin.css`.
## Design Files (Input)
Read from `pencil-design/src/pages/tPOS/admin/`:
1. `onboarding-business.pen` → Step 1: Business info
2. `onboarding-store.pen` → Step 2: Store setup
3. `onboarding-products.pen` → Step 3: Product catalog
4. `onboarding-staff.pen` → Step 4: Staff setup
5. `onboarding-device.pen` → Step 5: Device pairing
6. `onboarding-ready.pen` → Step 6: Ready to go!
## Route Definitions
```
@page "/admin/onboarding" → OnboardingWizard.razor (all steps)
@page "/admin/onboarding/{Step}" → Same component, step parameter
```
## Implementation Notes
- Create a SINGLE `OnboardingWizard.razor` with step navigation
- Use MudStepper or custom stepper component
- Each step renders content based on `{Step}` parameter
- Include progress indicator, back/next buttons
- Final step: celebration + redirect to `/admin`
## Output
- `Pages/Admin/Onboarding/OnboardingWizard.razor`
- `Components/Admin/OnboardingStep.razor` (reusable step wrapper)
- Locale keys: Admin_Onboarding_*
- Wire up the route from the admin layout's sidebar