Add plugin: TCPR 0.0.1 - #2901
Open
lyts825 wants to merge 2 commits into
Open
Conversation
Member
🤖 CI Summary
What's wrongThe How to fixAdd the two missing fields to the meta:
repo: https://github.com/<your-org>/<your-repo>
contact: <email-or-other-contact>Then push a new commit to re-trigger CI. Thank you! 🙏 |
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.
Plugin Submission
Plugin information
Submission type
What changed
TCPR (Typed Constraint-Preserving Retrieval) is a free Dify Tool Plugin for exact retrieval over sparse product attributes. It provides four tools:
tcpr_searchparses and evaluates typed hard and soft constraints.import_productsvalidates and imports a caller-provided CSV or XLSX product file.rebuild_indexsafely rebuilds the current product index.get_schemareports the imported schema and index capabilities.The plugin addresses product retrieval cases where numeric, categorical, and missing attributes must be handled with explicit constraint semantics instead of unsafe string matching. The package is intended to run with Python 3.12 and Dify 1.14.2 or later, and requests 256 MiB of persistent storage.
Risk level
The plugin processes uploaded product files and writes validated snapshots, indexes, schema metadata, and import warnings to Dify persistent storage. It does not call external services, send product rows to third parties, execute commands or code, run SQL, use SSH/SFTP, automate browsers, fetch arbitrary URLs, or include bundled binaries.
Required checks
.envfiles,.gitdirectories, virtual environments, caches, logs, or IDE files.PRIVACY.mdor a hosted privacy policy, andmanifest.yamlreferences it.Security and privacy notes
The plugin has no credentials and no external network calls. It is designed for product data and does not intentionally collect personal data or telemetry. If a caller includes personal data in an uploaded product file, the data remains subject to the target Dify workspace's storage and retention controls and is not sent to an external service by this plugin. See
PRIVACY.mdin the package.Local validation
python -B -c "from verify_plugin import verify_runtime_contracts; verify_runtime_contracts(); print('RUNTIME_CONTRACTS_OK')"— passed.plugin package .— passed.PRIVACY.md,_assets/tcpr.svg, valid manifest and provider, English-only root README, no.git, virtual environment, cache, bytecode, executable, or nested package.DAD0AD48ECBD84450A4C1111D3B5658F9755F7E88D3061B752BEEAF0741A3612.This submission machine has no connected Dify Community Edition or Dify Cloud workspace, so live installation testing was not performed here. The package is ready for reviewer installation testing.
Reviewer notes
lyts825/tcpr/tcpr-0.0.1.difypkg.