صفحة داخلية للمراجعةدليل متصفحنموذج قراءة محليبلا تعديل

دليل المتصفح لمعاينة طباعة فاتورة مبيعات

صفحة داخلية للمراجعة وليست شاشة إدخال نهائية.

خطوات تحقق يدوية بلا ملفات مولدة

للتحقق اليدوي، شغل تطبيق web محليا ثم افتح /accounting/sales-invoice/print-preview في المتصفح. راجع أن المستند يظهر من local printable read-model، وأن route reachability وreadability وlegacy document parity وPDF/export/download blockers وAI review-only evidence ظاهرة. لا تلتزم بصور شاشة أو tmp outputs أو أي generated artifacts.

Route/read-model evidence matrix

مصدر العرض هو Wave 242 local printable read-model for /accounting/sales-invoice/print-preview. لا يوجد backend read-model endpoint ولا API fetch ولا server action.

Route reachability / قابلية فتح المسار/accounting/sales-invoice/print-previewافتح المسار في المتصفح وتحقق أن عنوان معاينة طباعة فاتورة مبيعات V1 يظهر من App Router file.
Read-model source / مصدر القراءةapps/web/app/accounting/sales-invoice/print-preview/sales-invoice-printable-read-model.tsالصفحة تستخدم local printable read-model باسم salesInvoicePrintableReadModel ولا تعتمد على endpoint.
Static browser preview / معاينة ثابتةlocal-only browser previewالمعاينة تعرض بيانات محلية فقط: header, identity, scope, customer, account context, line items, totals, memo, and signatures.
No accounting mutation / بلا تغيير محاسبيnon-mutatingلا يوجد save أو draft-save أو approval أو posting أو journal أو stock أو audit أو domain أو outbox mutation.

Browser smoke checklist

هذا checklist يدعم browser-testable evidence بلا screenshots ولا tmp outputs ولا generated artifacts. الهدف إثبات route reachability وغياب PDF/export/download.

Start web app locally / تشغيل الواجهة محلياpnpm --filter @lebanon-accounting/web devNext.js serves the web app on a local port without adding files.
Open parent sales invoice route / فتح شاشة الفاتورة/accounting/sales-invoiceThe browser shows the sales invoice shell and browser-only links.
Open print preview route / فتح معاينة الطباعة/accounting/sales-invoice/print-previewThe browser shows معاينة طباعة فاتورة مبيعات V1.
Open browser evidence route / فتح دليل المتصفح/accounting/sales-invoice/print-preview/browser-evidenceThe browser shows دليل المتصفح لمعاينة طباعة فاتورة مبيعات.
Verify both routes return 200 OK / تحقق من HTTPcurl -I each routeRoutes return HTTP 200 OK when the local server is running.
Verify static build lists routes / تحقق من buildpnpm buildBuild output lists the sales invoice print preview and browser evidence routes.
Verify no generated artifacts are staged / تحقق من الملفاتgit status --shortNo screenshots, tmp outputs, image files, archives, .next, dist, or coverage files are staged.

Visual/readability checklist

Visible check / فحص مرئيbrowser-readableرأس الشركة وعنوان فاتورة المبيعات واضحان في أول مساحة قابلة للمراجعة.
Visible check / فحص مرئيbrowser-readableنوع الفاتورة ورقم الفاتورة وتاريخ الفاتورة ومرجع العميل ظاهرة كحقول placeholder.
Visible check / فحص مرئيbrowser-readableسياق الشركة والسنة والفترة يبقى ظاهرا قبل أي حفظ أو ترحيل.
Visible check / فحص مرئيbrowser-readableسياق العميل وحساب الذمم وحساب الإيراد لا يختلط مع ledger truth.
Visible check / فحص مرئيbrowser-readableجدول line items يعرض item code/name, quantity, unit, unit price, discount, tax/VAT, line total.
Visible check / فحص مرئيbrowser-readabletotals grid يعرض subtotal, discount total, taxable amount, VAT/tax total, grand total, currency.
Visible check / فحص مرئيbrowser-readablememo/notes والتواقيع محفوظة كمناطق قراءة محلية قابلة للمراجعة.
Visible check / فحص مرئيbrowser-readablePDF/export/download blockers وAI review-only note ظاهرة بوضوح.

Legacy document parity checklist

Legacy parity / مطابقة المستند القديمlocal evidenceCompany/document header represented locally.
Legacy parity / مطابقة المستند القديمlocal evidenceInvoice identity represented as safe placeholders.
Legacy parity / مطابقة المستند القديمlocal evidenceAccounting scope represented locally with company, fiscal year, and period.
Legacy parity / مطابقة المستند القديمlocal evidenceCustomer/party/account context represented as display-only context.
Legacy parity / مطابقة المستند القديمlocal evidenceLine items represented with item code/name, quantity, unit, unit price, discount, tax/VAT, line total.
Legacy parity / مطابقة المستند القديمlocal evidenceTotals represented with subtotal, discount total, taxable amount, VAT/tax total, grand total, and currency.
Legacy parity / مطابقة المستند القديمlocal evidenceMemo and prepared/reviewed/received/signature placeholders represented locally.
Legacy parity / مطابقة المستند القديمlocal evidenceOperational print/export parity remains blocked until renderer, storage, delivery, authorization, audit, and backend read-model contracts exist.

Legacy visual acceptance matrix

