RepoTrust

Leaderboard github.com

DroidKaigi/conference-app-2019

The Official Conference App for DroidKaigi 2019 Tokyo

  • View repository ↗
  • Kotlin
  • ★ 809
  • commit 839b6dca4780
  • scored 2026-11-14
  • scoring prov-5+qual-2+sec-2

AI provenance

0%

none-detected

Confidence
65%
Coverage
100%

Estimated share of AI-generated code. Explicit attribution is a lower bound.

Code quality

76/100

adequate

Confidence
90%
Coverage
100%

Complexity, duplication, lint density, tests, CI, docs and review process.

Security

47/100

poor

Confidence
85%
Coverage
100%

Secrets, static analysis, vulnerable dependencies, CI and supply-chain posture.

AI provenance

0% none-detected

No AI attribution or AI-consistent velocity signals detected.

How the score is built

  • Explicitly attributed share0%
  • Unattributed share in AI-pace bursts0%
  • Estimated AI-generated share0%
  • AI tool configuration files0
  • Work sessions at AI pace0
  • Releases at AI pace0
  • Coding-style index (1.0+ means possible)0.00

Lines added per month all AI-attributed share

  1. 2018-06387 · 0% AI
  2. 2018-071,005 · 0% AI
  3. 2018-08219 · 0% AI
  4. 2018-092,982 · 0% AI
  5. 2018-102,726 · 0% AI
  6. 2018-112,444 · 0% AI
  7. 2018-122,857 · 0% AI
  8. 2019-0116,631 · 0% AI
  9. 2019-026,174 · 0% AI
  10. 2019-042 · 0% AI
  11. 2019-05170 · 0% AI

Evidence by analyzer

Explicit AI attributionok
attributed_commit_share
0.0%
attributed_commits
0
attributed_loc
0
attributed_loc_share
0.0%
commits
1,562
effective_loc
35,597
tools_detected
0
AI tool configurationok
artifacts
0
tools_configured
0
workflow_agents
0
Commit velocityok
excluded_import_loc
0
flagged_loc
0
flagged_loc_share
0.0%
flagged_units
0
max_loc_per_hour
288
measured_loc
35,597
median_loc_per_hour
48.14
pr_timed_units
2
pre_ai_era_burst_loc
0
pre_ai_era_bursts
0
pre_ai_era_measured_loc
35,597
work_units
640
Release velocityok
flagged_releases
0
max_loc_per_day
1,426.30
releases
3
Coding styleok
count:assistant_voice
0
count:emoji_in_code
0
count:narrated_steps
0
count:placeholder
0
files:assistant_voice
0
files:emoji_in_code
0
files:narrated_steps
0
files:placeholder
0
index
0
lines_scanned
19,271
per_kloc:assistant_voice
0
per_kloc:emoji_in_code
0
per_kloc:narrated_steps
0
per_kloc:placeholder
0

Code quality

76 adequate

Code quality is adequate: test-to-source ratio 0.12, CI runs tests; 2% of function code in complex or long functions; 7% duplicated lines. Weakest area: process.

How the score is built

  • Complexity94
  • Duplication67
  • Lint and smells95
  • Tests and CI72
  • Documentation80
  • Type safetynot measured
  • Review process30

Evidence by analyzer

Complexity (lizard)ok2 items
complex_functions
1
function_nloc
9,146
functions
1,068
long_functions
1
many_param_functions
5
mean_ccn
1.75
p90_ccn
3
risky_nloc_share
2.0%
Duplication (jscpd)ok10 items
compared_lines
11,360
duplicated_lines
770
duplicated_share
6.8%
files
366
Lintok
category:best-practice
2
category:correctness
7
findings
9
scanned_lines
19,271
weighted_findings
3.75
Tests and CIok4 items
  • CI config: .circleci/config.yml .circleci/config.yml
  • CI config: .travis.yml .travis.yml
  • CI runs tests (unittest)
  • CI runs linters (ktlint)
