{"schemaVersion":"mappls.capability-qualification.v1","id":"search-places--automotive--qualification","matrixCellId":"search-places--automotive","product":{"slug":"search-places","name":"Search & Places","summary":"Autosuggest, geocoding, nearby discovery, place details, and Mappls Pin addressing.","category":"Core location","accent":"#00a88f"},"platform":{"slug":"automotive","name":"Automotive","headline":"Treat in-vehicle navigation as a safety-aware, upgradeable system—not a screen."},"status":"not-listed","stateModel":"stateless","integrationLane":"entitled-runtime","decision":{"availability":"not-listed","evidenceStatus":"not-listed","exactEvidence":[],"supportingEvidence":[{"kind":"quickstart","fidelity":"platform-adjacent","slug":"automotive-navigation","title":"Simulate one recoverable navigation session","href":"/quickstart/automotive-navigation"},{"kind":"starter-kit","fidelity":"platform-adjacent","slug":"automotive-navigation-starter","title":"Automotive release-manifest starter","href":"/starter-kits/automotive-navigation-starter"},{"kind":"sample-app","fidelity":"product-adjacent","slug":"store-locator","title":"Store Locator","href":"/samples/store-locator"},{"kind":"sample-app","fidelity":"product-adjacent","slug":"care-transfer-desk","title":"Care Transfer Desk","href":"/samples/care-transfer-desk"},{"kind":"sample-app","fidelity":"product-adjacent","slug":"retail-site-lab","title":"Retail Site Lab","href":"/samples/retail-site-lab"},{"kind":"sample-app","fidelity":"product-adjacent","slug":"trip-planner","title":"Weekend Trip Planner","href":"/samples/trip-planner"},{"kind":"sample-app","fidelity":"product-adjacent","slug":"incident-dispatch","title":"Incident Dispatch","href":"/samples/incident-dispatch"},{"kind":"sample-app","fidelity":"product-adjacent","slug":"address-verifier","title":"Address Verifier","href":"/samples/address-verifier"},{"kind":"sample-app","fidelity":"product-adjacent","slug":"spatial-agent","title":"Spatial Operations Agent","href":"/samples/spatial-agent"},{"kind":"sample-app","fidelity":"product-adjacent","slug":"a2a-solution-studio","title":"A2A Solution Studio","href":"/samples/a2a-solution-studio"},{"kind":"sample-app","fidelity":"product-adjacent","slug":"widget-journey-host","title":"Widget Journey Host","href":"/samples/widget-journey-host"},{"kind":"sample-app","fidelity":"product-adjacent","slug":"place-contribution-desk","title":"Place Contribution Desk","href":"/samples/place-contribution-desk"},{"kind":"journey","fidelity":"product-adjacent","slug":"consented-address-verification","title":"Consented address verification","href":"/journeys/consented-address-verification"}],"boundary":"This product does not list this platform in the canonical product catalog. Adjacent source, tutorial, sample, or platform evidence must not be promoted to compatibility or availability."},"authenticationCandidates":[],"identityLock":["Product and platform decision ID","Account and environment reference","Region and data-residency decision","Hardware/OS/runtime and protected distribution identity","License or entitlement reference—not its contents","Artifact checksum, update channel, and rollback owner","Source/distribution fingerprint and release owner","Quota, support, incident, rollback, and retirement owners"],"scenarios":[{"id":"clean-build","title":"Clean build and identity lock","purpose":"Prove the selected source, distribution, toolchain, and runtime identity from a clean environment.","expectedEvidence":"Checksums, dependency lock, build log, runtime identity, and exact evidence links agree without workstation-only state.","recovery":"Stop qualification, reconcile the exact distribution or contract, and rebuild from a clean environment."},{"id":"fixture-success","title":"Deterministic fixture success","purpose":"Exercise the application adapter without credentials or provider traffic.","expectedEvidence":"The fixture produces the documented application contract and retains source identity plus state ownership.","recovery":"Fix the application boundary before requesting account access; a live call must not compensate for an unproven adapter."},{"id":"authentication-denied","title":"Missing, denied, expired, and revoked access","purpose":"Prove least-privilege failure without logging, reflecting, or weakening credential controls.","expectedEvidence":"Every access failure is classified, redacted, bounded, and routes to entitlement or credential reconciliation.","recovery":"Stop retries, preserve only safe request evidence, and reconcile the issued account contract independently."},{"id":"quota-unavailable","title":"Quota, timeout, offline, and service unavailability","purpose":"Prove bounded retry, fallback, and user-visible degradation for the exact operation safety class.","expectedEvidence":"Retry-After is honored where present; uncertain state changes never become blind retries.","recovery":"Use bounded backoff for safe reads and reconcile state-changing unknown outcomes before replay."},{"id":"upgrade-rollback","title":"Upgrade, downgrade, and rollback","purpose":"Prove that source, SDK, wrapper, schema, and runtime changes are independently reversible.","expectedEvidence":"Compatibility evidence names both versions, acceptance results, rollback trigger, and retained data/state behavior.","recovery":"Freeze rollout, restore the last qualified artifact, and reopen source and entitlement selection."},{"id":"request-replay","title":"Safe request replay","purpose":"Show that repeated safe requests remain bounded and do not create hidden application state.","expectedEvidence":"Inputs, timeout, response classification, and request provenance are reproducible without persisting provider objects.","recovery":"Normalize the adapter contract and keep business state outside the provider response."}],"phases":[{"id":"select-authority","title":"Lock source and product authority","owner":"Product owner + application technical owner","state":"actionable","objective":"Resolve the exact product, platform, source, distribution, generation, account, region, and owner before code or access is approved.","activities":["Review exact evidence separately from adjacent learning material.","Record every unresolved package, endpoint, callback, entitlement, and version question.","Keep not-listed and selection-required decisions blocked until an attributable owner supplies exact evidence."],"exitEvidence":["Immutable product-platform decision","Exact source/distribution identities and fingerprints","Named product, security, application, and release owners"],"blockedBy":["The canonical product catalog does not list this platform.","A product owner must establish availability before implementation qualification."]},{"id":"lock-runtime","title":"Lock runtime and authentication","owner":"Application owner + security","state":"blocked","objective":"Bind the runtime identity to one authentication generation and least-privilege placement without accepting a credential value.","activities":["Record the runtime identity fields for this integration lane.","Choose one issued authentication path and document forbidden placement.","Define non-production restrictions, rotation, redaction, and incident ownership."],"exitEvidence":["Runtime compatibility decision","Credential class and restriction record","Secret/public-value placement review"],"blockedBy":["The canonical product catalog does not list this platform.","A product owner must establish availability before implementation qualification."]},{"id":"prove-fixture","title":"Prove the application contract offline","owner":"Application team","state":"blocked","objective":"Exercise a deterministic adapter and every application-owned invariant before provider access.","activities":["Run the clean-build and fixture-success scenarios.","Normalize provider-shaped data at the adapter edge and keep opaque objects out of durable state.","Prove denial, quota, unavailable, upgrade, and rollback behavior with fixtures."],"exitEvidence":["Fixture results tied to the source lock","Application contract/schema","Failure and rollback evidence"],"blockedBy":["The canonical product catalog does not list this platform.","A product owner must establish availability before implementation qualification."]},{"id":"qualify-nonproduction","title":"Qualify issued non-production access","owner":"Product owner + application team","state":"blocked","objective":"Run the smallest read or explicitly approved test journey against an issued non-production account without exporting secrets or sensitive payloads.","activities":["Confirm account, entitlement, host, region, quota, and exact operation/distribution.","Capture credential-free conformance results and safe request identities.","Compare live shape and failure classification to the locked application contract."],"exitEvidence":["Signed or attributable product-owner decision","Credential-free conformance report","Account/region/quota/entitlement reference","Observed compatibility and divergence record"],"blockedBy":["The canonical product catalog does not list this platform.","A product owner must establish availability before implementation qualification.","Issued non-production account and approved provider contract are external requirements."]},{"id":"exercise-journey","title":"Exercise lifecycle and hostile paths","owner":"Application team + operations","state":"blocked","objective":"Prove complete success, denial, degradation, recovery, restart, and rollback behavior at the integration's true state depth.","activities":["Execute every published qualification scenario.","For hybrid/stateful work, prove replay, stale-version, unknown-outcome, and restart recovery.","Verify telemetry, quota alarms, support evidence, cleanup, and rollback."],"exitEvidence":["Scenario-by-scenario result ledger","State/reconciliation evidence where applicable","Alert, runbook, support, cleanup, and rollback evidence"],"blockedBy":["The canonical product catalog does not list this platform.","A product owner must establish availability before implementation qualification.","Operational telemetry and provider-degradation exercises require an approved environment."]},{"id":"approve-release","title":"Independent release and deployment","owner":"Independent security + operations + product release owners","state":"blocked","objective":"Freeze the qualified artifact and collect independent authority without allowing developer evidence to self-approve production.","activities":["Attach exact artifacts to the governed release workflow.","Review security/privacy, product conformance, operations, quota, regional, legal, and rollback evidence.","Use progressive deployment and independently reconcile production health."],"exitEvidence":["Immutable release artifact and evidence digests","Independent approvals","Progressive deployment, rollback, and post-release reconciliation evidence"],"blockedBy":["The canonical product catalog does not list this platform.","A product owner must establish availability before implementation qualification.","This catalog never grants entitlement, support, production release, or deployment authority."]}],"releaseEvidence":["Exact source, package/distribution, contract generation, and runtime identity","Issued account, entitlement, region, quota, and credential-class reference without secret values","Clean build, fixture, non-production conformance, hostile-path, upgrade, and rollback results","Security, privacy, accessibility, operational, legal/content, and product-owner decisions","Immutable release artifact digest, progressive deployment evidence, and independent post-release reconciliation"],"handoff":{"websitePath":"/platforms/qualify?product=search-places&platform=automotive","apiPath":"/api/capability-qualifications?product=search-places&platform=automotive","downloadPath":"/api/capability-qualifications?product=search-places&platform=automotive&download=1","matrixPath":"/platforms/matrix?product=search-places&platform=automotive","productPath":"/docs/search-places","platformPath":"/platforms/automotive"},"safety":{"providerCalls":0,"credentialsAccepted":false,"providerPayloadsAccepted":false,"writesExposed":false,"productionApprovalGranted":false}}