


Every stage issues certified control totals. The next stage opens by verifying them. If a link breaks — we stop. We never decorate bad numbers.
One paste. Copilot runs a six-station protocol on your two files — proving every number in code before anything moves forward.
This prompt operates on the two raw files: [FILE_A] and [FILE_B]. You are a deterministic data-preparation engine. Before ANY merge, aggregation, or analysis, run the full cleaning protocol below on every input file. Use code (Python/pandas) for every check — never estimate or eyeball. Do not skip a step even if the data "looks clean". STEP 1 — PROFILE (read-only): For each file: row count, columns, types; nulls/blanks/whitespace-only per column; for text columns list distinct values and flag variants differing only by case, leading/trailing spaces, double spaces, or invisible characters; for numeric-looking columns count values stored as text (thousands separators, currency symbols, parentheses); duplicates — (a) fully duplicated rows, (b) duplicated IDs with DIFFERENT data (list separately, needs a human decision); dates stored as text or outside the expected period. Output a Data Quality Report: issue, column, row count, affected sum, examples. STEP 2 — JOIN KEYS: Declare which columns will join the files. Per key column, compare distinct values across files: only-in-A, only-in-B, and near-matches (equal after trim/case-fold = formatting bugs). Flag orphan keys; do NOT silently drop or keep — list with the financial impact of each option. STEP 3 — CLEAN (log every change): (1) trim/collapse whitespace in all text columns; (2) normalize case on categorical/key columns to the most frequent variant; (3) convert numeric-text to numbers (strip separators/symbols, parentheses=negative); unconvertible = NULL and listed, never zero silently; (4) remove fully duplicated rows (report count and sum); (5) duplicated keys with different values: STOP and ask which to keep or whether to sum; (6) orphan keys: STOP and ask — exclude, keep flagged, or map; (7) NULL amounts: STOP and ask — exclude or keep as NULL (never auto-zero); (8) parse dates to date type. STEP 4 — VALIDATE (hard gates): control totals before vs after cleaning reconciled line-by-line to the log — every unit of value accounted for; row counts reconciled; key integrity across files; no amount column contains text, no key column contains whitespace/case variants. Any gate fails = stop and report. STEP 5 — OUTPUT: If you stopped at unresolved decisions: save "_ALMOST_CLEAN" files (automatic rules applied, pending decisions untouched) + an Open Decisions list (item, options, monetary impact each). _ALMOST_CLEAN is NOT certified and must never be merged. After the user rules: save final "_CLEAN" files, each with a Cleaning Log sheet (every change, rule, rows, monetary impact) and a Data Quality Summary (issues, decisions, final control totals). Only _CLEAN files proceed to the merge stage. HARD RULES: never fill, guess, or interpolate; never drop rows without listing them; every decision point stops and asks with options + monetary impact; all sums verified in code.



One paste with the _CLEAN files. Copilot designs the join before running it — and proves the result matches the prediction.
This prompt operates on the cleaned files from the previous stage: [FILE_A]_CLEAN and [FILE_B]_CLEAN. Refuse any input without the _CLEAN suffix. You are a deterministic data-integration engine producing ONE merged, enriched, analysis-ready file — the single source of truth for a dashboard with filters, trends, and segmentations. Everything in code, reproducible, nothing decided silently. STEP 0 — VERIFY INPUTS: re-verify each file's control totals against its Cleaning Log. These are the anchors every later number must reconcile to. Mismatch = stop. STEP 1 — DESIGN THE JOIN (declare before executing): identify the full key combination defining matching granularity; prove each file's grain in code (rows per key combination); if grains differ, declare the handling: keep the transaction-grain side at full granularity and attach the key-grain side's amount via an allocated column — [AMOUNT]_Allocated equals the amount on exactly ONE row per key (first by date, tie-break by ID), NULL on others; all downstream totals and calculations use ONLY the allocated column. Choose join type with justification — default FULL OUTER, never inner (inner silently drops unmatched rows). Predict the output row count BEFORE joining; after joining, actual must equal predicted or stop and diagnose. STEP 2 — EXECUTE: join on declared keys only; add Match_Status (Matched/Left_Only/Right_Only) — nothing dropped; immediately reconcile every amount column's sum (allocated where applicable) to its source, overall and per dimension. Mismatch = stop. STEP 3 — ENRICH (add, never overwrite): comparison fields (variance absolute and %, NULL when denominator is 0 — never divide by zero, never fill 0); time fields for trends (sortable period components + a true chronological sort key); classification fields by explicit declared rules; carry single-source dimensions with NULL where unmatched. Document every derived column in a Data_Dictionary sheet: name, formula, source columns, null policy. STEP 4 — GRANULARITY: output stays at the most granular level — no pre-aggregation, no subtotal rows. Every dashboard dimension is its own clean column. Verify in code: aggregating by each dimension reproduces the anchors. STEP 5 — OUTPUT: one file "[NAME]_MERGED" with sheets: Data (flat table, one header row, proper types), Data_Dictionary, and Reconciliation (row-count equation, control totals source vs merged overall + per dimension, unmatched inventory with amounts, declared join design and allocation rules). State that this file must pass the validation prompt before any dashboard. HARD RULES: full outer by default; no value invented, no null filled, no row dropped; grain stays maximal; every formula recomputable; any reconciliation mismatch = stop.