check:ci_present
yes
check:ci_runs_lint
yes
check:ci_runs_tests
yes
check:has_tests
yes
check:test_ratio
no
check:tests_cochange
no
ci_files
2
cochange_commits
203
cochange_share
3.0%
source_lines
19,271
test_lines
2,320
test_ratio
0.12
Documentationok3 items
  • README.md README.md
  • LICENSE LICENSE
  • CONTRIBUTING.md CONTRIBUTING.md
check:changelog
no
check:contributing
yes
check:license
yes
check:readme
yes
readme_lines
217
Type safetyskipped

Security

47 poor

Security posture is poor: 1 possible secret(s) in the tree, 2 only in history; 25 known vulnerabilities in 7 dependencies. Weakest area: posture.

How the score is built

  • Secrets47
  • Static analysis (SAST)99
  • Vulnerable dependencies31
  • CI workflowsnot measured
  • Security posture0
  • OpenSSF Scorecard18

Evidence by analyzer

OpenSSF Scorecardok10 items
aggregate
2.50
check:Binary-Artifacts
yes
check:CII-Best-Practices
no
check:Code-Review
yes
check:Fuzzing
no
check:License
yes
check:Maintained
no
check:Pinned-Dependencies
no
check:SAST
no
check:Security-Policy
no
check:Signed-Releases
no
Package registriesskipped

no registry dependencies declared

Secrets (gitleaks)ok
secrets_current
1
secrets_history
2
secrets_low_confidence
0
secrets_nonprod
0
Static analysis (opengrep)ok
findings
2
findings_high
0
findings_low
0
findings_medium
2
parse_errors
1
scanned_lines
19,271
weighted_findings
0.50
Dependencies (osv-scanner)ok
penalty
70
vulnerabilities
25
vulnerable_packages
7
vulns_critical
3
vulns_high
9
vulns_low
2
vulns_medium
10
vulns_unknown
1
CI workflows (zizmor)skipped
Security postureok
check:dependency_updates
no
check:lockfiles
yes
check:security_policy
no
check:signed_commits
no
signed_commit_share
3.5%
unpinned_manifests
0
Release downloadsok2 items
binary_assets
2
signals
1
suspicious
0

Findings

3 critical10 high17 medium9 low

