rodrigo
a1c83ef901
fix(gateway): interlock the stale-heartbeat wedge verdict with a loop-scheduling witness
...
The off-loop heartbeat write broke the producer->consumer invariant #86860
depends on: file freshness no longer equals loop schedulability, yet the
probe still classified a stale file as WEDGED — and WEDGED is destructive
authority (SIGTERM -> SIGKILL, bypassing the #86684 cron drain floor). The
measured motivating stall (112.6s max) exceeds the 90s stale budget, so a
healthy loop blocked inside the watchdog's own write could be killed, and
executor saturation produces the same false positive. The inverse edge
also existed: an off-loop write landing after the loop froze refreshes the
file mtime, manufacturing a false-fresh liveness proof.
The gateway loop now also arms a loop-scheduling witness: a UNIX socket
(state/gateway.loop-tick.<pid>.sock) answered by the loop itself via
await asyncio.start_unix_server — socket-buffer writes, no fsync, no disk
I/O, so it keeps working on the filesystem that stalls the heartbeat
write. The heartbeat payload records whether the witness is armed
(loop_tick_socket).
The classifier is now two-witness:
- socket answers -> ALIVE (file age irrelevant: a stalled write
or saturated executor can no longer produce a wedge verdict)
- file fresh, socket silent -> UNKNOWN (a late off-loop write can no
longer manufacture a liveness proof)
- file stale, socket silent, producer armed -> WEDGED (both witnesses
agree the loop stopped scheduling)
- legacy payload (no flag) -> unchanged single-witness contract: the
legacy producer wrote on-loop, so staleness is still proof
- any conflict/ambiguity -> UNKNOWN, never escalate
Tests are a producer->consumer composition: a real heartbeat loop with a
stalled write probes ALIVE while the file is past the stale budget, and
launchd_restart fed by the real probe drains instead of escalating; a
silent socket with a fresh file denies ALIVE; WEDGED requires the armed
socket to agree; a bind-failed producer disables stale escalation; legacy
payloads keep the old contract; a source-inspection test pins that the
witness is awaited on the loop. Mutation-checked: reverting either source
file fails the new tests. 45 tests pass across the watchdog suites; ruff
clean.
2026-08-27 22:06:17 +05:30
..
2026-08-03 17:33:14 +05:30
2026-08-27 15:33:32 +10:00
2026-08-03 17:24:11 +05:30
2026-08-14 21:47:16 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-02 09:59:52 -07:00
2026-07-26 17:15:38 -07:00
2026-07-29 13:39:40 -07:00
2026-08-24 23:50:23 -07:00
2026-08-02 00:11:50 -07:00
2026-08-14 11:22:14 -07:00
2026-08-02 21:48:46 +05:30
2026-08-08 01:12:16 +05:30
2026-08-13 00:10:30 -07:00
2026-07-29 13:39:40 -07:00
2026-08-02 10:00:44 -07:00
2026-08-07 23:00:28 +05:30
2026-08-02 16:16:36 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-07 14:11:18 +05:30
2026-07-29 13:39:40 -07:00
2026-08-21 21:53:11 +05:30
2026-08-07 17:45:06 +05:30
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-10 22:48:24 -07:00
2026-07-29 13:39:40 -07:00
2026-08-23 03:57:47 -07:00
2026-08-19 22:56:14 -07:00
2026-08-23 17:45:47 -05:00
2026-07-29 13:39:40 -07:00
2026-08-17 16:54:01 -07:00
2026-08-27 07:33:36 -07:00
2026-07-29 13:39:40 -07:00
2026-08-20 19:56:01 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 18:55:10 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-30 00:11:33 -07:00
2026-08-18 13:02:50 -07:00
2026-08-14 01:21:52 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-16 01:51:10 -07:00
2026-08-27 17:21:26 +05:30
2026-07-29 13:39:40 -07:00
2026-08-09 14:59:59 -07:00
2026-08-21 22:33:45 +05:30
2026-08-21 22:54:04 +05:30
2026-08-21 22:33:45 +05:30
2026-08-21 22:33:45 +05:30
2026-08-21 22:33:45 +05:30
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:39:40 -07:00
2026-08-09 15:02:00 -07:00
2026-08-02 16:16:36 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-11 20:37:06 +05:30
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-14 20:57:37 -07:00
2026-08-20 19:56:01 -07:00
2026-08-14 21:24:36 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 18:55:10 -07:00
2026-08-14 01:08:25 -07:00
2026-08-14 01:09:42 -07:00
2026-08-04 11:17:11 +05:30
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-27 12:42:38 +05:30
2026-07-29 13:39:40 -07:00
2026-08-07 18:41:57 -06:00
2026-08-12 18:25:33 -07:00
2026-08-07 18:23:57 +05:30
2026-08-21 13:35:20 +10:00
2026-07-29 13:39:40 -07:00
2026-08-26 09:59:17 -07:00
2026-08-22 16:45:00 -07:00
2026-08-22 18:05:26 -07:00
2026-07-29 13:39:40 -07:00
2026-08-14 21:47:16 -07:00
2026-08-27 20:39:11 +05:30
2026-08-14 20:46:50 -07:00
2026-08-14 21:47:16 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-31 22:32:55 -07:00
2026-07-29 13:39:40 -07:00
2026-08-26 04:49:39 -07:00
2026-08-26 04:49:39 -07:00
2026-07-29 13:39:40 -07:00
2026-08-08 12:29:35 -07:00
2026-07-31 22:35:03 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:10:23 -07:00
2026-08-13 00:10:30 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-02 21:14:36 +05:30
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-02 21:48:06 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:10:23 -07:00
2026-08-22 14:55:04 +05:30
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-12 20:10:51 -07:00
2026-08-13 00:10:30 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-02 21:14:36 +05:30
2026-07-29 13:39:40 -07:00
2026-08-04 18:23:04 +00:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-08-16 01:55:51 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-13 20:30:12 -07:00
2026-08-27 07:33:36 -07:00
2026-07-29 21:30:53 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-20 15:31:21 +10:00
2026-07-29 13:39:40 -07:00
2026-08-08 12:30:19 -07:00
2026-07-29 13:39:40 -07:00
2026-08-02 10:01:16 -07:00
2026-08-13 01:24:54 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-13 23:23:48 +05:30
2026-07-29 13:10:23 -07:00
2026-07-29 16:21:46 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:39:40 -07:00
2026-08-03 17:24:11 +05:30
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-03 17:24:11 +05:30
2026-08-08 12:30:19 -07:00
2026-08-15 14:20:27 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-21 16:25:24 +05:30
2026-07-29 13:39:40 -07:00
2026-08-22 15:27:26 +05:30
2026-08-08 14:06:30 +05:30
2026-07-24 15:47:12 -07:00
2026-08-03 11:00:49 +05:30
2026-08-18 16:08:29 -07:00
2026-08-21 19:11:55 -07:00
2026-07-29 13:39:40 -07:00
2026-08-18 15:04:45 -07:00
2026-07-31 23:18:38 -07:00
2026-08-13 11:05:40 -07:00
2026-08-03 00:32:17 +05:30
2026-07-29 13:39:40 -07:00
2026-07-29 18:00:18 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:39:40 -07:00
2026-08-16 02:02:06 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-20 15:31:21 +10:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-14 01:08:18 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:39:40 -07:00
2026-08-26 15:31:36 -07:00
2026-08-13 12:10:34 -07:00
2026-08-13 12:04:07 -07:00
2026-07-31 21:52:11 -07:00
2026-07-29 13:39:40 -07:00
2026-08-26 10:25:33 -07:00
2026-08-07 08:58:20 -07:00
2026-08-13 11:41:19 -07:00
2026-07-29 13:39:40 -07:00
2026-08-13 20:30:12 -07:00
2026-07-29 13:10:23 -07:00
2026-08-16 01:50:44 -07:00
2026-08-18 16:08:29 -07:00
2026-07-29 13:39:40 -07:00
2026-08-27 22:06:17 +05:30
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-17 15:12:13 +05:30
2026-07-29 13:10:23 -07:00
2026-08-07 14:34:55 +05:30
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-02 00:11:50 -07:00
2026-07-29 13:39:40 -07:00
2026-08-03 10:03:35 +05:30
2026-07-29 13:39:40 -07:00
2026-07-31 22:35:16 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:10:23 -07:00
2026-08-25 13:25:48 +05:30
2026-07-29 13:39:40 -07:00
2026-07-29 19:11:05 -07:00
2026-08-16 19:54:42 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-13 20:30:12 -07:00
2026-08-02 22:44:38 +05:30
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-31 22:39:34 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-16 01:49:53 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:10:23 -07:00
2026-08-26 04:49:39 -07:00
2026-08-19 02:00:16 -07:00
2026-08-10 22:48:24 -07:00
2026-07-29 13:39:40 -07:00
2026-08-19 02:00:16 -07:00
2026-08-02 00:11:50 -07:00
2026-08-10 22:48:24 -07:00
2026-08-22 03:10:32 +05:30
2026-07-29 18:43:50 -05:00
2026-08-10 22:48:24 -07:00
2026-08-24 03:20:06 -07:00
2026-08-25 23:15:15 -07:00
2026-08-23 03:57:47 -07:00
2026-07-29 13:39:40 -07:00
2026-08-08 14:18:26 +05:30
2026-08-20 15:31:21 +10:00
2026-07-29 13:39:40 -07:00
2026-08-09 22:34:28 +05:30
2026-07-29 13:10:23 -07:00
2026-07-29 13:39:40 -07:00
2026-08-02 11:50:05 +05:30
2026-08-24 03:20:46 -07:00
2026-08-23 03:56:28 -07:00
2026-07-29 13:39:40 -07:00
2026-08-12 16:33:13 -07:00
2026-07-29 13:39:40 -07:00
2026-08-09 14:08:51 -07:00
2026-08-27 07:33:36 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-24 03:20:06 -07:00
2026-08-27 20:06:04 +05:30
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-27 07:51:37 -07:00
2026-08-14 21:41:26 -07:00
2026-08-26 04:49:39 -07:00
2026-08-14 21:56:33 -07:00
2026-08-12 18:25:33 -07:00
2026-07-29 13:39:40 -07:00
2026-08-14 21:38:54 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-10 22:48:24 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-02 10:01:16 -07:00
2026-08-23 20:00:30 -07:00
2026-08-27 17:21:26 +05:30
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-23 18:25:12 -07:00
2026-07-29 13:39:40 -07:00
2026-08-08 11:13:27 -07:00
2026-07-29 13:39:40 -07:00
2026-08-11 09:56:13 +10:00
2026-08-11 09:56:13 +10:00
2026-08-11 09:56:13 +10:00
2026-08-11 09:56:13 +10:00
2026-08-20 15:31:21 +10:00
2026-08-11 09:56:13 +10:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-24 15:37:22 +05:30
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-14 11:22:05 -07:00
2026-08-14 11:22:05 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:39:40 -07:00
2026-08-22 16:26:51 +05:30
2026-07-29 18:55:10 -07:00
2026-08-13 23:45:21 +05:30
2026-08-22 17:30:35 +02:00
2026-07-29 13:39:40 -07:00
2026-08-23 17:38:38 -07:00
2026-08-02 22:33:09 +05:30
2026-07-29 13:39:40 -07:00
2026-08-13 11:12:19 -07:00
2026-07-29 13:39:40 -07:00
2026-08-07 18:32:45 +05:30
2026-08-24 15:37:22 +05:30
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-02 18:21:58 -07:00
2026-08-03 17:16:57 +05:30
2026-07-29 13:39:40 -07:00
2026-08-26 13:02:04 -03:00
2026-08-21 09:08:02 +10:00
2026-07-29 13:39:40 -07:00
2026-08-21 16:25:24 +05:30
2026-08-21 16:25:24 +05:30
2026-07-29 13:10:23 -07:00
2026-07-29 13:39:40 -07:00
2026-08-18 01:38:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-09 12:37:06 -07:00
2026-08-23 18:25:12 -07:00
2026-07-29 13:39:40 -07:00
2026-08-03 00:25:20 +05:30
2026-08-16 02:02:06 -07:00
2026-07-29 13:39:40 -07:00
2026-08-04 11:00:04 +05:30
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-13 12:04:35 -07:00
2026-08-03 11:00:49 +05:30
2026-08-02 16:16:36 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 18:55:10 -07:00
2026-08-14 13:08:39 -07:00
2026-08-27 20:06:16 +05:30
2026-08-09 04:33:58 -05:00
2026-08-14 21:39:44 -07:00
2026-08-13 10:46:13 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-14 21:47:16 -07:00
2026-08-14 21:41:26 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:39:40 -07:00
2026-08-24 20:03:24 -07:00
2026-08-08 13:56:12 +05:30
2026-08-15 03:05:23 +05:30
2026-07-29 13:10:23 -07:00
2026-08-27 15:33:32 +10:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-08 05:58:43 -07:00
2026-08-26 15:54:53 -07:00
2026-08-27 15:33:32 +10:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-27 15:33:32 +10:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-20 15:31:21 +10:00
2026-08-26 15:54:53 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-27 15:33:32 +10:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:10:23 -07:00
2026-08-20 15:31:21 +10:00
2026-08-04 13:07:44 +05:30
2026-08-04 13:07:44 +05:30
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 16:44:31 -07:00
2026-08-20 15:31:21 +10:00
2026-08-16 20:32:09 -07:00
2026-07-29 13:39:40 -07:00
2026-08-14 21:57:41 -07:00
2026-08-07 13:28:43 +05:30
2026-07-29 15:12:28 -07:00
2026-08-17 15:46:23 -07:00
2026-07-29 13:39:40 -07:00
2026-08-26 16:45:31 -07:00
2026-08-15 01:04:19 -07:00
2026-07-29 13:39:40 -07:00
2026-07-31 22:35:58 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-20 15:31:21 +10:00
2026-08-20 15:31:21 +10:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-27 07:33:36 -07:00
2026-08-27 07:33:36 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:39:40 -07:00
2026-08-20 15:31:21 +10:00
2026-08-20 15:31:21 +10:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-11 09:56:13 +10:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-25 12:07:33 +05:30
2026-07-29 13:39:40 -07:00
2026-08-25 12:07:33 +05:30
2026-08-21 16:25:24 +05:30
2026-08-12 19:01:30 -07:00
2026-08-16 02:03:01 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-21 16:25:24 +05:30
2026-08-21 16:25:24 +05:30
2026-08-21 16:25:24 +05:30
2026-08-21 16:25:24 +05:30
2026-08-21 16:25:24 +05:30
2026-08-17 16:07:05 +05:30
2026-07-29 13:39:40 -07:00
2026-08-21 16:25:24 +05:30
2026-07-29 13:39:40 -07:00
2026-07-29 13:10:23 -07:00
2026-08-24 17:04:55 +05:30
2026-08-16 22:20:35 -07:00
2026-07-29 17:22:52 -07:00
2026-08-21 16:25:24 +05:30
2026-08-21 16:25:24 +05:30
2026-08-08 12:30:19 -07:00
2026-08-21 16:25:24 +05:30
2026-08-22 03:20:48 +05:30
2026-08-17 17:13:27 +05:30
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-21 16:25:24 +05:30
2026-08-21 16:25:24 +05:30
2026-08-17 16:07:05 +05:30
2026-08-23 19:26:41 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-21 16:25:24 +05:30
2026-08-21 16:25:24 +05:30
2026-08-21 19:07:14 -07:00
2026-07-29 13:39:40 -07:00
2026-08-21 16:25:24 +05:30
2026-08-22 15:25:30 +05:30
2026-08-25 12:07:36 +05:30
2026-08-21 16:25:24 +05:30
2026-08-21 16:25:24 +05:30
2026-08-21 16:25:24 +05:30
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-15 07:09:52 +05:30
2026-07-29 13:10:23 -07:00
2026-08-21 21:53:11 +05:30
2026-08-21 16:25:24 +05:30
2026-07-29 13:39:40 -07:00
2026-08-21 16:25:24 +05:30
2026-08-21 16:25:24 +05:30
2026-08-12 19:01:30 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-24 23:50:23 -07:00
2026-07-29 13:39:40 -07:00
2026-08-08 19:17:13 -07:00
2026-08-23 17:45:47 -05:00
2026-08-14 16:22:47 -07:00
2026-08-13 22:07:32 +05:30
2026-08-07 18:23:57 +05:30
2026-07-29 13:39:40 -07:00
2026-07-29 18:43:50 -05:00
2026-07-29 13:39:40 -07:00
2026-08-22 17:30:35 +02:00
2026-07-29 13:39:40 -07:00
2026-08-08 12:30:19 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-16 02:03:31 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-08 13:28:19 +05:30
2026-08-03 22:47:14 +05:30
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-02 16:16:36 -07:00
2026-07-29 13:39:40 -07:00
2026-08-16 01:45:37 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-24 11:45:57 -07:00
2026-08-13 01:51:19 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-27 07:33:36 -07:00
2026-08-27 07:33:36 -07:00
2026-07-29 13:39:40 -07:00
2026-08-27 07:33:36 -07:00
2026-08-27 07:33:36 -07:00
2026-08-24 03:20:06 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-02 11:50:05 +05:30
2026-07-29 13:10:23 -07:00
2026-08-13 02:37:12 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-07-29 13:39:40 -07:00
2026-08-13 01:51:13 -07:00
2026-08-13 01:51:13 -07:00
2026-07-31 22:35:20 -07:00
2026-07-29 13:39:40 -07:00
2026-08-24 03:20:06 -07:00