Everything HuShield does
The complete feature system, with honest status. Anything that has never run against real hardware or a real deployment is not marked shipped — including some things that work fine in tests.
- Shipped verified working
- In progress built, not yet verified end to end
- Help wanted open for contributors
iOS
-
Call blocking and labelling
In progressA Call Directory extension blocks known-bad numbers outright and labels suspected ones, driven entirely by the locally-synced list.
-
Offline SMS filtering
In progressAn SMS Filter extension classifies incoming messages with no network access at all. Filtering must work in airplane mode.
-
In-app reporting and caller ID
In progressReport spam or not-spam, look up a number, and contribute a community caller-ID name.
-
Shared App Group sync
In progressOne framework handles App Attest enrolment, token refresh, and blocklist delta sync, shared across the app and both extensions via an App Group.
Backend
-
Community spam reporting
ShippedAny attested device can report a number as spam or not-spam. A device's identity is an Apple App Attest key and nothing else — no account, no phone number, no contact upload.
-
Trust-weighted, time-decaying scoring
ShippedEach report contributes trust_weight × category_multiplier × exponential_decay(age, 30-day half-life). Not-spam votes subtract. Crossing 2.0 labels a number; 5.0 blocks it. An admin override always wins.
-
Per-device reputation
ShippedA device's vote weight is a pure function of its reporting tenure, volume, and how often its votes disagreed with the eventual community outcome. This is what makes brigading expensive.
-
Efficient blocklist delta
ShippedKeyset pagination, neighbour-spoof widening, crowd-sourced caller ID, and removal tombstones so a number that stops being blockable is explicitly un-blocked on clients rather than silently vanishing from the feed.
-
Cold-start seeding from public data
ShippedImports FTC and FCC public complaint datasets via synthetic seed devices, so the blocklist is useful before the first real user arrives.
-
Device token lifecycle
Shippedattest → verify → assert-refresh, with strictly-increasing counter replay protection. Tokens refresh without re-attesting.
-
On-demand number lookup
ShippedLook up the current reputation of a single number without pulling the whole blocklist.
-
Silent push refresh
In progressServer-initiated APNs silent pushes nudge clients to resync so a newly-blocked number reaches devices without waiting for the next poll.
-
Verified real App Attest
Help wantedApple App Attest verification has only ever been exercised against injected test material. No genuine attestation from a physical iPhone has been verified end to end.
Operations
-
Production hardening
In progressReal App Attest validated on physical hardware, a shared challenge store for multi-instance deploys, and scheduled score recomputation.
-
Verified container image
Help wantedThe Dockerfile has never been built — it was authored without a Docker daemon and sets no GOARCH. Production uses systemd instead. Fixing or removing it are both welcome.
-
Production smoke test
Help wantedThe existing smoke test fabricates attestations, so it only works against a mock-mode server and cannot verify a real deployment.
-
Continuous integration
Help wantedThere is no CI. The test gate lives in a local Makefile, which means a contributor cannot see their PR pass before a maintainer runs it by hand.
4 of these need a hand
Each one links to a real, claimable GitHub issue with context on where to start.
See how to contribute →