alibaba/GGEditor
A visual graph editor based on G6 and React
- Repository: https://github.com/alibaba/GGEditor
- Commit:
68e4cb609a15428d93467564a31ea443e4da35c7 - Generated: 2026-11-13T23:38:47+00:00
- Scorer 0.1.0, scoring prov-4+qual-2+sec-2, report schema v2
Scores
| Pillar | Score | Signal | Confidence | Coverage |
|---|---|---|---|---|
| AI provenance (estimated AI-generated share) | 0 | none-detected | 65% | 100% |
| Code quality | 46 | poor | 90% | 100% |
| Security | 69 | weak | 85% | 100% |
AI provenance
No AI attribution or AI-consistent velocity signals detected.
- Explicitly attributed share (lower bound): 0.0%
- Unattributed share in AI-consistent velocity bursts: 0.0%
- Estimated AI-generated share: 0.0%
| Month | Lines added | Attributed to AI |
|---|---|---|
| 2019-03 | 4 | 0% |
| 2019-04 | 852 | 0% |
| 2019-10 | 26,146 | 0% |
| 2019-11 | 14,907 | 0% |
| 2019-12 | 1,292 | 0% |
| 2020-01 | 635 | 0% |
| 2020-02 | 197 | 0% |
| 2020-03 | 376 | 0% |
| 2020-04 | 1,465 | 0% |
| 2020-05 | 28 | 0% |
| 2020-06 | 9 | 0% |
| 2020-07 | 5 | 0% |
AI provenance describes how code was produced; it is not a quality judgment. Unless attribution is explicit, these are signals consistent with AI generation, not proof. Squash/rebase workflows, imported code, and rewritten history reduce accuracy.
Code quality
Code quality is poor: test-to-source ratio 0.00, no CI test run detected; 4% of function code in complex or long functions; 16% duplicated lines. Weakest area: process.
| Area | Score |
|---|---|
| Complexity (lizard) | 90 |
| Duplication | 37 |
| Code smells (Opengrep) | 56 |
| Tests and CI | 15 |
| Documentation | 85 |
| Type safety | 40 |
| Process (Scorecard review/maintenance) | 0 |
- Functions: 351; mean complexity 1.7, 90th percentile 3; 0 complex and 1 long functions
- Duplicated lines: 16.5% of 3,430 compared
- Tests: 0 test lines for 5,800 source lines (ratio 0.00); CI test commands: none detected; 0% of recent source commits also change tests
- Docs missing or thin: contributing
Most complex functions:
Security
Security posture is weak: 2 high-severity workflow issues. Weakest area: posture.
| Area | Score |
|---|---|
| Secrets (gitleaks, tree + history) | 94 |
| Static analysis (Opengrep) | 98 |
| Vulnerable dependencies (OSV) | n/a |
| CI workflows (zizmor) | 63 |
| Posture (policy, updates, signing, lockfiles) | 0 |
| OpenSSF Scorecard | 29 |
- Posture checks passed: none; missing: security policy, dependency updates, signed commits, lockfiles
- OpenSSF Scorecard aggregate: 2.8/10 (published 2026-11-09)
Top findings
| Severity | Finding | Location |
|---|---|---|
| high | zizmor/unpinned-uses: unpinned action reference [confidence high] |
.github/workflows/gh-pages.yml:12 |
| high | zizmor/unpinned-uses: unpinned action reference [confidence high] |
.github/workflows/gh-pages.yml:16 |
| medium | opengrep/javascript.lang.security.audit.detect-non-literal-regexp: RegExp() called with a externalArray function argument, this might allow an attacker to cause a Regular Expression Denial-of-Service (ReDoS) within your application as RegExP blocks the main thread. For this reason, it is recommended to use hardcoded regexes instead. If your regex is run on user-c [confidence low] |
scripts/build.js:22 |
| medium | zizmor/artipacked: credential persistence through GitHub Actions artifacts [confidence low] |
.github/workflows/gh-pages.yml:12 |
| medium | zizmor/excessive-permissions: overly broad permissions [confidence medium] |
.github/workflows/gh-pages.yml:9 |
| low | gitleaks/generic-api-key: Possible generic-api-key secret in history (commit 15070a385b); removed from the current tree but still retrievable |
demo/dist/bundle.js:1 |
| low | gitleaks/generic-api-key: Possible generic-api-key secret in history (commit 25068a59d8); removed from the current tree but still retrievable |
dist/bundle.js:1 |
Static signals only: the scorer never runs the project's code. Secret findings are pattern matches that were not verified, and secret values are never stored.
Repository profile
- Source lines: 5,800; test lines: 0
| Language | Lines |
|---|---|
| TypeScript | 5,600 |
| JavaScript | 200 |