Repository navigation
Add shared credential-safe SQL connection diagnostics - #1787
Merged
Paul Lizer (paullizer) merged 4 commits intoOct 20, 2026
Merged
Paul Lizer (paullizer) merged 4 commits into
Paul Lizer (paullizer) merged 4 commits into
Conversation
Classify SQL connection failures consistently across connection tests and runtime plugins, preserve bounded provider evidence in telemetry, and add isolated regressions and troubleshooting documentation. Preserve authentication and connection behavior; the live FED-16 root cause remains unresolved. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Preserve both SQL and saved-memory logging guidance, advance the SQL fix to 0.261.351, and synchronize its test and documentation versions. SQL regressions and documentation checks pass after integration; inherited memory validation remains limited by the existing shared OpenSSL dependency mismatch. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Paul Lizer (paullizer)
marked this pull request as ready for review
October 19, 2026 22:10
Resolve the module-level review invalidation introduced by PR #1787 SQL diagnostics. Exercise the three affected owners with SDK point responses and lazy query results, replace their source-only baselines with runtime evidence, and record validation in v0.261.352. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Initialize stored Cosmos responses before conditional fixture creation and strengthen successful-response type checks, addressing both CodeQL uninitialized-local alerts without changing production behavior or reducing coverage. Advance the application and related version headers to 0.261.353. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Paul Lizer (paullizer)
merged commit Oct 20, 2026
0ffe306
into
paullizer-react-v2-ui
12 checks passed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
InterfaceErrorwithout enough structured evidence to explain the failure. This fixes that gap, not the unresolved live connection cause.error_code, never raw provider messages.[SQL_CONNECTION]warnings, without requiring debug logging.Linked issue
N/A. The user explicitly requested that no GitHub issue be created.
Release Notes & Latest Features
Is this visible to end users?
Is this admin-facing (Admin Settings, governance, deployment, config)?
Operator telemetry and troubleshooting guidance change; no new admin settings or UI controls are added.
Should this become a Latest Feature card?
Screenshot needed for the card?
Version bump
application/single_app/config.pyVERSIONthird segment bumped, or not needed because this is docs-onlydeployers/version.txtbumped, or not needed becausedeployers/was not changedApplication version: base
0.261.350->0.261.351. The initial branch-only SQL version was 0.261.349; conflict resolution preserved the newer base version and synchronized SQL test/documentation references. Both SQL and saved-memory logging sections are retained. No deployer files changed.Testing / validation
Commands ran locally with external SQL/provider I/O isolated. No live FED-16 rerun was performed. After base integration, the focused SQL, optimized classifier, and documentation checks passed again.
python -m pytest -q -p no:cacheprovider --disable-warnings --tb=short functional_tests\test_sql_connection_diagnostics.py functional_tests\test_sql_connection_diagnostics_runtime.py functional_tests\test_workspace_authoring_backend.py::test_sql_editor_service_principal_does_not_silently_test_another_authentication_mode functional_tests\test_workspace_authoring_backend.py::test_sql_editor_identity_credentials_override_stale_flat_auth_hints functional_tests\test_workspace_authoring_backend.py::test_editor_connection_identities_fail_closed_without_provider_diagnostics functional_tests\test_workspace_authoring_backend.py::test_sql_editor_driver_failures_do_not_echo_resolved_credentials functional_tests\test_sql_container_odbc_runtime.py- 114 passed, including after base integration.python -O -m pytest -q -p no:cacheprovider --disable-warnings --tb=short functional_tests\test_sql_connection_diagnostics.py- 38 passed, including after base integration and a fresh-process probe with explicit checks that survive optimized Python.python -m pytest -q -p no:cacheprovider --disable-warnings --tb=short functional_tests\test_sql_odbc_driver_18_support.py functional_tests\test_unified_logging_entrypoint.py functional_tests\test_log_credential_key_redaction.py functional_tests\test_appinsights_logging_recursion_guard.py- 16 passed, 1 pre-existing failure in initial validation. The legacy debug-forwarding test expects rendered text instead of the existing constant[SIMPLE_CHAT_DEBUG_TRACE]record message. Loading the unchangedHEADlogger reproduced the same failure; it was not repaired here.python -m pytest -q -p no:cacheprovider --disable-warnings --tb=short functional_tests\test_sql_connection_diagnostics.py functional_tests\test_sql_connection_diagnostics_runtime.py functional_tests\test_logging_tag_standardization.py- initial repository-wide tag check failed on pre-existing mixed-case tags. A separate read-only inventory check also found existing missing/stale tags. Tags in modified product files are normalized, and the new SQL tag is documented. Unrelated sources were left unchanged.python functional_tests\route_tests\test_route_blueprint_policy_inventory.py- 15/15 passed in initial validation.python functional_tests\route_tests\test_route_unauthenticated_policy_contract.py- 10/10 passed in initial validation.python functional_tests\route_tests\test_route_policy_test_coverage.py- 3/3 passed in initial validation.python scripts\build_docs_inventory.py- passed, regenerated inventory unchanged at 33 user-facing actions; the diagnostic helper is excluded as infrastructure.python functional_tests\test_docs_app_surface_coverage.py- 7/7 passed, including after base integration.python functional_tests\test_docs_site_quality.py- 6/6 passed, including after base integration.python -m pytest -q -p no:cacheprovider --disable-warnings --tb=short functional_tests\test_orchestration_request_memory_resolution.py functional_tests\test_fact_memory_read_only_context.py functional_tests\test_orchestration_conversation_sources.pywith the application and functional-test directories onPYTHONPATH- 10 passed, 5 subtests passed, 47 setup errors. The inherited memory suites encounter the shared installation's pre-existing OpenSSL mismatch (lib.GEN_EMAIL), already noted in the base fix documentation. No memory assertions or shared packages were changed to bypass it.git diff --cached --check- passed for conflict resolution. Merged Python files also compiled in memory; SQL version headers and fix documentation match 0.261.351.The broader authoring fixture has a separately documented, pre-existing missing MCP validator dependency. New diagnostics regressions do not repair or depend on that broken save setup. Harness findings remain in session artifacts and are not committed.
Documentation
Added
docs/explanation/fixes/SQL_CONNECTION_DIAGNOSTICS_FIX.md; updated SQL action troubleshooting and the logging-tag reference. No new feature surface is introduced. Release-note updates were offered, but approval was unavailable, sodocs/explanation/release_notes.mdremains unchanged.Security checklist
@swagger_route(security=get_auth_security())sanitize_settings_for_user()No new Flask routes, settings payloads, or browser assets are added. Existing route authorization is retained. Test connection strings and credentials are synthetic fixtures only; live identifiers, investigation artifacts, and credentials are excluded. Provider diagnostics remain operator-side and do not expose raw exception text.