# Mapper OS Questions

Ask after discovery, not before, unless source access or safety boundaries are unclear.

## Rules

- Ask at most one blocking question at a time during discovery/scope selection.
- For selected extraction, emit `01-questions.md` with numbered implementation-alignment questions and AI-best-judgment defaults.
- Do not ask broad product strategy questions.
- Do not ask questions answerable from source.
- Use defaults only for non-sensitive, non-blocking decisions.
- Stop instead of guessing for auth, billing, uploads, user data, external providers, webhooks, destructive actions, or qualification claims.
- If a downstream implementation agent cannot get answers, it must record the safest max-quality selected-scope defaults instead of silently downgrading quality or shrinking scope.

## Allowed Blocking Questions

1. Which candidate, explicit scope, or full-suite target should be selected?
2. Should a risky capability be included, blocked, or out of scope?
3. Are provider credentials or sandbox access available for qualification?
4. Should a known source defect be preserved or fixed when it affects observable behavior?
5. Is the package intended to remain discovery-only or move to selected extraction?

## Required Selected-Extraction Questions

Every selected Buildprint must carry a pre-implementation gate covering only unresolved decisions that affect output quality:

1. Scope / capability boundary if ambiguous: candidate, explicit scope, or full-suite target?
2. Deployment posture: trusted-local, private authenticated, or public webapp?
3. Sensitive capability policy: include, block, or safe-seam risky capabilities?
4. Runtime/provider proof: are sandbox credentials, provider test access, or runtime/browser environments available?
5. Persistence/infra default: source-observed stack, existing stack, SQLite, Postgres, durable queue/object store, local files only when justified, or other?

Quality is not a question: Mapper OS always targets max-quality for the requested scope. Missing proof becomes a blocker/readiness state, not a lower quality tier.

## Confirmation Summary

After answers, summarize:

```text
Mapping alignment summary
- Source input:
- Output mode:
- Requested scope:
- Selected target / first capability:
- Capability readiness summary:
- Explicitly user-excluded capabilities:
- Blocked capabilities:
- Sensitive surfaces:
- Required hardening artifacts:
- Qualification label:
- Next capability:
```
