Skip to content

[Enhancement] Add a dependency-license check to the audit workflow #1031

Description

@RUKAYAT-CODER

Overview

.github/workflows/audit.yml runs npm audit and depcheck but performs no license check. src/audit/analyzers/NetworkAnalyzer.ts contains a checkLicenses code path (with its own console.error at line 488), suggesting the concern was recognised but never wired into CI. A mobile app shipping to the App Store and Play Store with ~120 direct dependencies needs to know if a copyleft-licensed package enters the tree.

Specifications

Features:

  • A license scan over the production dependency tree
  • An allowlist of acceptable licenses, failing on anything outside it
  • A generated attribution file for the app's legal notices screen

Tasks:

  • Add a license-checking step to audit.yml scoped to --production
  • Define the allowlist and document the review process for exceptions
  • Generate an attribution file and surface it in the app settings
  • Reconcile with the checkLicenses path in NetworkAnalyzer.ts — implement it properly or remove it

Impacted Files:

  • .github/workflows/audit.yml
  • src/audit/analyzers/NetworkAnalyzer.ts
  • src/components/settings/

Acceptance Criteria

  • A disallowed license fails CI
  • The allowlist and exception process are documented
  • The app displays third-party attributions

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions