# SatelliteHR e2e — bugs found 14 Oct 2026, 21:28 IST · **1 new failures · 14 open bugs · 7 sheet gaps · 1 now passing** 66 passed · 22 failed · 2 skipped · run failed ## New failures — drift or new bugs (1) Not tied to a logged issue in the test. A baseline failure means the tenant configuration changed: the diff shows what. Triage each one: log it in ISSUES.md, revert the change, or accept it by updating the baseline. ### leave policies @pr › policy set matches the reviewed baseline `tests/contract/policies.spec.ts:21` ``` Error: expect(string).toMatchSnapshot(expected) failed @@ -144,11 +144,11 @@ "name": "Paid Time Off — handbook 16.1", "accrual": { "rate": 1.25, "frequency": "monthly", "proration": true, - "waitingDays": 30 + "startNextMonth": true }, "carryForward": { "maxDays": 30 }, ``` ## Open bugs — still reproduce (14) Logged in ISSUES.md. Each assertion states the correct behaviour; the error shows what the platform did instead. ### known bugs: data integrity @pr @known-bug › ISS-422 · punch times are stored as real UTC **ISS-422: the server stores IST wall time with a Z suffix (5h30 ahead)** https://satellitehr-qa-issues.pages.dev/ISS-422 `tests/contract/data-integrity.spec.ts:15` ``` Error: server "now" 2026-10-14T21:28:32Z vs real UTC 2026-10-14T15:58:32.538Z expect(received).toBeLessThan(expected) Expected: < 10 Received: 329.99103333333335 ``` ### known bugs: data integrity @pr @known-bug › ISS-440 · nobody is credited leave types restricted to another gender, or more than the yearly entitlement **ISS-440: male employees hold Maternity Leave; Wedding/Floating/Bereavement credited twice** https://satellitehr-qa-issues.pages.dev/ISS-440 `tests/contract/data-integrity.spec.ts:22` ``` Error: expect(received).toEqual(expected) // deep equality - Expected - 1 + Received + 6 - Array [] + Array [ + "Aarav Krishnamurthy.: maternity 182", + "Kavya Raghunathan: paternity 5", + "Test Interviewer One: paternity 5", + "Test Interviewer Two: maternity 182", + ] ``` ### known bugs: data integrity @pr @known-bug › ISS-446 · no PTO is credited before the policy’s waiting period ends **ISS-446: a 1 Oct joiner was credited October PTO on 9 Oct, inside the waiting period (waitingDays 30, now startNextMonth)** https://satellitehr-qa-issues.pages.dev/ISS-446 `tests/contract/data-integrity.spec.ts:45` ``` Error: expect(received).toEqual(expected) // deep equality - Expected - 1 + Received + 3 - Array [] + Array [ + "2026-10-09 1.25 policy_entitlement:2026-10", + ] ``` ### known bugs: data integrity @pr @known-bug › ISS-447 · the Service Leave policy form shows its rule without a validation error **ISS-447: blank accrual and "Entitlement can't be negative" on open** https://satellitehr-qa-issues.pages.dev/ISS-447 `tests/contract/data-integrity.spec.ts:73` ``` Error: expect(locator).toHaveCount(expected) failed Locator: getByRole('dialog').filter({ hasText: /Edit policy/ }).last().getByText(/Entitlement can't be negative/) Expected: 0 Received: 1 Timeout: 30000ms Call log: - Expect "toHaveCount" getByRole('dialog').filter({ hasText: /Edit policy/ }).last().getByText(/Entitlement can't be negative/) with timeout 30000ms - waiting for getByRole('dialog').filter({ hasText: /Edit policy/ }).last().getByText(/Entitlement can't be negative/) 62 × locator resolved to 1 element - unexpected value "1" ``` ### known gaps: permissions @pr @known-bug › ISS-444 · mgr can save the roster it is shown (rows 36–37) **ISS-444: reporting managers, department heads and HR SPOC are refused (403) on roster saves** https://satellitehr-qa-issues.pages.dev/ISS-444 `tests/contract/permissions.spec.ts:41` ``` Error: expect(received).toBe(expected) // Object.is equality Expected: false Received: true ``` ### known gaps: permissions @pr @known-bug › ISS-444 · dh can save the roster it is shown (rows 36–37) **ISS-444: reporting managers, department heads and HR SPOC are refused (403) on roster saves** https://satellitehr-qa-issues.pages.dev/ISS-444 `tests/contract/permissions.spec.ts:41` ``` Error: expect(received).toBe(expected) // Object.is equality Expected: false Received: true ``` ### known gaps: permissions @pr @known-bug › ISS-444 · spoc can save the roster it is shown (rows 36–37) **ISS-444: reporting managers, department heads and HR SPOC are refused (403) on roster saves** https://satellitehr-qa-issues.pages.dev/ISS-444 `tests/contract/permissions.spec.ts:41` ``` Error: expect(received).toBe(expected) // Object.is equality Expected: false Received: true ``` ### leave policies @pr › PTO: 1.25 days a month after 30 days, carry-forward 30, LOP fallback (rows 48–51, 60) **ISS-450: since 14 Oct the PTO policy has startNextMonth instead of the 30-day waiting period** https://satellitehr-qa-issues.pages.dev/ISS-450 `tests/contract/policies.spec.ts:28` ``` Error: expect(received).toMatchObject(expected) - Expected - 1 + Received + 0 Object { "frequency": "monthly", "rate": 1.25, - "waitingDays": 30, } ``` ### known bugs: workflows @pr @known-bug › ISS-452 · the long-leave threshold used by leave approval is a visible parameter **ISS-452: routing works since 14 Oct, but param lv.long_leave_days is still not defined, so the 3-day threshold is a hidden default no one can see or change** https://satellitehr-qa-issues.pages.dev/ISS-452 `tests/contract/workflows.spec.ts:105` ``` Error: expect(received).toContain(expected) // indexOf Expected value: "lv.long_leave_days" Received array: ["ext.ceo_pack_sla", "ext.clearance_trigger", "ext.counteroffer_issue_sla", "ext.counteroffer_response_sla", "ext.damage_assessment_sla", "ext.escalate_to_hr_sla", "ext.exit_docs_sla", "ext.ffs_clear_sla", "ext.ffs_gratuity_target", "ext.ffs_l1", …] ``` ### known bugs: workflows @pr @known-bug › ISS-441 · earning comp-off does not require an existing comp-off balance **ISS-441: Comp-Off Request rejects when employee.balance <= 0 and debits the ledger on approval** https://satellitehr-qa-issues.pages.dev/ISS-441 `tests/contract/workflows.spec.ts:112` ``` Error: expect(received).toBe(expected) // Object.is equality Expected: false Received: true ``` ### regularization @journey › missed punch: manager approves and the day is rewritten (rows 4–5) **ISS-455/456: worked hours are not recalculated after a late-arrival correction (1.07 h span reported as 0.57 h)** https://satellitehr-qa-issues.pages.dev/ISS-455 · https://satellitehr-qa-issues.pages.dev/ISS-456 `tests/journeys/al01-al02-attendance.spec.ts:101` ``` Error: worked 0.57 h vs span 1.07 h (2026-10-13 09:45:00+00 → 2026-10-13 10:49:04+00) expect(received).toBeLessThan(expected) Expected: < 0.1 Received: 0.49777777777777776 ``` ### known bugs: leave @journey @known-bug › ISS-453 · a pending Leave Without Pay request can be withdrawn (row 18) **ISS-453: withdrawing a pending LWP request is refused with 403 PROTECTED_RUN ("forced by the platform tier")** https://satellitehr-qa-issues.pages.dev/ISS-453 `tests/journeys/al04-al05-leave.spec.ts:181` ``` Error: timed out waiting for request withdrawn ``` ### known bugs: leave @journey @known-bug › ISS-437/439 · approved leave with confirmed unpaid days is posted and stays approved (row 15) **ISS-437/439: post_ledger fails with "Insufficient balance" and the request ends rejected** https://satellitehr-qa-issues.pages.dev/ISS-437 · https://satellitehr-qa-issues.pages.dev/ISS-439 `tests/journeys/al04-al05-leave.spec.ts:201` ``` Error: timed out waiting for request decided ``` ### known bugs: comp-off @journey @known-bug › ISS-441 · a request to earn comp-off for a weekend reaches the manager (rows 29–30) **ISS-441: Request comp-off is rejected for having no comp-off balance** https://satellitehr-qa-issues.pages.dev/ISS-441 `tests/journeys/al08-al09-compoff-balances.spec.ts:35` ``` Error: timed out waiting for manager task ``` ## Gaps against the workflow sheet (7) The Attendance & Leave sheet asks for this; the platform does not do it (GAPS.md). ### known gaps: permissions @pr @known-bug › GAPS row 33 · HR SPOC can adjust special leave balances **HR SPOC has no balance-adjust right on this tenant (GAPS.md row 33)** GAPS.md row 33 `tests/contract/permissions.spec.ts:46` ``` Error: expect(received).toBe(expected) // Object.is equality Expected: false Received: true ``` ### known gaps: permissions @pr @known-bug › GAPS row 34 · HR SPOC can change leave configuration **HR SPOC is view-only on leave policies on this tenant (GAPS.md row 34)** GAPS.md row 34 `tests/contract/permissions.spec.ts:50` ``` Error: expect(received).toBe(expected) // Object.is equality Expected: false Received: true ``` ### known gaps: configuration @pr @known-bug › GAPS row 1 · days under 8 hours count as half days **Half-day cut-off is 4 hours on this tenant; the sheet asks for 8 (GAPS.md row 1)** `tests/contract/policies.spec.ts:76` ``` Error: expect(received).toBe(expected) // Object.is equality Expected: 8 Received: 4 ``` ### known gaps: work from home @journey @known-bug › GAPS row 22 · back-dated work from home is refused **Back-dated WFH is accepted and sent to the manager (GAPS.md row 22)** GAPS.md row 22 `tests/journeys/al06-wfh.spec.ts:79` ``` Error: expect(received).toBeGreaterThanOrEqual(expected) Expected: >= 400 Received: 201 ``` ### known gaps: work from home @journey @known-bug › GAPS row 25 · long WFH gets an HR SPOC review **No HR SPOC step in the WFH workflow (GAPS.md row 25)** GAPS.md row 25 `tests/journeys/al06-wfh.spec.ts:87` ``` Error: timed out waiting for HR SPOC task ``` ### known gaps: shifts @journey @known-bug › GAPS row 43 · the teammate is asked to accept a swap first **No peer acceptance: the swap goes straight to the manager (GAPS.md row 43)** GAPS.md row 43 `tests/journeys/al10-al11-shifts.spec.ts:87` ``` Error: timed out waiting for teammate task ``` ### known gaps: shifts @journey @known-bug › GAPS row 42 · a swap between identical shifts is refused **Eligibility does not check identical shifts (GAPS.md row 42)** GAPS.md row 42 `tests/journeys/al10-al11-shifts.spec.ts:100` ``` Error: expect(received).toBeGreaterThanOrEqual(expected) Expected: >= 400 Received: 201 ``` ## Now passing — bug no longer reproduces (1) Confirm the fix, close the issue, and keep the test as a regression check. ### known bugs: data integrity @pr @known-bug › ISS-445 · "Your shift" shows the shift on a working day, not "Off today" **ISS-445: the panel says "Off today — enjoy the day" on working days** https://satellitehr-qa-issues.pages.dev/ISS-445 `tests/contract/data-integrity.spec.ts:62`