Skip to content

[Bug] gem4gov onboard data-store prompt says "already created and loaded with data" but loading is not required (or checked) — misleads operators into importing before onboarding #144

Description

@JohnHales

Bug Description

In gem4gov onboard(), after app-type selection, the data-store step prompts "Do you have an existing data store(s) already created and loaded with data? [y/N]" and then "Please enter a comma-separated list of data stores that you would like to connect to Gemini Enterprise". The phrase "and loaded with data" implies the data store must already contain imported documents. It does not: validate_data_store() only confirms each supplied ID EXISTS (and is CMEK-compliant if required), and the engine is created with dataStoreIds=[...] regardless of document count. The intended, supported flow is: the infra stage (gemini-stage-0) creates an EMPTY data store, the operator connects it here, and documents are imported afterward via gem4gov datastore import. The "loaded with data" wording makes operators think they must import first — or that connecting an empty store will be rejected — sending them down a needless detour or making them doubt a correct setup.

Environment and Deployment Context

  • Stellar Engine Version/Commit: main (gem4gov-cli/gem4gov.py onboard() data-store step; validate_data_store)
  • Deployment Type:
    • US Region Restricted (e.g., Access Policy constraint)
    • FedRAMP Medium
    • FedRAMP High
    • DoD IL4
    • DoD IL5
    • Stand-alone / Custom
  • Affected Component: blueprints/fedramp-high/gemini-enterprise/gem4gov-cli/gem4gov.pyonboard() data-store prompt + validate_data_store (existence/CMEK check only; no document/import-status check).

Steps to Reproduce

  1. Deploy gemini-stage-0 so an EMPTY Discovery Engine data store exists (e.g. g4g-gcs-data-store-XXXXXX), with no documents imported yet.
  2. Run gem4gov onboard, select Search Engine, and at "Do you have an existing data store(s) already created and loaded with data?" answer Y.
  3. Enter the empty data store's ID. It validates and connects successfully despite no data being loaded — demonstrating that "loaded with data" is neither required nor checked.

Expected Behavior

Reword the prompt to "already created" (drop "and loaded with data"), since loading is not a prerequisite at this step; optionally add a note that documents are imported afterward via gem4gov datastore import.

Actual Behavior

The prompt implies loading is a prerequisite; it is not enforced, so the wording misleads operators into importing before onboarding (or doubting a correct, empty-store setup).

Relevant Logs and Errors

Do you have an existing data store(s) already created and loaded with data? [y/N]: Y
Please enter a comma-separated list of data stores that you would like to connect to Gemini Enterprise: g4g-gcs-data-store-XXXXXX
(connects successfully even though the store has no documents yet)

Additional Context

Verified in gem4gov.py + auth.py: the connection splits the input on commas into IDs and passes them as dataStoreIds; validate_data_store checks existence + CMEK only — no document/import-status check. Minor doc/UX bug; the fix is a one-line prompt reword.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Level of Effort - LowQuick, well-defined tasks with no unknowns; takes a few hours up to one day to completePriority - LowMinor polish, typo fixes, or technical debt; nice to have; pick up when time permitsbugSomething isn't workinggemini for governmentGemini for Government (G4G) related

    Type

    Fields

    No fields configured for Bug.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions