Repository navigation
chore: rebrand to BitterSecurity and add CI test gate - #6
Merged
Merged
Conversation
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.
What changed
Commit 1: rebrand (
d38c647): replacesPurpleAILAB/VigilowithBitterSecurity/Vigiloin 20 files: README badges and links, install docs, issue templates, therepository/bugs/homepagefields inpackages/opencode/package.json,packages/bench/package.jsonand the 7packages/opencode/packages/*/package.json, plus the Claude pluginplugin.json/marketplace.json. npm package names are not changed (none of them reference the old org).Commit 2: CI test gate (
cdc260b): adds.github/workflows/ci.yml, which runs onpull_requestand onpushtomainwith bun pinned to 1.4.2, plus.github/scripts/check-bench-data.ts.opencodejob: install,typecheck,bun test,build, CLI--versionsmoke check.benchjob:bun install --frozen-lockfile,typecheck, offline unit tests,build, data-integrity check,report --all.Bench in CI is a lightweight offline smoke subset
Full bench scoring needs a live OpenCode server and paid LLM calls (default
anthropic/claude-opus-4-5, 3 voting rounds per ground-truth finding). No stored scores are committed, so CI only runs the deterministic parts: typecheck,src/utils.test.ts+src/__tests__/setup.test.ts, build, a data-integrity check (31 dataset entries ↔ 31 baselines, findings have title/severity), andreport --all.src/scorer/baseline-scorer.test.tsis excluded. It callsscoreBaseline()with real findings, which reaches the uninitialized OpenCode client and callsprocess.exit(1)(src/utils.tserror()), killing the whole test runner. Follow-up: mock the LLM call or makeerror()throw.Intentionally left out (pending Markus's decision)
LICENSElicensor line, "PurpleCHOIms (PurpleAILAB)"PurpleCHOImsauthor fields inpackages/claude/.claude-plugin/plugin.json/marketplace.jsonpublish.ymlrepository guardgithub.repository == 'PurpleAILAB/Vigilo'(lines 64, 176). This currently skips publish-main/publish-bench; changing it turns npm publishing back on.packages/opencode/package.jsonsays MIT, whileLICENSEand the platform packages say BSL-1.1 and bench says BUSL-1.1model-requirements.tsuses 4.6, while hardcoded constants and docs still useclaude-*-4-5package.json/package-lock.json(depends onvigilo-linux-x64)packages/bench/data/dataset.json(code4rena_initia-move_2025_04,code4rena_starknet-perpetual_2025_06). The data check reports these as warnings only.Local CI results (box, bun 1.4.2, clean clone at
cdc260b)--version→ 1.0.3report --allno-op