SEZ9 opened a new issue, #11650:
URL: https://github.com/apache/seatunnel/issues/11650

   ### Search before asking
   
   - [X] I had searched in the 
[issues](https://github.com/apache/seatunnel/issues?q=is%3Aissue) and found no 
similar issues.
   
   ### What happened
   
   Sub-task of #11616 (Stage-1 items 1.1-context and 1.6). Two related defects 
in the CLI's connector knowledge base, both observed during the accuracy 
benchmark (#11553) and partially responsible for the "all models fail on 
Doris/StarRocks" clusters:
   
   **1. Silent degradation to zero connector knowledge in source checkouts / 
pip installs.**
   
   `connector_metadata.json` is generated by Java reflection during the 
seatunnel-dist build and only exists in the release tarball layout. In a source 
checkout or pip install without `SEATUNNEL_HOME`, `_load_runtime_metadata()` 
silently returns empty (a `logger.debug`), and:
   - the system-prompt catalog renders as `## Available Connectors (0 
connectors, 0 endpoints)` — the model is told there are no connectors at all;
   - `validate_connector_options` returns `valid: True` for everything 
("metadata not available"), so generated configs are unchecked;
   - `get_connector_detail("Doris")` falls through to "not found".
   
   **2. The not-found suggester can echo the queried name back.**
   
   `get_connector_detail` uses `route_by_keyword(name)` (keyword routing, not 
name correction) for suggestions, producing the absurd `Connector 'Doris' not 
found. Did you mean: Doris?` — because "doris" is its own keyword alias. There 
is also no fuzzy correction for invented names: benchmark runs observed a model 
writing `File` (a non-existent connector) for LocalFile, and the error gave no 
usable hint, so the repair loop could not recover.
   
   ### What you expected to happen
   
   - A valid connector name without available metadata should be told "known 
connector, option metadata unavailable (+ remediation hint)" instead of "not 
found".
   - Unknown names should get edit-distance/substring suggestions ("File" → 
LocalFile, FtpFile, S3File...) that never include the queried name itself.
   - The catalog should never claim "0 connectors" when a static name index 
exists; it should list known names and state clearly that option details are 
unavailable.
   - The degradation should be visible (warning log), not silent.
   
   ### SeaTunnel Version
   
   dev
   
   ### SeaTunnel Config
   
   n/a (CLI behavior)
   
   ### Running Command
   
   ```
   # any source checkout without SEATUNNEL_HOME / metadata file
   seatunnel "sync PostgreSQL orders to Doris"
   ```
   
   ### Error Exception
   
   See above ("Did you mean: Doris?").
   
   ### Zeta or Flink or Spark Version
   
   _No response_
   
   ### Java or Scala Version
   
   Python 3.10+ (seatunnel-cli)
   
   ### Screenshots
   
   _No response_
   
   ### Are you willing to submit PR?
   
   - [X] Yes I am willing to submit a PR!
   
   ### Code of Conduct
   
   - [X] I agree to follow this project's [Code of 
Conduct](https://www.apache.org/foundation/policies/conduct)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to