Adds a "Симулятор" block that recomputes KPIs against a virtual scenario
without modifying the source data:
- optimization slider: reduce every function's time by 0–80%
- exclude top-N longest functions slider
- exclude an entire auto-stage (dropdown)
- recruiters (FTE) slider: 1–10
- vacancies-per-month slider: 0–50
Output is a side-by-side table (Было / Стало / Δ%) for cycle time,
days, weeks, monthly load, FTE %, capacity, overload, recruiters needed,
and cost. Color-codes improvements green, regressions red.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Adds analyses that don't require new data:
- Pareto cumulative chart (which N functions = 80% of time).
- Duration histogram (bucketed counts).
- Function length donut (short / medium / long).
- Auto-stage classifier by keywords in the function name
(Привлечение / Скрининг / Интервью / Оффер / Адаптация /
Документы-СПП / Коммуникация / Прочее) + horizontal bar.
- Treemap: group -> function, area = minutes.
- "FTE scenario" bar chart: 0..30 vacancies/month with color buckets
(green ≤100%, amber ≤150%, red >150%) and a dashed 100% norm line.
- "Recruiters needed" card: ceil(monthlyDays / 21).
- Sortable table columns + Этап column.
- Top-3 bottleneck rows highlighted (red tint + 🔥).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Adds a "Нагрузка на сотрудника" block: days per cycle, weeks per cycle,
total days/weeks per month at the current vacancy plan, and an
overload/buffer card vs 21 working days a month.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Switched sheet_to_json from array (header:1) to column-letter objects
(header:'A'), so the parser reads B/C/D directly. Previous array
destructuring broke when the sheet's range did not start at column A.
Also added debug logging and a script-tag cache buster.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Dashboard fetches "Функции и вес рекрутинг 2026 (2).xlsx" from the same
directory on load, so opening the page renders the MVP immediately
without requiring a manual upload. Manual upload still works as override.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>