SeverityRuleLocationMessageTool
critical osv/GHSA-52p9-v744-mwjj scripts/danger/Gemfile.lock [email protected] (RubyGems) is affected by GHSA-52p9-v744-mwjj Dependencies (osv-scanner)
critical osv/GHSA-69p6-wvmq-27gg scripts/danger/Gemfile.lock [email protected] (RubyGems) is affected by GHSA-69p6-wvmq-27gg Dependencies (osv-scanner)
critical osv/GHSA-mqm2-cgpr-p4m6 scripts/danger/Gemfile.lock [email protected] (RubyGems) is affected by GHSA-mqm2-cgpr-p4m6 Dependencies (osv-scanner)
high gitleaks/gcp-api-key frontend/android/google-services.json:32 Possible gcp-api-key secret in the current tree Secrets (gitleaks)
high osv/GHSA-5cm2-9h8c-rvfx frontend/ios/Gemfile.lock [email protected] (RubyGems) is affected by GHSA-5cm2-9h8c-rvfx Dependencies (osv-scanner)
high osv/GHSA-7627-mp87-jf6q frontend/ios/Gemfile.lock [email protected] (RubyGems) is affected by GHSA-7627-mp87-jf6q Dependencies (osv-scanner)
high osv/GHSA-8474-xrp6-wh69 frontend/ios/Gemfile.lock [email protected] (RubyGems) is affected by GHSA-8474-xrp6-wh69 Dependencies (osv-scanner)
high osv/GHSA-g397-v4w5-4m79 frontend/ios/Gemfile.lock [email protected] (RubyGems) is affected by GHSA-g397-v4w5-4m79 Dependencies (osv-scanner)
high osv/GHSA-h8w8-99g7-qmvj frontend/ios/Gemfile.lock [email protected] (RubyGems) is affected by GHSA-h8w8-99g7-qmvj Dependencies (osv-scanner)
high osv/GHSA-h27x-rffw-24p4 scripts/danger/Gemfile.lock [email protected] (RubyGems) is affected by GHSA-h27x-rffw-24p4 Dependencies (osv-scanner)
high osv/GHSA-jxhc-q857-3j6g scripts/danger/Gemfile.lock [email protected] (RubyGems) is affected by GHSA-jxhc-q857-3j6g Dependencies (osv-scanner)
high osv/GHSA-pfpr-3463-c6jh scripts/danger/Gemfile.lock [email protected] (RubyGems) is affected by GHSA-pfpr-3463-c6jh Dependencies (osv-scanner)
high osv/GHSA-pphf-gfrm-v32r scripts/danger/Gemfile.lock [email protected] (RubyGems) is affected by GHSA-pphf-gfrm-v32r Dependencies (osv-scanner)
medium opengrep/bash.lang.best-practice.useless-cat .travis/android/run.bash:27 Useless call to 'cat' in a pipeline. Use '<' and '>' for any command to read from a file or write to a file. Lint
medium opengrep/bash.lang.best-practice.useless-cat .travis/android/run.bash:28 Useless call to 'cat' in a pipeline. Use '<' and '>' for any command to read from a file or write to a file. Lint
medium gitleaks/curl-auth-user .circleci/scripts/download_latest_apk:15 Possible curl-auth-user secret in history (commit 346e9f6b63); removed from the current tree but still retrievable Secrets (gitleaks)
medium opengrep/bash.curl.security.curl-pipe-bash .travis/android/before_install.bash:10 Data is being piped into `bash` from a `curl` command. An attacker with control of the server in the `curl` command could inject malicious code into the pipe, resulting in a system compromise. Avoid piping untrusted data into `bash` or... Static analysis (opengrep)
medium opengrep/bash.curl.security.curl-pipe-bash .travis/android/before_install.bash:9 Data is being piped into `bash` from a `curl` command. An attacker with control of the server in the `curl` command could inject malicious code into the pipe, resulting in a system compromise. Avoid piping untrusted data into `bash` or... Static analysis (opengrep)
medium gitleaks/gcp-api-key frontend/google-services.json:32 Possible gcp-api-key secret in history (commit ed192e8169); removed from the current tree but still retrievable Secrets (gitleaks)
medium osv/GHSA-2j26-frm8-cmj9 frontend/ios/Gemfile.lock [email protected] (RubyGems) is affected by GHSA-2j26-frm8-cmj9 Dependencies (osv-scanner)
medium osv/GHSA-89vf-4333-qx8v frontend/ios/Gemfile.lock [email protected] (RubyGems) is affected by GHSA-89vf-4333-qx8v Dependencies (osv-scanner)
medium osv/GHSA-cg4j-q9v8-6v38 frontend/ios/Gemfile.lock [email protected] (RubyGems) is affected by GHSA-cg4j-q9v8-6v38 Dependencies (osv-scanner)
medium osv/GHSA-j6gc-792m-qgm2 frontend/ios/Gemfile.lock [email protected] (RubyGems) is affected by GHSA-j6gc-792m-qgm2 Dependencies (osv-scanner)
medium osv/GHSA-pj73-v5mw-pm9j frontend/ios/Gemfile.lock [email protected] (RubyGems) is affected by GHSA-pj73-v5mw-pm9j Dependencies (osv-scanner)
medium osv/GHSA-wv3x-4vxv-whpp frontend/ios/Gemfile.lock [email protected] (RubyGems) is affected by GHSA-wv3x-4vxv-whpp Dependencies (osv-scanner)
medium osv/GHSA-8gmh-2hhj-2hv9 scripts/danger/Gemfile.lock [email protected] (RubyGems) is affected by GHSA-8gmh-2hhj-2hv9 Dependencies (osv-scanner)
medium osv/GHSA-9crm-g4mf-wc5j scripts/danger/Gemfile.lock [email protected] (RubyGems) is affected by GHSA-9crm-g4mf-wc5j Dependencies (osv-scanner)
medium osv/GHSA-9f42-57jx-vpp3 scripts/danger/Gemfile.lock [email protected] (RubyGems) is affected by GHSA-9f42-57jx-vpp3 Dependencies (osv-scanner)
medium osv/GHSA-j82w-28jv-3pmj scripts/danger/Gemfile.lock [email protected] (RubyGems) is affected by GHSA-j82w-28jv-3pmj Dependencies (osv-scanner)
medium osv/GHSA-qq38-m9mg-xjj5 scripts/danger/Gemfile.lock [email protected] (RubyGems) is affected by GHSA-qq38-m9mg-xjj5 Dependencies (osv-scanner)
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command .travis/android/before_install.bash:5 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command .travis/android/promote_to_production.bash:10 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command .travis/android/release_to_alpha.bash:14 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command .travis/android/run.bash:10 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low opengrep/bash.lang.correctness.unquoted-command-substitution-in-command .travis/android/run.bash:18 The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or other separators specified by the IFS variable. You should surround it with double quotes to avoid splitting the result. Lint
low opengrep/bash.lang.correctness.unquoted-command-substitution-in-command scripts/git/install.bash:9 The result of command substitution $(...) or `...`, if unquoted, is split on whitespace or other separators specified by the IFS variable. You should surround it with double quotes to avoid splitting the result. Lint
low opengrep/bash.lang.correctness.unquoted-variable-expansion-in-command scripts/git/install.bash:9 Variable expansions must be double-quoted so as to prevent being split into multiple pieces according to whitespace or whichever separator is specified by the IFS variable. If you really wish to split the variable's contents, you may... Lint
low osv/GHSA-6wx8-w4f5-wwcr frontend/ios/Gemfile.lock [email protected] (RubyGems) is affected by GHSA-6wx8-w4f5-wwcr Dependencies (osv-scanner)
low osv/GHSA-539f-xcgw-2gjg scripts/danger/Gemfile.lock [email protected] (RubyGems) is affected by GHSA-539f-xcgw-2gjg Dependencies (osv-scanner)

