openvibers/openvibe.host Commits

CI: run the shared security workflow (gitleaks secret scan + dependency audit, Track Q)

OP OpenVibers committed 23 Sept 2026 · 4276812c2a · 2 files, +14 −0

Calls OpenVibers/OpenVibe.Shared/.github/workflows/security.yml@83c998b.
.gitleaks.toml allowlists only proven false positives (test fixtures / doc placeholders), matched on path AND value.

Changes

ddiff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
iindex 6664b5a..baabac4 100644
---- a/.github/workflows/ci.yml
++++ b/.github/workflows/ci.yml
@@@ -21,3 +21,6 @@ jobs:
# until then the check reports them as undefined. Make this step blocking again with that release.
- name: contract check (openvibe-contracts)
run: npx openvibe-contracts-check --service host --src lib --src server
++ # Secret scan (gitleaks) and dependency audit, shared by every OpenVibers repo (Track Q).
++ security:
++ uses: OpenVibers/OpenVibe.Shared/.github/workflows/security.yml@83c998b65424fb97e6f6de55ad9cc5981767e89c
ddiff --git a/.gitleaks.toml b/.gitleaks.toml
nnew file mode 100644
iindex 0000000..898c768
---- /dev/null
++++ b/.gitleaks.toml
@@@ -0,0 +1,11 @@
++# gitleaks configuration, used by the shared security workflow
++# (OpenVibers/OpenVibe.Shared/.github/workflows/security.yml). The default rules stay on; every
++# allowlist below is one proven false positive, matched on path AND value so nothing else is hidden.
++[extend]
++useDefault = true
++
++[[allowlists]]
++description = "Fake Stripe key planted in a test deploy to prove Host rejects and never echoes secrets"
++condition = "AND"
++paths = ['''^test/host-secrets-dashboard\.test\.js$''']
++regexes = ['''^sk_live_TOPSECRET123$''']