Skip to content

Resolve target-user question (ADR-0006) and anchor the roadmap#4

Merged
maybeknott merged 1 commit into
mainfrom
genspark_ai_developer
Jun 3, 2026
Merged

Resolve target-user question (ADR-0006) and anchor the roadmap#4
maybeknott merged 1 commit into
mainfrom
genspark_ai_developer

Conversation

@maybeknott

Copy link
Copy Markdown
Owner

Summary

This iteration analyzes the same complexity-reduction + supercomposition ideas again, but the actionable engineering from them was already delivered in merged PR #3 (verified-session bundle, JA3 oracle wiring) and pre-existing code (failure classifier, single-binary distribution). Re-implementing would be churn.

The one thing those proposals consistently leave unresolved is the question they keep asking literally twice:

Are we optimizing for fully non-technical "On/Off" users, or intermediate users who still need profile control?

Every UX/distribution decision depends on this. This PR answers it durably as an ADR so future proposals stop swinging between contradictory directions, and re-anchors the roadmap to that decision. No code paths change.

Changes

  • docs/adr/0006-target-user-and-progressive-disclosure.md (new) — decides the primary user is the motivated intermediate user, delivered through progressive disclosure:
    • one dominant next action (ProjectState.next_action)
    • named intents (Standard / High Stealth / Legacy Network) bound to active_profile, never a file picker
    • consent-based setup: auto-setup may prepare/recommend, but trust install + admin elevation stay explicit (upholds ADR-0002)
    • plain-language status up front, raw evidence/JA3/verified-session behind an advanced affordance
    • explicitly defers the silent-trust "On/Off appliance" product
  • ROADMAP.md — adds a Target user section, re-anchors Next items to ADR-0006, and adds an explicit Out of scope section for the supercomposition rewrites (PyO3, Cap'n Proto, Tauri/Slint, io_uring/eBPF, embed-in-Xray) that conflict with ADR-0001/0003.
  • docs/repository-structure.md — indexes the new ADR.

Idea-by-idea disposition

Proposed idea Disposition
1. Preset 3-way toggle Beneficial → kept in roadmap, now scoped to active_profile per ADR-0006
2. Zero-touch bootstrapping Beneficial with a guardrail — "silently trust certs / auto-elevate admin" rejected (violates ADR-0002); consent-based version kept
3. Human-readable failure classification Already implemented (scripts/core/failure_classifier.py)
4. Single-binary distribution Already implemented (build_gui_exe.py + release workflow)
Supercomposition (PyO3 / Cap'n Proto / Tauri-Slint / io_uring-eBPF / HTTP-3 / dynamic JA3 / live topology) Out of scope — raises complexity/risk, conflicts with ADR-0001/0003; tracked as research

Testing

py -3 main.py test   ->  All 34 checks passed

Docs-only change; ADR indexing verified against repository-structure.md.

The recurring complexity-reduction feedback keeps asking the same unanswered
question: optimize for fully non-technical 'On/Off' users, or intermediate
users who still need profile control? This commit answers it durably instead
of re-litigating it per proposal.

- ADR-0006: choose the motivated *intermediate* user, delivered via progressive
  disclosure (one dominant next action, named intents over raw files,
  consent-based setup). Explicitly defers the silent-trust 'appliance' product
  because it conflicts with ADR-0002 (no silent trust install).
- ROADMAP: add a Target user section, re-anchor Next items to ADR-0006, and add
  an explicit Out-of-scope section covering the supercomposition rewrites
  (PyO3/Cap'n Proto/Tauri/Slint/io_uring/eBPF/embed-in-Xray) that conflict with
  ADR-0001/0003.
- repository-structure.md: index the new ADR.

No code paths changed. Full offline suite: 34/34 pass.

Note: the other actionable proposal items (verified-session bundle, JA3 oracle
wiring) were already delivered in merged PR #3; failure classifier and
single-binary distribution already existed.
@maybeknott
maybeknott merged commit 2469f06 into main Jun 3, 2026
2 of 3 checks passed
@maybeknott
maybeknott deleted the genspark_ai_developer branch June 3, 2026 00:14
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