Tools and coverage

Every analyzer that ran on this commit. A failed or skipped tool is a coverage gap: its share of the score is left out and the coverage figure drops.

AnalyzerPillarStatusVersionFindingsNote
AI tool configurationAI provenanceoksignatures-v10
Explicit AI attributionAI provenanceoksignatures-v10
Release velocityAI provenanceokprov-40
Coding styleAI provenanceok—0
Commit velocityAI provenanceokprov-40
Complexity (lizard)Code qualityoklizard 1.25.10
DocumentationCode qualityok—0
Duplication (jscpd)Code qualityokrepotrust-dup-w60
LintCode qualityokopengrep 1.33.1; rules f1d2b562b4149
Tests and CICode qualityok—0
Type safetyCode qualityskipped—0
CI workflows (zizmor)Securityskipped—0
Dependencies (osv-scanner)Securityokosv-scanner version: 2.7.125
Release downloadsSecurityok—0
Security postureSecurityok—0
Package registriesSecurityskipped—0no registry dependencies declared
Static analysis (opengrep)Securityokopengrep 1.33.1; rules f1d2b562b4142
OpenSSF ScorecardSecurityokscorecard v5.6.00
Secrets (gitleaks)Securityokgitleaks 8.30.13

Score history

Scores from different scoring versions aren't directly comparable.

ScoredCommitScoringAI provenanceQualitySecurity
2026-11-14839b6dca4780prov-5+qual-2+sec-20%7647
2026-11-14839b6dca4780prov-4+qual-2+sec-20%7647

Embed a badge

