Skip to content

feat: implement Phase 3.1B blocker architecture - #2

Merged
basimrdj merged 26 commits into
mainfrom
feat/phase31b-page-plane
Aug 18, 2026
Merged

feat: implement Phase 3.1B blocker architecture#2
basimrdj merged 26 commits into
mainfrom
feat/phase31b-page-plane

Conversation

@basimrdj

Copy link
Copy Markdown
Owner

Summary

  • Add the four-plane Phase 3.1B architecture: native DNR fast path, compiled page filtering, preserved causal anti-adblock intervention, and bounded advisory AI.
  • Add typed cosmetic/procedural compilation, exceptions, immutable audited scriptlets, one narrow MAIN-world set-constant bridge, reproducible build manifests, integrity checks, and the synthetic adversarial lab.
  • Fix the causal orchestrator to launch the next safe experiment after a rollback instead of stopping before the true mechanism.
  • Stabilize Chromium fixtures around explicit DOM readiness and headless extension execution.

Verification

  • ADAPT_PHASE31_OFFLINE=1 npm run verify:phase31b
  • Typecheck: PASS
  • Full reproducible build: PASS
  • Page/compiler tests: 5 PASS
  • Unit and Phase 3 regression tests: 145 PASS
  • Synthetic adversarial lab: PASS
  • Runtime stability: PASS
  • Chromium E2E: 34 PASS across 8 files
  • Bundle security and packaging: PASS

Machine evidence is recorded in artifacts/phase31b/latest.json; engineering handoff is in docs/phase31b/HANDOFF.md.

Release blockers

  • docs/phase31b/LICENSE_REVIEW.md records the GPL-3.0-only AdGuard build-toolchain review; proprietary distribution requires owner consent, replacement, or compatible licensing.
  • Live YouTube and fair uBO Lite/AdGuard/no-blocker comparisons remain pending; no real-world blocking claim is made.

Merge recommendation: NO for proprietary release until those external decisions are resolved. Do not merge main from this branch.

…ging

Engine + hardening (H1-H7 program):
- DNR/persistence correctness: band-overflow checks, quota re-seeding,
  capacity enforcement, rejection-tolerant write chains, remove-failure
  ordering, read-error vs absent distinction, INVALIDATED lifecycle restore
- AI pipeline: stale-epoch staging abort, documentId health routing,
  pending-survivor timeouts + restart settlement, validator hardening,
  planner failure taxonomy, stampede guards
- Page-side resilience: max-wait debounces, re-hide watch caps, WeakSet
  shimming (zero DOM fingerprint), per-rule early-runtime isolation
- Hostile/stress e2e program (H4), AI/privacy executable proofs (H5),
  real-world audit harness (H6): 68 sites ON/OFF, zero breakage

Product surface:
- Popup: pixel-faithful dark design with per-site pause/resume control
- Pause control: durable DNR allowAllRequests band (5,010,000+), suffix
  matching, single-writer sync, tab reload, content + engine + orchestrator
  stand-down, MAIN-world broker disarm via transient postMessage
- BYOK AI planner: OpenAI-compatible, Azure, Anthropic, and relay
  transports; legacy config inference; presets for OpenAI/OpenRouter/Groq/
  xAI/LM Studio/Azure/Anthropic; live connection test through the
  production PolicyValidator
- Options page: full settings surface in the popup's design language
- Icons: full set + luminance-mask brand mark

Packaging + release:
- npm run pack: ADAPT_SKIP_BAKED_AI build + leak guard (no baked endpoint/
  token/config) + completeness guard + release zip
- npm run verify:packaged: clean-profile proof of the packed artifact
  (SW boot, static plane blocks, no baked AI, popup + options render)
- store/: privacy policy, listing copy, permission justifications,
  real-Chrome screenshots
- CI: release-gate job (pack + verify:packaged on every push)
- Repo hygiene: Azure account refs scrubbed to env vars (scripts/azure-env.ts),
  GPLv3 license, README with install + BYOK setup + verification story

Verification: typecheck clean, 365 unit, 90 e2e (real Chromium),
packaged artifact 5/5, live autonomy 96/96, realworld audit PASS.
@basimrdj
basimrdj merged commit 78cf15c into main Aug 18, 2026
2 of 5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant