Thanks for improving the Redot Git Plugin. Keep changes narrowly scoped to the editor Git provider; Redot owns the Version Control UI.
- Clone with all submodules and keep the revisions in
UPSTREAM_LOCK.mdunchanged unless the pull request is explicitly a dependency update. - Build a production library with
test_harness=no. - Run
python scripts/compare_vcs_api.pyand confirm the tracked report does not change unexpectedly. - Run the production activation fixture with Redot 26.2.
- Build a separate test-only library and run
tests/run_provider_tests.py. - For changes to credentials, callbacks, URL handling, fetch, pull, or push,
also run
tests/run_private_transport_tests.pyand confirm its sentinel scan is clean. - Run
scripts/audit_binary.pyfor every production binary built on the current host. - For release changes, run
tests/run_export_isolation.pywith the exact Redot editor/template and confirm the package command fails closed if any declared platform is missing. - Run
git diff --checkand clang-format the changed C++ files.
The exact commands and prerequisites are in README.md. Do not commit native
build outputs, generated packages, caches, fixture repositories, credentials,
or local Redot state.
- Preserve the
GitPluginclass and existingEditorVCSInterfacecontract. - Prefer the smallest change proven by a failing fixture or API report.
- Do not add a replacement VCS dock, credential store, engine patch, or automatic force-push behavior.
- Keep credentials ephemeral and sanitize diagnostics before they reach Redot's output.
- Treat a crash, timeout, parse/load error, unexplained warning, or secret sentinel match as a failed check.
Explain the user-visible behavior, the reason for the change, and the exact validation performed. Include fixture evidence for bug fixes. If a check could not be run, name the missing platform or prerequisite precisely.
Security reports do not belong in public issues. Follow SECURITY.md.