Native WhatsApp Web multi-device client in C++ (src/whatsapp/, namespace detz::wa), built on OpenSSL plus a vendored public-domain ed25519 ref10 (third_party/ed25519, zlib) for XEdDSA and the nayuki QR generator (third_party/qrcodegen, MIT); no new runtime dependency. - WaCrypto, WaBinary, WaProto, WaNoise, WaSignal, WaDevice, WaSocket, WaClient, WaStore, WaQr, WaWizard. - Verified offline against golden vectors captured from the real Baileys client (tests/whatsapp_data, from jfelipesjc/wa-go, MIT): HKDF/PBKDF2 RFC vectors, XEdDSA roundtrips, codec battery 19/19, ClientPayload byte-exact, the Noise handshake, and a 4-exchange Signal session byte-exact. Unit test build/whatsapp_test (16/16), run_all step whatsapp.unit. - Verified live against web.whatsapp.com: `detz --whatsapp-link` connects, completes the Noise handshake, receives pair-device, renders a scannable QR in the terminal, and persists the device to the vault (whatsapp/<profile>.db). Also --whatsapp-status / --whatsapp-unlink. - Agent tools whatsapp_send and whatsapp_contacts (detz-only, in DetzTools). - Pairing completion after the phone scans, and the message send path (usync + prekey fetch + Signal encrypt + send node), are ported faithfully from whatsmeow but unverified in-tree (no linked account in development). send_image and own-device fan-out are not wired yet. See docs/whatsapp.md. Also in this snapshot: the terminal-screenshot tool (src/termshot/, terminal_screenshot, docs/termshot.md, research/terminal-screenshot-rendering) and a concurrent session's in-progress llm/muse failover changes carried along in the shared files. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
152 lines
3.4 KiB
JSON
152 lines
3.4 KiB
JSON
[
|
|
"2026-10-08T09:00",
|
|
"2026-10-08 09:00",
|
|
"2026-10-08",
|
|
"2026-10-08T09:00:30",
|
|
"2026-10-08T09:00:30.5",
|
|
"2026-10-08T09:00:30.123456",
|
|
"2026-10-08T09:00:30.1234567",
|
|
"2026-10-08T09:00Z",
|
|
"2026-10-08T09:00:00z",
|
|
"2026-10-08T09:00+02:00",
|
|
"2026-10-08T09:00-05:30",
|
|
"2026-10-08T09:00:00+0200",
|
|
"2026-10-08T09:00:00+02",
|
|
"2026-10-08T09:00:00.25+02:00",
|
|
"20261008T0900",
|
|
"20261008",
|
|
"20261008T090030",
|
|
"2026-10-08T09",
|
|
"2026-10-08T0900",
|
|
"2026-10-08x09:00",
|
|
"2026-13-01",
|
|
"2026-02-30",
|
|
"2024-02-29T12:00",
|
|
"2023-02-29T12:00",
|
|
"2026-10-08T25:00",
|
|
"2026-10-08T09:61",
|
|
"2026-10-08T09:00:61",
|
|
"now",
|
|
"",
|
|
" ",
|
|
"tomorrow",
|
|
"2026-10-08T",
|
|
"2026-10-08T09:",
|
|
"2026-10-08T09:0",
|
|
"2026-1-8",
|
|
"26-10-08",
|
|
"2026-10-08T09:00+25:00",
|
|
"2026-10-08T09:00+02:00:30",
|
|
" 2026-10-08T09:00 ",
|
|
"2026-10-08T09:00:00.123+01:00",
|
|
"0001-01-01T00:00",
|
|
"9999-12-31T23:59:59.999999",
|
|
"2026-10-08T09:00 +02:00",
|
|
"2026-10-08T09:00:00Z\n",
|
|
"2026-03-29T02:30",
|
|
"2026-10-25T02:30",
|
|
"2026-10-25T12:00:00+00:00",
|
|
"2026-10-25T12:00:00.000001+00:00",
|
|
"2026-10-08T09:00x+02:00",
|
|
"2026-10-08T09:00\u00a0+02:00",
|
|
"2026-10-08T09:00\n+02:00",
|
|
"2026-10-08T09:00:00x-02:00",
|
|
"2026-10-08T09:00:00xZ",
|
|
"2026-10-08T09:00:00 Z",
|
|
"2026-10-08T09 Z",
|
|
"2026-10-08T0900 Z",
|
|
"2026-10-08T090000 +01",
|
|
"2026-10-08T09:00:00.123456789 +01",
|
|
"2026-10-08T09:00:00,5 +01",
|
|
"2026-10-08T09:00:00.5x+01",
|
|
"2026-10-08T09:00:00+01 ",
|
|
"2026-10-08T09:00:00+0100",
|
|
"2026-10-08T09:00:00+01:0",
|
|
"2026-10-08T09:00:00+1",
|
|
"2026-10-08T09:00:00+01:00:",
|
|
"2026-10-08T09:00:00++01",
|
|
"2026-10-08T09:00:00+01Z",
|
|
"2026-10-08T09:00:00 +",
|
|
"2026-10-08T09:00:00-",
|
|
"2026-10-08 T09:00",
|
|
"2026-10-08TT09:00",
|
|
"2026-10-08\u00e9",
|
|
"2026-10-08\u00e909:00",
|
|
"2026-10-08\u20ac09:00",
|
|
"2026-10-08T09:00:00.000001+01:00:00.5",
|
|
"1999-12-31T24:00:00",
|
|
"2026-10-08T24:00",
|
|
"2026-10-08T24:00:00.0",
|
|
"9999-12-31T24:00",
|
|
"2026-10-08T09:00:00+0100:00",
|
|
"2026-10-08T09:00:00+01:00:0000",
|
|
"2026-10-08T09:00:00-00:00",
|
|
"2026-W01-1",
|
|
"2026-W53-7",
|
|
"2026-W00-1",
|
|
"2026-W41-8",
|
|
"2026W414",
|
|
"2026W41",
|
|
"2026-W41-4T10:00",
|
|
"2026-W41T10:00",
|
|
"2026-10-08t09:00",
|
|
"2026-10-08T09:+02:00",
|
|
"2026-10-08T09:00xx+02:00",
|
|
"2026-10-08T09:00:00.12345x+02:00",
|
|
"2026-10-08T09:00:00.1234567x+02:00",
|
|
"2026-10-08T09:00:00.123456xy+02:00",
|
|
"2026-10-08T09:0+02:00",
|
|
"2026-10-08T09:00:00:00",
|
|
"2026-10-08T09:00:00.5.5",
|
|
"2026-10-08T0900:00",
|
|
"2026-10-08T09:0000",
|
|
"2026-10-08T09:00:00+01:00:00.1234567",
|
|
"2026-10-08T09:00:00+01:00:00.",
|
|
"2026-W53-1",
|
|
"2020-W53-5",
|
|
"2015-W53-4",
|
|
"2026-W41-4 10:00",
|
|
"2026-W41-4x",
|
|
"2026-W41-4-10",
|
|
"2026-W41-410",
|
|
"2026W4141",
|
|
"2026W41410",
|
|
"2026-10-08T09:00-23:59",
|
|
"2026-10-08T09:00+23:59:59",
|
|
"2026-10-08T09:00+24:00",
|
|
"2026-10-08T09:00-24:00",
|
|
"0001-01-01T00:00+00:00",
|
|
"0001-01-01T00:00+01:00",
|
|
"0001-01-01T00:00-01:00",
|
|
"0001-01-01T10:00:00+00:00",
|
|
"9999-12-31T23:59:59.999999+00:00",
|
|
"9999-12-31T23:59:59+00:00",
|
|
"9999-12-31T23:59:59-01:00",
|
|
"9999-12-31T00:00:00+01:00",
|
|
"0001-01-01T00:00:00.000001+00:00",
|
|
"1970-01-01T00:00:00",
|
|
"1900-01-01T00:00:00",
|
|
"1800-06-15T12:00:00",
|
|
"2026-03-29T01:59:59",
|
|
"2026-03-29T02:00:00",
|
|
"2026-03-29T03:00:00",
|
|
"2026-10-25T01:59:59",
|
|
"2026-10-25T02:00:00",
|
|
"2026-10-25T03:00:00",
|
|
"2026-10-25T02:59:59.999999",
|
|
"2038-01-19T03:14:08",
|
|
"2100-12-31T23:59:59",
|
|
"5000-01-01T00:00:00",
|
|
"2026-10-08T09:00:00\u00e9",
|
|
"\u2003 2026-10-08T09:00 \u2003",
|
|
"2026-10-08T09:00:00,123",
|
|
"2026-02-29",
|
|
"2028-02-29",
|
|
"2100-02-29",
|
|
"2000-02-29",
|
|
"20260229",
|
|
"2026-10-08T09:00:00.5+02:00",
|
|
"2026-10-08T09:00:00,5+02:00",
|
|
"2026-10-08T09:00:00.+02:00"
|
|
]
|