oss-pulse 0.1.3 → 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +33 -12
- package/action.yml +5 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +4 -2
- package/dist/cli.js.map +1 -1
- package/dist/format.d.ts +1 -0
- package/dist/format.d.ts.map +1 -1
- package/dist/format.js +19 -0
- package/dist/format.js.map +1 -1
- package/dist/types.d.ts +1 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +1 -0
- package/dist/types.js.map +1 -1
- package/docs/RELEASE.md +69 -8
- package/docs/examples/README.md +1 -0
- package/docs/examples/chalk-chalk.md +40 -0
- package/docs/examples/octocat-hello-world.md +1 -0
- package/docs/examples/sindresorhus-is.md +3 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -15,7 +15,7 @@ node dist/cli.js scan . --format markdown
|
|
|
15
15
|
After the package is published:
|
|
16
16
|
|
|
17
17
|
```bash
|
|
18
|
-
npx --yes oss-pulse@0.1.
|
|
18
|
+
npx --yes oss-pulse@0.1.4 scan . --format markdown
|
|
19
19
|
```
|
|
20
20
|
|
|
21
21
|
## CLI
|
|
@@ -24,6 +24,7 @@ npx --yes oss-pulse@0.1.3 scan . --format markdown
|
|
|
24
24
|
oss-pulse scan [path] --format markdown
|
|
25
25
|
oss-pulse scan [path] --format json
|
|
26
26
|
oss-pulse scan [path] --format release-notes
|
|
27
|
+
oss-pulse scan [path] --format action-summary
|
|
27
28
|
oss-pulse scan [path] --format contributor-onboarding
|
|
28
29
|
oss-pulse scan [path] --format triage-suggestions
|
|
29
30
|
oss-pulse scan [path] --format sarif
|
|
@@ -33,6 +34,19 @@ oss-pulse scan [path] --format markdown --fail-under 80
|
|
|
33
34
|
oss-pulse scan [path] --format markdown --summary-only
|
|
34
35
|
```
|
|
35
36
|
|
|
37
|
+
Choose the output format by audience:
|
|
38
|
+
|
|
39
|
+
| Format | Use it when you need |
|
|
40
|
+
| --- | --- |
|
|
41
|
+
| `markdown` | A readable maintainer report for terminals, PR summaries, or `GITHUB_STEP_SUMMARY`. |
|
|
42
|
+
| `json` | Stable machine-readable output for dashboards, scripts, or repository automation. |
|
|
43
|
+
| `release-notes` | A first draft of release notes from current readiness signals. |
|
|
44
|
+
| `action-summary` | Compact Markdown for GitHub step summaries with score, status, and the top three actions. |
|
|
45
|
+
| `contributor-onboarding` | A contributor-facing checklist for setup and first contribution paths. |
|
|
46
|
+
| `triage-suggestions` | Maintainer prompts for turning missing surfaces into issues or review tasks. |
|
|
47
|
+
| `sarif` | GitHub code scanning or security dashboard ingestion. |
|
|
48
|
+
| `github-annotations` | CI annotations that surface high/medium/low remediation actions directly in checks. |
|
|
49
|
+
|
|
36
50
|
The report includes:
|
|
37
51
|
|
|
38
52
|
- maintainer readiness score
|
|
@@ -42,6 +56,7 @@ The report includes:
|
|
|
42
56
|
- JSON Schema for automation consumers at `docs/report.schema.json`
|
|
43
57
|
- Markdown output for GitHub summaries
|
|
44
58
|
- release notes draft output for maintainer updates
|
|
59
|
+
- Action-focused summary output for compact GitHub step summaries
|
|
45
60
|
- contributor onboarding output for first-time contributors
|
|
46
61
|
- triage suggestions for issue queues and pull request review
|
|
47
62
|
- SARIF output for GitHub code scanning and security dashboards
|
|
@@ -61,37 +76,43 @@ node dist/cli.js scan . --format markdown --fail-under 80
|
|
|
61
76
|
Pull request summary gate:
|
|
62
77
|
|
|
63
78
|
```bash
|
|
64
|
-
npx --yes oss-pulse@0.1.
|
|
79
|
+
npx --yes oss-pulse@0.1.4 scan . --format markdown --summary-only --fail-under 80 >> "$GITHUB_STEP_SUMMARY"
|
|
65
80
|
```
|
|
66
81
|
|
|
67
82
|
Release notes draft:
|
|
68
83
|
|
|
69
84
|
```bash
|
|
70
|
-
npx --yes oss-pulse@0.1.
|
|
85
|
+
npx --yes oss-pulse@0.1.4 scan . --format release-notes
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
Action-focused summary:
|
|
89
|
+
|
|
90
|
+
```bash
|
|
91
|
+
npx --yes oss-pulse@0.1.4 scan . --format action-summary
|
|
71
92
|
```
|
|
72
93
|
|
|
73
94
|
Contributor onboarding report:
|
|
74
95
|
|
|
75
96
|
```bash
|
|
76
|
-
npx --yes oss-pulse@0.1.
|
|
97
|
+
npx --yes oss-pulse@0.1.4 scan . --format contributor-onboarding
|
|
77
98
|
```
|
|
78
99
|
|
|
79
100
|
Issue and pull request triage:
|
|
80
101
|
|
|
81
102
|
```bash
|
|
82
|
-
npx --yes oss-pulse@0.1.
|
|
103
|
+
npx --yes oss-pulse@0.1.4 scan . --format triage-suggestions
|
|
83
104
|
```
|
|
84
105
|
|
|
85
106
|
SARIF for code scanning:
|
|
86
107
|
|
|
87
108
|
```bash
|
|
88
|
-
npx --yes oss-pulse@0.1.
|
|
109
|
+
npx --yes oss-pulse@0.1.4 scan . --format sarif --output oss-pulse.sarif
|
|
89
110
|
```
|
|
90
111
|
|
|
91
112
|
GitHub workflow annotations:
|
|
92
113
|
|
|
93
114
|
```bash
|
|
94
|
-
npx --yes oss-pulse@0.1.
|
|
115
|
+
npx --yes oss-pulse@0.1.4 scan . --format github-annotations
|
|
95
116
|
```
|
|
96
117
|
|
|
97
118
|
## GitHub Actions
|
|
@@ -110,13 +131,13 @@ jobs:
|
|
|
110
131
|
- uses: actions/checkout@v5
|
|
111
132
|
with:
|
|
112
133
|
fetch-depth: 0
|
|
113
|
-
- run: npx --yes oss-pulse@0.1.
|
|
134
|
+
- run: npx --yes oss-pulse@0.1.4 scan . --format markdown --summary-only --fail-under 80 >> "$GITHUB_STEP_SUMMARY"
|
|
114
135
|
```
|
|
115
136
|
|
|
116
|
-
Repository Action usage
|
|
137
|
+
Repository Action usage with a pinned release tag:
|
|
117
138
|
|
|
118
139
|
```yaml
|
|
119
|
-
- uses:
|
|
140
|
+
- uses: 2Eungk/oss-pulse@v0.1.4
|
|
120
141
|
with:
|
|
121
142
|
path: "."
|
|
122
143
|
format: markdown
|
|
@@ -129,11 +150,11 @@ Action inputs:
|
|
|
129
150
|
| Input | Default | Description |
|
|
130
151
|
| --- | --- | --- |
|
|
131
152
|
| `path` | `.` | Repository path to scan. |
|
|
132
|
-
| `format` | `markdown` | One of `markdown`, `json`, `release-notes`, `contributor-onboarding`, `triage-suggestions`, `sarif`, or `github-annotations`. |
|
|
153
|
+
| `format` | `markdown` | One of `markdown`, `json`, `release-notes`, `action-summary`, `contributor-onboarding`, `triage-suggestions`, `sarif`, or `github-annotations`. |
|
|
133
154
|
| `fail-under` | `0` | Exit 1 when the score is below this threshold. |
|
|
134
155
|
| `summary-only` | `false` | Emit compact Markdown with score and next actions. |
|
|
135
156
|
|
|
136
|
-
|
|
157
|
+
Prefer a pinned release tag for the repository Action instead of a branch name.
|
|
137
158
|
|
|
138
159
|
When `format` is `github-annotations`, the Action prints workflow commands to stdout so GitHub can render annotations in the checks UI.
|
|
139
160
|
|
package/action.yml
CHANGED
|
@@ -1,13 +1,17 @@
|
|
|
1
1
|
name: OSS Pulse
|
|
2
2
|
description: Turn repository maintenance signals into an actionable OSS health report.
|
|
3
3
|
|
|
4
|
+
branding:
|
|
5
|
+
icon: activity
|
|
6
|
+
color: purple
|
|
7
|
+
|
|
4
8
|
inputs:
|
|
5
9
|
path:
|
|
6
10
|
description: Repository path to scan.
|
|
7
11
|
required: false
|
|
8
12
|
default: "."
|
|
9
13
|
format:
|
|
10
|
-
description: Output format. Supported values are markdown, json, release-notes, contributor-onboarding, triage-suggestions, sarif, and github-annotations.
|
|
14
|
+
description: Output format. Supported values are markdown, json, release-notes, action-summary, contributor-onboarding, triage-suggestions, sarif, and github-annotations.
|
|
11
15
|
required: false
|
|
12
16
|
default: markdown
|
|
13
17
|
fail-under:
|
package/dist/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAqCA,wBAAsB,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAGtF;AAkBD,wBAAsB,IAAI,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA+BjE"}
|
package/dist/cli.js
CHANGED
|
@@ -5,7 +5,7 @@ import { fileURLToPath } from "node:url";
|
|
|
5
5
|
import { Command } from "commander";
|
|
6
6
|
import { z } from "zod";
|
|
7
7
|
import { RepositoryPathError, UnexpectedOutputFormatError } from "./errors.js";
|
|
8
|
-
import { formatContributorOnboarding, formatJson, formatMarkdown, formatMarkdownSummary, formatReleaseNotes, formatTriageSuggestions, } from "./format.js";
|
|
8
|
+
import { formatActionSummary, formatContributorOnboarding, formatJson, formatMarkdown, formatMarkdownSummary, formatReleaseNotes, formatTriageSuggestions, } from "./format.js";
|
|
9
9
|
import { scanRepository } from "./git.js";
|
|
10
10
|
import { formatGithubAnnotations } from "./github-annotations.js";
|
|
11
11
|
import { buildReport } from "./report.js";
|
|
@@ -44,7 +44,7 @@ export async function main(argv) {
|
|
|
44
44
|
.command("scan")
|
|
45
45
|
.argument("[path]", "repository path", ".")
|
|
46
46
|
.option("--fail-under <score>", "exit 1 when score is below this threshold")
|
|
47
|
-
.option("-f, --format <format>", "output format: markdown, json, release-notes, contributor-onboarding, triage-suggestions, sarif, or github-annotations", "markdown")
|
|
47
|
+
.option("-f, --format <format>", "output format: markdown, json, release-notes, action-summary, contributor-onboarding, triage-suggestions, sarif, or github-annotations", "markdown")
|
|
48
48
|
.option("-o, --output <path>", "write report to a file")
|
|
49
49
|
.option("--summary-only", "emit compact Markdown with score and next actions")
|
|
50
50
|
.action(async (targetPath, options) => {
|
|
@@ -67,6 +67,8 @@ function formatReport(report, options) {
|
|
|
67
67
|
return options.summaryOnly ? formatMarkdownSummary(report) : formatMarkdown(report);
|
|
68
68
|
case "release-notes":
|
|
69
69
|
return formatReleaseNotes(report);
|
|
70
|
+
case "action-summary":
|
|
71
|
+
return formatActionSummary(report);
|
|
70
72
|
case "contributor-onboarding":
|
|
71
73
|
return formatContributorOnboarding(report);
|
|
72
74
|
case "triage-suggestions":
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAA;AAC9E,OAAO,EACL,2BAA2B,EAC3B,UAAU,EACV,cAAc,EACd,qBAAqB,EACrB,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AACzC,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAA;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAE3C,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IAC7D,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;IAClD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACpC,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;CACxC,CAAC,CAAA;AAUF,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,UAAkB,EAAE,UAAmB;IACnE,MAAM,OAAO,GAAG,iBAAiB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;IACnD,OAAO,CAAC,MAAM,kBAAkB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAA;AAC/D,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,UAAkB,EAAE,OAAoB;IACxE,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,UAAU,CAAC,CAAA;IAChD,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,CAAA;IACnC,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAE5C,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACjC,MAAM,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IACjD,CAAC;IAED,OAAO;QACL,eAAe,EAAE,OAAO,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,SAAS;QACpF,MAAM;QACN,KAAK,EAAE,MAAM,CAAC,KAAK;KACpB,CAAA;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,IAAuB;IAChD,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;IAE7B,OAAO;SACJ,IAAI,CAAC,WAAW,CAAC;SACjB,WAAW,CAAC,2EAA2E,CAAC;SACxF,OAAO,CAAC,OAAO,CAAC,CAAA;IAEnB,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,EAAE,GAAG,CAAC;SAC1C,MAAM,CAAC,sBAAsB,EAAE,2CAA2C,CAAC;SAC3E,MAAM,CACL,uBAAuB,EACvB,
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/format.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ import type { PulseReport } from "./types.js";
|
|
|
2
2
|
export declare function formatJson(report: PulseReport): string;
|
|
3
3
|
export declare function formatMarkdown(report: PulseReport): string;
|
|
4
4
|
export declare function formatMarkdownSummary(report: PulseReport): string;
|
|
5
|
+
export declare function formatActionSummary(report: PulseReport): string;
|
|
5
6
|
export declare function formatReleaseNotes(report: PulseReport): string;
|
|
6
7
|
export declare function formatContributorOnboarding(report: PulseReport): string;
|
|
7
8
|
export declare function formatTriageSuggestions(report: PulseReport): string;
|
package/dist/format.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAE7C,wBAAgB,UAAU,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAEtD;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CA4B1D;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAcjE;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAuB9D;AAED,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CA4BvE;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CA2BnE"}
|
|
1
|
+
{"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAE7C,wBAAgB,UAAU,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAEtD;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CA4B1D;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAcjE;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAuB/D;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAuB9D;AAED,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CA4BvE;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CA2BnE"}
|
package/dist/format.js
CHANGED
|
@@ -40,6 +40,25 @@ export function formatMarkdownSummary(report) {
|
|
|
40
40
|
"",
|
|
41
41
|
].join("\n");
|
|
42
42
|
}
|
|
43
|
+
export function formatActionSummary(report) {
|
|
44
|
+
const actions = report.actions.length === 0
|
|
45
|
+
? "No next actions."
|
|
46
|
+
: report.actions
|
|
47
|
+
.slice(0, 3)
|
|
48
|
+
.map((action, index) => `${index + 1}. **${escapeText(action.title)}** (${action.priority}) - ${escapeText(action.detail)}`)
|
|
49
|
+
.join("\n");
|
|
50
|
+
return [
|
|
51
|
+
"# OSS Pulse Action Summary",
|
|
52
|
+
"",
|
|
53
|
+
`Score: ${report.score}/100`,
|
|
54
|
+
`Status: ${report.status}`,
|
|
55
|
+
"",
|
|
56
|
+
"## Top Actions",
|
|
57
|
+
"",
|
|
58
|
+
actions,
|
|
59
|
+
"",
|
|
60
|
+
].join("\n");
|
|
61
|
+
}
|
|
43
62
|
export function formatReleaseNotes(report) {
|
|
44
63
|
const verifiedChecks = report.checks
|
|
45
64
|
.filter((check) => check.passed)
|
package/dist/format.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"format.js","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"format.js","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,UAAU,CAAC,MAAmB;IAC5C,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAA;AAC/C,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,MAAmB;IAChD,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM;SAC5B,GAAG,CACF,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,MAAM,MAAM,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CACtH;SACA,IAAI,CAAC,IAAI,CAAC,CAAA;IACb,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;IAExF,OAAO;QACL,aAAa;QACb,EAAE;QACF,UAAU,MAAM,CAAC,KAAK,MAAM;QAC5B,WAAW,MAAM,CAAC,MAAM,EAAE;QAC1B,WAAW,MAAM,CAAC,MAAM,EAAE;QAC1B,kBAAkB,MAAM,CAAC,eAAe,IAAI,SAAS,EAAE;QACvD,EAAE;QACF,WAAW;QACX,EAAE;QACF,qCAAqC;QACrC,4BAA4B;QAC5B,SAAS;QACT,EAAE;QACF,iBAAiB;QACjB,EAAE;QACF,OAAO;QACP,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,MAAmB;IACvD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;IAExF,OAAO;QACL,aAAa;QACb,EAAE;QACF,UAAU,MAAM,CAAC,KAAK,MAAM;QAC5B,WAAW,MAAM,CAAC,MAAM,EAAE;QAC1B,EAAE;QACF,iBAAiB;QACjB,EAAE;QACF,OAAO;QACP,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,MAAmB;IACrD,MAAM,OAAO,GACX,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;QACzB,CAAC,CAAC,kBAAkB;QACpB,CAAC,CAAC,MAAM,CAAC,OAAO;aACX,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;aACX,GAAG,CACF,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAChB,GAAG,KAAK,GAAG,CAAC,OAAO,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,MAAM,CAAC,QAAQ,OAAO,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CACtG;aACA,IAAI,CAAC,IAAI,CAAC,CAAA;IAEnB,OAAO;QACL,4BAA4B;QAC5B,EAAE;QACF,UAAU,MAAM,CAAC,KAAK,MAAM;QAC5B,WAAW,MAAM,CAAC,MAAM,EAAE;QAC1B,EAAE;QACF,gBAAgB;QAChB,EAAE;QACF,OAAO;QACP,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAAmB;IACpD,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM;SACjC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC;SAC/B,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;SAC9C,IAAI,CAAC,IAAI,CAAC,CAAA;IACb,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;IAE7F,OAAO;QACL,uBAAuB;QACvB,EAAE;QACF,gBAAgB;QAChB,EAAE;QACF,oBAAoB,MAAM,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,GAAG;QACzD,EAAE;QACF,iCAAiC;QACjC,EAAE;QACF,cAAc,IAAI,2BAA2B;QAC7C,EAAE;QACF,sBAAsB;QACtB,EAAE;QACF,OAAO;QACP,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,MAAmB;IAC7D,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM;SACpC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC;SAC/B,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;SAC9C,IAAI,CAAC,IAAI,CAAC,CAAA;IACb,MAAM,OAAO,GACX,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,kCAAkC,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;IAE1F,OAAO;QACL,iCAAiC;QACjC,EAAE;QACF,oBAAoB,MAAM,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,GAAG;QACzD,EAAE;QACF,kBAAkB;QAClB,EAAE;QACF,iBAAiB,IAAI,wCAAwC;QAC7D,EAAE;QACF,yBAAyB;QACzB,EAAE;QACF,OAAO;QACP,EAAE;QACF,uBAAuB;QACvB,EAAE;QACF,6CAA6C;QAC7C,iDAAiD;QACjD,4DAA4D;QAC5D,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,MAAmB;IACzD,MAAM,gBAAgB,GACpB,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;QACzB,CAAC,CAAC,8BAA8B;QAChC,CAAC,CAAC,MAAM,CAAC,OAAO;aACX,GAAG,CACF,CAAC,MAAM,EAAE,EAAE,CACT,UAAU,MAAM,CAAC,QAAQ,oBAAoB,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CACzG;aACA,IAAI,CAAC,IAAI,CAAC,CAAA;IAEnB,OAAO;QACL,sBAAsB;QACtB,EAAE;QACF,oBAAoB,MAAM,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,GAAG;QACzD,EAAE;QACF,iBAAiB;QACjB,EAAE;QACF,gBAAgB;QAChB,EAAE;QACF,wBAAwB;QACxB,EAAE;QACF,gFAAgF;QAChF,qDAAqD;QACrD,sFAAsF;QACtF,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC;AAED,SAAS,aAAa,CAAC,MAAmB;IACxC,OAAO,MAAM,CAAC,OAAO;SAClB,GAAG,CACF,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAChB,GAAG,KAAK,GAAG,CAAC,OAAO,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,MAAM,CAAC,QAAQ,OAAO,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CACtG;SACA,IAAI,CAAC,IAAI,CAAC,CAAA;AACf,CAAC;AAED,SAAS,UAAU,CAAC,KAAa;IAC/B,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;AACjD,CAAC;AAED,SAAS,UAAU,CAAC,KAAa;IAC/B,OAAO,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;AACpC,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export declare const REPORT_STATUSES: readonly ["ready", "needs-work"];
|
|
2
2
|
export type ReportStatus = (typeof REPORT_STATUSES)[number];
|
|
3
|
-
export declare const OUTPUT_FORMATS: readonly ["json", "markdown", "release-notes", "contributor-onboarding", "triage-suggestions", "sarif", "github-annotations"];
|
|
3
|
+
export declare const OUTPUT_FORMATS: readonly ["json", "markdown", "release-notes", "action-summary", "contributor-onboarding", "triage-suggestions", "sarif", "github-annotations"];
|
|
4
4
|
export type OutputFormat = (typeof OUTPUT_FORMATS)[number];
|
|
5
5
|
export type MaintainerFiles = {
|
|
6
6
|
readonly changelog: boolean;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,kCAAmC,CAAA;AAC/D,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAA;AAE3D,eAAO,MAAM,cAAc
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
CHANGED
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAAO,EAAE,YAAY,CAAU,CAAA;AAG/D,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,MAAM;IACN,UAAU;IACV,eAAe;IACf,wBAAwB;IACxB,oBAAoB;IACpB,OAAO;IACP,oBAAoB;CACZ,CAAA"}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAAO,EAAE,YAAY,CAAU,CAAA;AAG/D,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,MAAM;IACN,UAAU;IACV,eAAe;IACf,gBAAgB;IAChB,wBAAwB;IACxB,oBAAoB;IACpB,OAAO;IACP,oBAAoB;CACZ,CAAA"}
|
package/docs/RELEASE.md
CHANGED
|
@@ -3,13 +3,22 @@
|
|
|
3
3
|
This project publishes two surfaces:
|
|
4
4
|
|
|
5
5
|
- npm package: `oss-pulse`
|
|
6
|
-
- GitHub composite Action: pinned repository tags such as `v0.1.
|
|
6
|
+
- GitHub composite Action: pinned repository tags such as `v0.1.3`
|
|
7
|
+
|
|
8
|
+
The default release path is intentionally manual until a maintainer configures a publish token. Manual publishing keeps first releases simple and avoids requiring secrets before the project needs automation.
|
|
7
9
|
|
|
8
10
|
## Prerequisites
|
|
9
11
|
|
|
10
12
|
- npm package name is available or owned by the maintainer.
|
|
11
|
-
-
|
|
13
|
+
- The maintainer is logged in with the npm CLI:
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
npm whoami
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
- npm two-factor authentication is available for publish OTP prompts.
|
|
12
20
|
- The release branch passes `npm run check`.
|
|
21
|
+
- Optional automation path only: GitHub repository has `NPM_TOKEN` configured as an Actions secret.
|
|
13
22
|
|
|
14
23
|
## Local Preflight
|
|
15
24
|
|
|
@@ -18,21 +27,73 @@ npm ci
|
|
|
18
27
|
npm run check
|
|
19
28
|
npm run build
|
|
20
29
|
npm pack --dry-run
|
|
30
|
+
git diff --check
|
|
21
31
|
```
|
|
22
32
|
|
|
23
33
|
Confirm the dry-run includes `dist`, `README.md`, `CHANGELOG.md`, `LICENSE`, `action.yml`, and `package.json`.
|
|
24
34
|
|
|
25
|
-
|
|
35
|
+
For CLI packages, also verify the installed bin path from a clean temporary directory before treating a release as done. This catches bugs where `node dist/cli.js` works but `npx oss-pulse` does not.
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
TMPDIR=$(mktemp -d)
|
|
39
|
+
cd "$TMPDIR"
|
|
40
|
+
npm install /path/to/oss-pulse/oss-pulse-X.Y.Z.tgz
|
|
41
|
+
node_modules/.bin/oss-pulse scan /path/to/repo --format markdown --summary-only
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
## Manual npm Publish With OTP
|
|
45
|
+
|
|
46
|
+
Use this path when `NPM_TOKEN` is not configured.
|
|
26
47
|
|
|
27
48
|
1. Update `CHANGELOG.md`.
|
|
28
49
|
2. Update `package.json` version.
|
|
29
50
|
3. Run the local preflight.
|
|
30
|
-
4.
|
|
31
|
-
5.
|
|
32
|
-
|
|
51
|
+
4. Commit and push the release change.
|
|
52
|
+
5. Publish from the repository root:
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
npm publish --access public
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
6. When npm asks for the one-time password, enter the current 2FA code.
|
|
59
|
+
7. Verify the registry has the expected version:
|
|
60
|
+
|
|
61
|
+
```bash
|
|
62
|
+
npm view oss-pulse version dist-tags.latest
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
8. Verify the published package through the registry, not local files:
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
TMPDIR=$(mktemp -d)
|
|
69
|
+
cd "$TMPDIR"
|
|
70
|
+
npx --yes oss-pulse@X.Y.Z scan /path/to/repo --format markdown --summary-only
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
9. Create the GitHub Release only after npm and `npx` verification pass:
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
gh release create vX.Y.Z --target main --title "oss-pulse vX.Y.Z" --notes-file /path/to/notes.md
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
10. Confirm CI on `main` is green.
|
|
80
|
+
|
|
81
|
+
## Automated Publish Path
|
|
82
|
+
|
|
83
|
+
The repository includes a manual-only release workflow. Keep it manual until `NPM_TOKEN` exists and a maintainer has tested the workflow on a patch release.
|
|
84
|
+
|
|
85
|
+
When automation is ready:
|
|
86
|
+
|
|
87
|
+
1. Create an npm granular access token with publish permissions and 2FA bypass enabled.
|
|
88
|
+
2. Add it to GitHub Actions secrets as `NPM_TOKEN`.
|
|
89
|
+
3. Run the `Release` workflow manually for a patch version.
|
|
90
|
+
4. Verify npm registry, `npx`, GitHub release notes, and CI.
|
|
91
|
+
5. Only then consider adding release-triggered publish automation.
|
|
33
92
|
|
|
34
93
|
## After Publish
|
|
35
94
|
|
|
36
95
|
- Run `npx --yes oss-pulse@X.Y.Z scan . --format markdown`.
|
|
37
|
-
-
|
|
38
|
-
-
|
|
96
|
+
- Check `npm view oss-pulse version dist-tags.latest`.
|
|
97
|
+
- Check the latest GitHub Actions CI run.
|
|
98
|
+
- Create or update the GitHub Release for `vX.Y.Z`.
|
|
99
|
+
- Add one real scan example to the README or `docs/examples/` when the release changes user-visible behavior.
|
package/docs/examples/README.md
CHANGED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# chalk/chalk Case Study
|
|
2
|
+
|
|
3
|
+
Repository: https://github.com/chalk/chalk
|
|
4
|
+
|
|
5
|
+
Generated on 2026-07-08 from a shallow local clone with `oss-pulse@0.1.3`.
|
|
6
|
+
|
|
7
|
+
This report is an illustrative snapshot only. It is not an endorsement, critique, or upstream project claim.
|
|
8
|
+
|
|
9
|
+
## Snapshot
|
|
10
|
+
|
|
11
|
+
```text
|
|
12
|
+
Score: 55/100
|
|
13
|
+
Status: needs-work
|
|
14
|
+
Branch: main
|
|
15
|
+
Latest commit: 2026-01-27T13:30:36+07:00
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Passing Checks
|
|
19
|
+
|
|
20
|
+
- README — README found
|
|
21
|
+
- License — LICENSE found
|
|
22
|
+
- Contribution guide — CONTRIBUTING guide found
|
|
23
|
+
- Security policy — SECURITY policy found
|
|
24
|
+
- CI workflow — 1 workflow file found
|
|
25
|
+
- Funding metadata — Funding metadata found
|
|
26
|
+
|
|
27
|
+
## First Recommended Actions
|
|
28
|
+
|
|
29
|
+
1. Add issue template
|
|
30
|
+
2. Add good first issue template
|
|
31
|
+
3. Add pull request template
|
|
32
|
+
4. Add release workflow
|
|
33
|
+
5. Add CHANGELOG
|
|
34
|
+
6. Add CODEOWNERS
|
|
35
|
+
7. Grow external contributors
|
|
36
|
+
8. Add CODE_OF_CONDUCT
|
|
37
|
+
|
|
38
|
+
## Why This Example Helps
|
|
39
|
+
|
|
40
|
+
`chalk/chalk` is a mature, widely used package with strong core project surfaces. The scan demonstrates that `oss-pulse` can still surface small, concrete contributor-onboarding gaps without requiring maintainers to interpret a large audit report.
|
|
@@ -31,6 +31,7 @@ The temporary clone received:
|
|
|
31
31
|
|
|
32
32
|
- LICENSE, CONTRIBUTING, SECURITY, CODE_OF_CONDUCT, CHANGELOG
|
|
33
33
|
- issue, good first issue, and pull request templates
|
|
34
|
+
- CODEOWNERS review routing
|
|
34
35
|
- CI and release workflows
|
|
35
36
|
- funding metadata
|
|
36
37
|
- two recent commits from two authors
|
|
@@ -32,9 +32,10 @@ First recommended actions:
|
|
|
32
32
|
|
|
33
33
|
The temporary clone received:
|
|
34
34
|
|
|
35
|
-
- CONTRIBUTING, CODE_OF_CONDUCT, CHANGELOG
|
|
35
|
+
- LICENSE, CONTRIBUTING, SECURITY, CODE_OF_CONDUCT, CHANGELOG
|
|
36
36
|
- issue, good first issue, and pull request templates
|
|
37
|
-
-
|
|
37
|
+
- CODEOWNERS review routing
|
|
38
|
+
- CI and release workflows
|
|
38
39
|
- funding metadata
|
|
39
40
|
- two recent commits from two authors
|
|
40
41
|
|