192 rows exactly as predicted, reconciled totals, three sheets — and a reminder that nothing touches a dashboard before the audit passes.
One paste with the _MERGED file and its _CLEAN sources. Copilot becomes an auditor: it judges, it fixes nothing — PASS or FAIL, computed on 100% of rows.
This prompt operates on [NAME]_MERGED against its _CLEAN sources. Run a deterministic merge-and-aggregation audit. You are an auditor: PASS or FAIL, you fix nothing. Every check in Python/pandas on 100% of rows. One failed check = overall FAIL. All expected values are COMPUTED at runtime from the _CLEAN sources and the Reconciliation sheet — never hard-coded. GATE 0 — CONTRACT: sources must carry _CLEAN (an _ALMOST_CLEAN file = hard FAIL, unresolved decisions). Verify source control totals against their Cleaning Logs and confirm user decisions are reflected in the data. The _MERGED file must contain Data, Data_Dictionary, Reconciliation; read declared keys, join type, grain/allocation rules, predicted row count as the contract. GATE 1 — COMPLETENESS: merged row count = predicted, reconciled independently from source key structure. Anti-join each source vs Data: every source row present. Reverse anti-join: no fabricated rows. Match_Status counts and amounts = the Reconciliation inventory. GATE 2 — CONTROL TOTALS: every amount column's sum in source vs merged, to the cent. If the contract declares an allocated column: non-NULL on exactly one row per key; its sum equals the source total; ALL aggregations and derived fields use it, never the repeated original. Re-aggregate by EVERY filter dimension — each roll-up reproduces source-computed totals (offsetting group errors hide under a matching grand total). Per-group row counts. GATE 3 — JOIN INTEGRITY: prove no fan-out — no source amount appears more times than the contract allows. Spot-check 10 random keys + 5 largest amounts field-by-field vs source. No value altered in transit (string/numeric/date exact). GATE 4 — SCHEMA & DASHBOARD-READINESS: flat table, single header, no subtotals/merged cells/spacers; amounts numeric with zero text values; dates typed with a true chronological sort key (not alphabetical); filter columns free of whitespace/case variants/near-duplicates; every column in Data_Dictionary; no NULLs beyond declared policy. GATE 5 — DERIVED FIELDS: recompute every derived column from its dictionary formula row-by-row, zero tolerance; NULL/zero denominators yield NULL (never 0, inf, or 100%); decision-affected rows behave per policy. VERDICT: table of gate/check/expected(computed)/actual/PASS-FAIL. On PASS: emit a Certified Control Totals block (overall + per dimension + row count) — the dashboard stage must open by matching it exactly. On FAIL: stop, list exact failing rows/groups/amounts + root cause + which stage to redo. Never explain away a discrepancy.

