Browser di ricerca macOS local-first basato su una build personalizzata di Brave che cattura traffico di rete, fingerprint, script e prove di runtime per il reverse engineering di web app.
Esegui make dalla radice del repository. Il Makefile radice definisce
l'obiettivo predefinito e include questi file nell'ordine:
| File | Responsabilità |
|---|---|
config.mk | Flag del compilatore, directory di build, elenchi di sorgenti per il lint, impostazioni predefinite della piattaforma |
native.mk | Dipendenze di link native esplicite, compilazione, dipendenze dagli header generati |
workflows.mk | Avvio dei prodotti, fixture di evidenza, servizi locali, comandi di integrazione con Brave |
quality.mk | Controllo delle regressioni di build, linter, sanitizer, pulizia |
I nomi dei comandi esistenti e i percorsi degli eseguibili restano l'interfaccia pubblica.
Gli oggetti di implementazione rispecchiano i percorsi dei sorgenti all'interno di BUILD_DIR; i file
.d generati dal compilatore tracciano gli header diretti e transitivi del progetto. Solo l'eseguibile
del decoder aggiunge zlib al proprio comando di link. make native-probe-compile compila
la coda del browser tracciata senza un sorgente di test separato.
make bootstrap-dev-tools installa le stesse versioni bloccate di clang-format e Ruff
usate dalla CI in ~/.local/share/reb-tools, e installa le formule mancanti
shellcheck e actionlint con Homebrew. Make preferisce automaticamente questi strumenti
locali bloccati. make deob-benchmark compila il worker Rust ed esegue
il corpus semantico limitato con evidenze di tempistica, memoria, trasformazione e
copertura dei sorgenti modificati.
make lint verifica la formattazione e gli avvisi di Clippy per entrambi i manifest Rust.
Il worker di deoffuscamento include tutti i target, così il suo codice di test di regressione viene
verificato insieme all'eseguibile di produzione.
Usa una directory di build separata per un compilatore diverso o un diverso insieme di flag:
make BUILD_DIR=build/debug OPT_CXXFLAGS='-O0 -g' all
Make non rileva le modifiche ai valori dei flag da riga di comando in una directory di build
esistente. Le modifiche alle regole native o ai file di configurazione del compilatore
invalidano invece gli oggetti nativi. make sanitize usa la propria directory di build pulita.
make native-build-test esegue scripts/check-native-build.sh, che compila ed
esegue due eseguibili indipendenti in una
directory temporanea, verifica che una build ripetuta non esegua alcun lavoro e controlla che
una modifica all'header di un artefatto invalidi il suo consumatore senza ricompilare la demo
degli eventi. make check include questo controllo di regressione, il benchmark semantico
di deoffuscamento e le suite di test Rust del backend e del worker del deoffuscatore. Esegue anche
il test di integrazione HTTP/CLI dei fatti sui sorgenti contro il worker Rust/Oxc compilato;
CARGO_TARGET_DIR viene rispettato durante l'individuazione di tale helper.
make native-proxy-policy-check compila ed esegue la suite di policy native
proxy/container di sola preparazione senza Chromium, Cargo, socket o un browser.
È inclusa in make check e make sanitize; non stabilisce un reale
routing o isolamento del browser. Vedi il contratto versionato del proxy-container nativo.
origin-trace-backend compila il servizio HTTP Rust, l'analizzatore VM e la CLI API.
ui avvia quel servizio dopo la generazione deterministica delle evidenze. backend-e2e
usa un profilo usa-e-getta compatibile con Chromium e fixture localhost sintetiche;
imposta ORIGIN_TRACE_TEST_BROWSER per un eseguibile del browser non standard. Le build dell'app
includono gli eseguibili Rust e le risorse statiche dell'interfaccia, senza dipendenze dal runtime Python.