هذه matrix تحول المعاينة إلى acceptance evidence: expected visible area، سبب legacy parity، وV1 blocker إذا لم تكتمل.

Company/document headerLegacy printed invoices start with company identity and document title.Complete branding, legal footer, and renderer-specific layout remain blocked.
Invoice number/date/type/customer referenceLegacy users identify the invoice by type, number, date, and customer reference.Number, date persistence, and final customer reference truth remain placeholders until save/read contracts exist.
Accounting scopeCompany, fiscal year, and period must stay visible for accounting review.Persisted scope IDs and backend read-model state remain blocked.
Customer/party/account contextLegacy review depends on customer, receivable, and revenue account context before printing.Persisted party/account lookup truth remains blocked.
Line itemsA printable sales invoice must show item code/name, quantity, unit, unit price, discount, tax/VAT, and line total.Saved lines, stock direction, and posting truth remain blocked.
TotalsA printable sales invoice must show subtotal, discount total, taxable amount, VAT/tax total, grand total, and currency.Final tax, currency, exchange, and rounding contracts remain blocked.
Memo/notesPrintable invoices need a notes area for human review.Persisted document notes and template storage remain blocked.
Prepared/reviewed/received/signaturesLegacy forms reserve signature lines for workflow accountability.Approval workflow, signer identity, and audit lifecycle remain blocked.
AI review-only noteAI can help reviewers understand visible gaps without becoming truth.AI-created accounting truth and operational report output remain blocked.
Blocked PDF/export/downloadThe page must be honest that reports are not operational yet.Renderer, storage, delivery, authorization, and download remain blocked.

Print/readiness failure-state matrix

إذا ظهرت أي failure signal، فالاستجابة الآمنة هي إبقاء workflow محليا ومقروءا في المتصفح مع منع action الحي حتى يوجد عقد حقيقي.

Route not reachableTreat browser evidence as not proven; use build output and local server logs to diagnose.Do not claim browser reachability or report readiness.
Read-model missingKeep the preview blocked until salesInvoicePrintableReadModel is restored.Do not wire backend fetch or create replacement invoice truth.
Layout labels missingRestore visible واجهة عربية invoice labels before any owner acceptance claim.Do not accept V1 visual parity.
Line table or totals missingRestore line items and totals grid before claiming legacy document parity.Do not claim sales invoice print/readiness progress.
PDF/export accidentally enabledRemove the action and return to browser-only evidence.Do not produce files, downloads, packages, or renderer output.
AI shown as accounting truthChange AI wording back to review-only helper context.Do not use AI to create invoice truth, customer truth, approvals, postings, or report output.
Backend mutation accidentally addedRemove mutation wiring and keep route static/local until a real contract is approved.Do not save, draft-save, approve, post, create journals, mutate stock, or write audit/domain/outbox state.

PDF/export/download blockers

Blocked report action / إجراء تقرير ممنوعblockedPDF/export/download blocked: no report renderer exists.
Blocked report action / إجراء تقرير ممنوعblockedPDF/export/download blocked: no persisted print template exists.
Blocked report action / إجراء تقرير ممنوعblockedPDF/export/download blocked: no file storage or delivery authorization exists.
Blocked report action / إجراء تقرير ممنوعblockedPDF/export/download blocked: no backend read-model endpoint exists.
Blocked report action / إجراء تقرير ممنوعblockedPDF/export/download blocked: no audit or report-delivery lifecycle exists.
Blocked report action / إجراء تقرير ممنوعblockedPDF/export/download blocked: no print package or file output is wired.

AI review-only/non-mutating evidence

Missing-field reviewAI may explain visible placeholder fields and blocked areas.AI cannot invent invoice number, customer truth, ledger truth, approval, posting, print, export, download, or report output.
Readable preview summaryAI may summarize the visible browser preview for human review.AI cannot create accounting truth or replace the local printable read-model.
Report readinessAI may describe renderer, storage, delivery, endpoint, and audit blockers.AI cannot produce an operational report or file artifact.

No generated artifact policy

Artifact policy / سياسة الملفاتsource-only evidenceManual browser checks may inspect the route locally without committing screenshots.
Artifact policy / سياسة الملفاتsource-only evidenceDo not stage screenshots, tmp outputs, image files, archives, browser cache artifacts, or file outputs.
Artifact policy / سياسة الملفاتsource-only evidenceThis evidence page is the committed evidence surface; runtime visual proof stays local and unstaged.
Artifact policy / سياسة الملفاتsource-only evidenceNo PDF/export/download artifact is produced by this route.

Eli owner acceptance panel

Eli/V1 owner acceptance panel: قبول preview مرئي وآمن للـ V1، وليس قبول report renderer أو backend workflow. لا يوجد external owner decision blocker لهذه المعاينة المحلية.

What Eli should visually checkV1 owner evidenceHeader, invoice type/date/number/customer reference placeholders, scope, customer/account context, line items, totals, memo, signatures, blockers, and AI review-only note.
What is accepted for V1V1 owner evidenceA browser-readable local sales invoice print preview from a typed read-model, with route evidence and honest blocked actions.
What remains blocked after V1 previewV1 owner evidenceBackend read-model endpoint, save lifecycle, approval, posting, journal creation, stock mutation, renderer, PDF/export/download, storage, delivery, audit, and operational report output.
No external owner decision blockerV1 owner evidenceThe browser preview can be accepted as a V1-safe local evidence surface without waiting for owner decisions about live reports or backend mutations.