51 of 51 checks passed — and the certification carries forward: the dashboard must reproduce these certified totals exactly.
One paste with the validated _MERGED and its certified totals. Copilot builds the morning cockpit — and must recalculate the workbook in code before delivering it.
This prompt operates on the validated [NAME]_MERGED (audit PASS) and its Certified Control Totals block. You are a deterministic dashboard builder producing a self-contained Excel dashboard workbook. Every number computed in code from the Data sheet — nothing typed, nothing estimated. GATE 0: refuse input without audit PASS. Re-aggregate Data and match the Certified Control Totals exactly (overall, per dimension, row count) before building anything. Use ONLY columns the Data_Dictionary designates for calculation (allocated columns, never repeated originals). CAPABILITY FALLBACK (declared up front): if native PivotTables/slicers cannot be generated, do NOT stop and do NOT degrade to static summaries — implement the formula equivalent: a Filters panel of Data Validation dropdowns (values from Data + "All"), all KPIs/tables/chart ranges driven by SUMIFS referencing the dropdowns, cross-tabs built with formulas from full granular Data. Only if BOTH paths are impossible may you stop. FORMULA COMPATIBILITY (prevents #VALUE!/#NAME?): only classic functions — SUMIFS, COUNTIFS, AVERAGEIFS, INDEX, MATCH, IFERROR, SUMPRODUCT, IF, AND, OR. Never FILTER, IFS, TEXTJOIN, LET, LAMBDA, XLOOKUP, UNIQUE, SORT or any dynamic-array function. No CSE array formulas. "All" handled by explicit IF branches (wildcards only on text). Bounded ranges only, headers excluded. IFERROR only on display cells — never on PASS/FAIL check cells. MORNING COCKPIT STANDARD: charts MUST react to filters — every chart bound to a formula-driven staging area that recomputes from the dropdowns; a chart on static ranges = FAIL. KPI cards styled (fill, large bold number, semantic green/red by conditional formatting), data bars on rankings, direction arrows, heatmap cross-tabs, filters panel pinned top-left, frozen panes, no gridlines, chart titles phrased as executive questions. SHEETS: (1) Dashboard — KPI strip (each total, variance abs+%, match rate, anomaly count) + 4-6 charts: chronological trend (by sort key, never alphabetical), composition, entity comparison, variance ranking; (2) Trends — period-over-period values/changes with reversal marks; (3) Segmentation — cross-tabs with a live formula-based PASS/FAIL check row vs certified totals; (4) Anomalies & Red Flags — computed rules listed next to results: variance outliers, statistical outliers (state method), unmatched rows, NULL amounts, concentration risks, trend breaks; severity by declared monetary bands; (5) Action Items — one per flag: what to check, owner from data if present, impact, evidence reference; nothing generic; (6) Reconciliation — certified vs computed totals with live PASS/FAIL cells + all thresholds declared once and referenced everywhere. PRE-DELIVERY GATE: open and recalculate the workbook in code (LibreOffice headless or formula-evaluation library); confirm ZERO error values on all sheets; KPIs at "All" equal Certified Control Totals; change a filter in code and confirm staging ranges updated (chart reactivity). Report all checks. An unrecalculated workbook is not deliverable. Close by stating the dashboard totals — the handoff contract for the next stage.

KPIs matching the certified totals, filters that drive every chart, and cost-center variance ranked by monetary impact — reds first.
One paste with the validated _MERGED and its certified totals. Copilot builds a single self-contained HTML file — no CDN, works offline, double-clicked from disk.
This prompt operates on the validated [NAME]_MERGED (audit PASS) and its Certified Control Totals block. Build ONE fully self-contained executive-grade interactive HTML dashboard: all data embedded as JSON, ALL libraries embedded in full inside the file (no CDN, no external scripts/fonts/CSS — must work offline, double-clicked from disk). Init only after DOMContentLoaded and after embedded library tags; if a library object is undefined at init, show a visible error banner naming it — never fail silently. Verify embedded library integrity (length/checksum vs official build). GATE 0: extract Data to JSON; embedded row count and sums must equal the Certified Control Totals, computed and compared in code before writing HTML. Use only Data_Dictionary calculation columns (allocated, never repeated originals). Render a live Data Integrity badge in the footer: certified vs browser-computed totals, recalculated by JS on load; divergence turns it red with the delta. DESIGN — MORNING COCKPIT: big picture first, details on demand: (1) KPI strip, (2) trend + composition, (3) segment explorer, (4) anomalies & actions, (5) granular table. Restrained premium aesthetic: one accent color + semantic red/green, neutral background, card layout, consistent typography, tooltips everywhere, responsive, RTL-safe for Hebrew labels. Executive number formatting (separators, compact 1.2M, signed colored variance). Every chart carries a one-line data-computed "so what" caption. Target flow: read KPIs in ten seconds, spot the reds, reach evidence rows within two clicks. SECTIONS: KPI cards (value, context vs budget/prior, sparkline, status color, click scrolls to detail); chronological trend chart (sort key, never alphabetical) with absolute/change toggle; composition donut + stacked bars over time, slices click-to-filter; variance ranking; GLOBAL FILTER BAR pinned on top — multi-select per dictionary filter dimension, All default, one-click reset, active filters as removable chips; EVERYTHING recomputes AND re-renders on filter change — charts visibly redraw via chart.data + chart.update() (never recreate instances leaving stale listeners — causes handleEvent TypeErrors; if recreation is needed, destroy() first); segment explorer — user-picked row/column dimensions, heatmap cross-tab, cell click drills to underlying rows, breadcrumb, CSV export; anomalies — the same computed rules and thresholds as the Excel stage, severity chips, click-through filters the table to evidence rows; action items derived strictly from flags; granular table — sortable, searchable, filter-aware, paginated, exportable. USABILITY: feature-detect every capability at load — if Blob downloads are blocked, exports fall back to a modal with selectable content + copy-to-clipboard; if that fails too, HIDE the button. A visible dead button is a bug. All thresholds in one visible config block. PRE-DELIVERY GATE: run in a headless browser with network DISABLED; scripted interaction pass — load, apply every filter, click every button, drill down, export, reset; confirm ZERO console errors, every control functional, all charts rendered; verify unfiltered browser totals = Certified Control Totals and 3 filter combinations match the same computed in pandas; verify a load-time self-test that programmatically applies a filter and asserts every chart dataset changed. Report all checks with the delivery.
This is the actual file Copilot produced. Filter, drill, explore — the integrity badge at the bottom is re-proving the totals right now.
One paste with the dashboard workbook. Copilot turns certified numbers into the management story — opening, insights, flags, actions — under the NiCE brand system.
This prompt operates on [EXCEL_DASHBOARD_FILE] — the validated dashboard workbook — and its Certified Control Totals block. Build an executive PowerPoint (.pptx) for management: opening, agenda, executive summary, insights & trends, issues & red flags, action items, thank-you. Every number comes from the workbook sheets (Dashboard, Trends, Anomalies & Red Flags, Action Items, Reconciliation) — nothing invented, nothing estimated. GATE 0: re-aggregate the workbook data and match the Certified Control Totals exactly before creating any slide. Any KPI shown on a slide must equal the certified value to the cent. BRAND SYSTEM (NiCE brand guidelines, hardened — do NOT fetch the brand PDF, it may be unreachable; these tokens are the contract): colors — Charcoal #21212b, White #ffffff, NiCE blue #3694fc, Electric blue #025afb, Electric indigo #6100ff, Warm white #f2f0eb for panels; semantic green #00e2a0 / coral #ff5b8a ONLY for favorable/unfavorable variance. Backgrounds: white or charcoal only, one accent color per slide. Typography: Be Vietnam Pro if installed, otherwise Arial (the brand-approved system fallback) — declare the fallback explicitly, never leave the library default. Writing rules: sentence case everywhere, no ALL-CAPS headlines, and the name is always written NiCE (capital N, C, E, lowercase i). Logo: only a provided image file, per the INPUTS rule below. INPUTS (resolve from here, do not stop to ask): presenter name = [PRESENTER_NAME]. Logo: if a logo image file is attached to this chat, place it on the opening and closing slides; if none is attached, proceed WITHOUT any logo — a clean typographic header in the brand colors. Never draw a substitute logo and never type the wordmark as decorated text. STRUCTURE (16:9, one message per slide): (1) Opening — title, subtitle, date, presenter name; (2) Agenda — the sections ahead; (3) Executive summary — KPI strip matching certified totals, variance colored semantically; (4-6) Insights & trends — each slide: one headline finding phrased as a statement, one supporting chart, one computed so-what line; (7) Issues & red flags — ranked by monetary impact with severity chips, from the Anomalies sheet only; (8) Action items — table: what, owner (from data if present), monetary impact, severity, evidence reference; (9) Thank you. COPILOT FAILURE MODES — PREVENT EXPLICITLY: 1. Charts: build native pptx charts fed through proper chart-data objects (python-pptx CategoryChartData), or embed chart images exported from computed data. NEVER pass inline junk or empty series — after building, assert every chart has at least one series with more than zero points. 2. Text overflow: max 5 bullets per slide, each up to 12 words; declared font sizes (title 32-40pt, body 18-20pt); content that exceeds the limit is split into another slide — never shrunk to unreadable, never clipped. 3. Placeholders: zero occurrences of "[", "TBD", "XXX", "Lorem", "placeholder" in any text frame — audited in code. 4. Fabrication: every figure on every slide must trace to a workbook cell or a computed aggregate of workbook cells. If the data cannot support a claim, the slide does not make it. 5. Layout drift: one slide master, consistent margins, no random theme colors — only the declared tokens. LAYOUT ENGINE — GRID DISCIPLINE (prevents overlaps): treat every slide like an HTML grid. Define explicit non-overlapping zones with fixed coordinates (header band, content columns, footer); every element lives inside exactly ONE zone and must fit within it. No two elements' bounding boxes may intersect. Z-order: text is ALWAYS on top — a decorative shape may never cover any part of a text frame; if a shape and text share a zone, the shape is a background panel and the text sits fully inside its padding. After building, run an overlap audit in code: per slide, compute the bounding box of every shape and text frame and assert zero intersections (the only allowed case: a background panel that fully contains its text). Any intersection = rebuild that slide. PRE-DELIVERY GATE (in code, reported with the delivery): open the generated .pptx and verify — declared slide count; zero placeholder strings; every chart series non-empty; fonts are Be Vietnam Pro or Arial only; every KPI equals the certified totals; brand colors only; and the overlap audit passes with zero intersections. A deck that has not passed this audit is not deliverable.
Certified numbers, brand-clean design, one message per slide — built from the dashboard, not from imagination.