Maintainers can show these in a README. Badges update when the repository is re-scored.

[![RepoTrust ai](https://repotrust.synapticcyber.com/badge/github.com/DroidKaigi/conference-app-2019/ai.svg)](https://repotrust.synapticcyber.com/r/github.com/DroidKaigi/conference-app-2019/)
[![RepoTrust quality](https://repotrust.synapticcyber.com/badge/github.com/DroidKaigi/conference-app-2019/quality.svg)](https://repotrust.synapticcyber.com/r/github.com/DroidKaigi/conference-app-2019/)
[![RepoTrust security](https://repotrust.synapticcyber.com/badge/github.com/DroidKaigi/conference-app-2019/security.svg)](https://repotrust.synapticcyber.com/r/github.com/DroidKaigi/conference-app-2019/)
Full text report

Scores

Pillar Score Signal Confidence Coverage
AI provenance (estimated AI-generated share) 0 none-detected 65% 100%
Code quality 76 adequate 90% 100%
Security 47 poor 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
2018-06 387 0%
2018-07 1,005 0%
2018-08 219 0%
2018-09 2,982 0%
2018-10 2,726 0%
2018-11 2,444 0%
2018-12 2,857 0%
2019-01 16,631 0%
2019-02 6,174 0%
2019-04 2 0%
2019-05 170 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 adequate: test-to-source ratio 0.12, CI runs tests; 2% of function code in complex or long functions; 7% duplicated lines. Weakest area: process.

Area Score
Complexity (lizard) 94
Duplication 67
Code smells (Opengrep) 95
Tests and CI 72
Documentation 80
Type safety n/a
Process (Scorecard review/maintenance) 30
  • Functions: 1,068; mean complexity 1.8, 90th percentile 3; 1 complex and 1 long functions
  • Duplicated lines: 6.8% of 11,360 compared
  • Tests: 2,320 test lines for 19,271 source lines (ratio 0.12); CI test commands: unittest; 3% of recent source commits also change tests
  • Docs missing or thin: changelog

Most complex functions:

Security

Security posture is poor: 1 possible secret(s) in the tree, 2 only in history; 25 known vulnerabilities in 7 dependencies. Weakest area: posture.

Area Score
Secrets (gitleaks, tree + history) 47
Static analysis (Opengrep) 99
Vulnerable dependencies (OSV) 31
CI workflows (zizmor) n/a
Posture (policy, updates, signing, lockfiles) 0
OpenSSF Scorecard 18
  • Known vulnerabilities: 25 in 7 packages (critical 3, high 9, medium 10, low 2)

  • Posture checks passed: lockfiles; missing: security policy, dependency updates, signed commits

  • OpenSSF Scorecard aggregate: 2.5/10 (published 2026-11-09)

Top findings

Severity Finding Location
critical osv/GHSA-69p6-wvmq-27gg: [email protected] (RubyGems) is affected by GHSA-69p6-wvmq-27gg scripts/danger/Gemfile.lock
critical osv/GHSA-52p9-v744-mwjj: [email protected] (RubyGems) is affected by GHSA-52p9-v744-mwjj scripts/danger/Gemfile.lock
critical osv/GHSA-mqm2-cgpr-p4m6: [email protected] (RubyGems) is affected by GHSA-mqm2-cgpr-p4m6 scripts/danger/Gemfile.lock
high gitleaks/gcp-api-key: Possible gcp-api-key secret in the current tree frontend/android/google-services.json:32
high osv/GHSA-8474-xrp6-wh69: [email protected] (RubyGems) is affected by GHSA-8474-xrp6-wh69 frontend/ios/Gemfile.lock
high osv/GHSA-7627-mp87-jf6q: [email protected] (RubyGems) is affected by GHSA-7627-mp87-jf6q frontend/ios/Gemfile.lock
high osv/GHSA-g397-v4w5-4m79: [email protected] (RubyGems) is affected by GHSA-g397-v4w5-4m79 frontend/ios/Gemfile.lock
high osv/GHSA-h8w8-99g7-qmvj: [email protected] (RubyGems) is affected by GHSA-h8w8-99g7-qmvj frontend/ios/Gemfile.lock
high osv/GHSA-5cm2-9h8c-rvfx: [email protected] (RubyGems) is affected by GHSA-5cm2-9h8c-rvfx frontend/ios/Gemfile.lock
high osv/GHSA-h27x-rffw-24p4: [email protected] (RubyGems) is affected by GHSA-h27x-rffw-24p4 scripts/danger/Gemfile.lock
high osv/GHSA-jxhc-q857-3j6g: [email protected] (RubyGems) is affected by GHSA-jxhc-q857-3j6g scripts/danger/Gemfile.lock
high osv/GHSA-pfpr-3463-c6jh: [email protected] (RubyGems) is affected by GHSA-pfpr-3463-c6jh scripts/danger/Gemfile.lock
high osv/GHSA-pphf-gfrm-v32r: [email protected] (RubyGems) is affected by GHSA-pphf-gfrm-v32r scripts/danger/Gemfile.lock
medium gitleaks/curl-auth-user: Possible curl-auth-user secret in history (commit 346e9f6b63); removed from the current tree but still retrievable .circleci/scripts/download_latest_apk:15
medium gitleaks/gcp-api-key: Possible gcp-api-key secret in history (commit ed192e8169); removed from the current tree but still retrievable frontend/google-services.json:32
medium opengrep/bash.curl.security.curl-pipe-bash: Data is being piped into bash from a curl command. An attacker with control of the server in the curl command could inject malicious code into the pipe, resulting in a system compromise. Avoid piping untrusted data into bash or any other shell if you can. If you must do this, consider checki [confidence low] .travis/android/before_install.bash:9
medium opengrep/bash.curl.security.curl-pipe-bash: Data is being piped into bash from a curl command. An attacker with control of the server in the curl command could inject malicious code into the pipe, resulting in a system compromise. Avoid piping untrusted data into bash or any other shell if you can. If you must do this, consider checki [confidence low] .travis/android/before_install.bash:10
medium osv/GHSA-2j26-frm8-cmj9: [email protected] (RubyGems) is affected by GHSA-2j26-frm8-cmj9 frontend/ios/Gemfile.lock
medium osv/GHSA-89vf-4333-qx8v: [email protected] (RubyGems) is affected by GHSA-89vf-4333-qx8v frontend/ios/Gemfile.lock
medium osv/GHSA-cg4j-q9v8-6v38: [email protected] (RubyGems) is affected by GHSA-cg4j-q9v8-6v38 frontend/ios/Gemfile.lock
medium osv/GHSA-j6gc-792m-qgm2: [email protected] (RubyGems) is affected by GHSA-j6gc-792m-qgm2 frontend/ios/Gemfile.lock
medium osv/GHSA-pj73-v5mw-pm9j: [email protected] (RubyGems) is affected by GHSA-pj73-v5mw-pm9j frontend/ios/Gemfile.lock
medium osv/GHSA-wv3x-4vxv-whpp: [email protected] (RubyGems) is affected by GHSA-wv3x-4vxv-whpp frontend/ios/Gemfile.lock
medium osv/GHSA-8gmh-2hhj-2hv9: [email protected] (RubyGems) is affected by GHSA-8gmh-2hhj-2hv9 scripts/danger/Gemfile.lock
medium osv/GHSA-9crm-g4mf-wc5j: [email protected] (RubyGems) is affected by GHSA-9crm-g4mf-wc5j scripts/danger/Gemfile.lock

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.

Distribution signals

Signals consistent with a repository that exists to distribute a download. They are heuristics, not a verdict; release files were not downloaded or inspected.

Repository profile

  • Source lines: 19,271; test lines: 2,320
Language Lines
Kotlin 17,026
Swift 3,655
Java 617
Shell 293