Skip to content

[pull] main from jason5ng32:main - #130

Merged
pull[bot] merged 44 commits into
Cosr-Backup:mainfrom
jason5ng32:main
Sep 17, 2026
Merged

pull[bot] merged 44 commits into
Cosr-Backup:mainfrom
jason5ng32:main

Conversation

@pull

@pull pull Bot commented Sep 17, 2026

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

jason5ng32 and others added 30 commits September 3, 2026 18:40
rdap.js carried its own BigInt IP parser and CIDR containment; the new
common/ip-math.js (strict parsers, RFC 5952 formatting, mask / count math,
split / aggregate / range → CIDR) becomes the single implementation, bridged
to the front-end for the upcoming IP Calculator. Bootstrap matching is
unchanged; tests/rdap-ip.test.js still passes.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
classifyInput() recognises IPv4 / IPv6, prefixes (length or dotted mask),
integers and hex, ranges, prefix lists and the inet_aton spellings browsers
accept; calculate() derives display-ready analysis: IANA special-purpose
blocks, subnet math, PTR names, obfuscated and embedded-IPv6 forms, Teredo /
ULA / multicast decoding and EUI-64 → MAC recovery. Nothing throws and no
BigInt reaches a template. MAC input is deliberately left to MAC Lookup.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
One smart input with example pills and the visitor's own IPs, result cards
per kind (IPv4, IPv6, range, prefix list) built on a prefix slider + bitmap,
value rows with copy buttons, and a subnet splitter. The query mirrors to
?q= so results are shareable. The splitter only follows the slider on
release and value rows have a fixed min-height, so nothing below the thumb
resizes mid-drag. Registered in tools.js with shortcut `a`; six locales.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
READMEs and the AGENTS overview list the new tool; frontend/AGENTS.md
records the shareable `?q=` input pattern. TRANSLATING.md no longer quotes
the number of changelog entries, which went stale on every release.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The abacus reads as region-specific; 🔢 is the neutral choice, since
Unicode's pocket calculator (U+1F5A9) has no colour emoji presentation.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Add a Sports import list (ESPN, NBA, FIFA, Premier League, Formula 1, DAZN, Flashscore, Sofascore, Sky Sports, beIN Sports, MLB, NFL), locale names, and favicons.

Cricbuzz is already on the India list, so it is not duplicated.

Closes #402
Add a Travel & Booking import list (Booking.com, Airbnb, Expedia, Skyscanner, Tripadvisor, Agoda, KAYAK, Trip.com, Hotels.com, MakeMyTrip), locale names, and favicons.

Closes #403
Add Perplexity to the AI import list, plus its favicon.

Hugging Face is already on the list. The earlier Replicate change was closed unmerged, so this uses a different site.

Related to #399
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Feat(connectivity): add Perplexity to the AI list
Show a fixed preliminary test before the selected measurements and keep
formal results independent. Start testing without waiting for charts or
connection metadata, buffering samples until charts are ready.

Add localized phase labels and immediate startup progress, reduce the
formal latency sample count to 20, and document the improvement.

Validation: pnpm check (1533 tests passed and build succeeded).

Co-Authored-By: GPT-6 <noreply@openai.com>
Feat(connectivity): add Sports import list
Co-authored-by: Jason Ng <jason5ng32@users.noreply.github.com>
Keep both the Sports and Travel import lists.
Connectivity, WebRTC, DNS Leak and Rule Test cards only knew "Awaiting
Test" and the final verdict, so a manual refresh left the label saying
the test had not started while it was already running. A new
StatusTesting sentinel is written the moment a run is scheduled, on boot
and on refresh alike; "Awaiting Test" now only means the test has not
been triggered (Connectivity with auto-run off). Tone and pulse stay on
the wait level, the info mask skips the new placeholder, and the English
ruletest.StatusWait drops its stray "or Test Error" suffix along with
the translations derived from it.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Feat(connectivity): add Travel & Booking import list
jason5ng32 and others added 14 commits September 16, 2026 18:29
Remove callback adapters while preserving record formatting and errors.

Co-Authored-By: GPT-6 <noreply@openai.com>
Replace country-code-lookup with the existing Intl.DisplayNames helper.

Co-Authored-By: GPT-6 <noreply@openai.com>
Keep a single probe and use bash.ws as a fallback after Surfshark.

Co-Authored-By: GPT-6 <noreply@openai.com>
Adds SkyDNS (193.58.251.251) to api/data/dns-resolvers.js, giving
Russia a second public resolver alongside Yandex.DNS, as invited
in #390.

UDP entry only: SkyDNS's DoH endpoint serves RFC 8484 wire format
rather than the application/dns-json API this handler appends
name=&type= to (same call as Yandex.DNS and CZ.NIC ODVR).

Verified from outside RU: RA set, honest NXDOMAIN, non-truncated.
Reject ambiguous IPv4 input before geolocation requests reach upstreams.
Cover shared validation, public-IP checks, and the API guard while
preserving valid zero octets and IPv6 leading zeros.

Co-Authored-By: GPT-6 <noreply@openai.com>
Feat(dns): add SkyDNS (Russia) resolver
Reuse pending, successful, and exhausted provider probes across cards.
Keep refreshes isolated and collapse repeated observations in reports.
Cover shared retry budgets, refresh races, and report deduplication.

Co-Authored-By: GPT-6 <noreply@openai.com>
Update the input and query parameter when a slider change is committed.
Preserve the host address and other query parameters, and keep dragging
from replacing the URL. Cover IPv4, IPv6, and numeric inputs.

Co-Authored-By: GPT-6 <noreply@openai.com>
@pull pull Bot locked and limited conversation to collaborators Sep 17, 2026
@pull pull Bot added the ⤵️ pull label Sep 17, 2026
@pull
pull Bot merged commit 39ae0ad into Cosr-Backup:main Sep 17, 2026
1 check passed
@4everland
4everland Bot requested a deployment to production September 17, 2026 06:27 Abandoned

This branch had an error being deployed

1 failed deployment
production 39ae0ad5 Deployed Sep 17, 2026 by pull[bot] via Push README to Docker Hub #17
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants