mirror of
https://github.com/openclaw/openclaw.git
synced 2026-06-06 05:51:15 +08:00
docs: document repo support scripts
This commit is contained in:
@@ -1,6 +1,8 @@
|
|||||||
#!/usr/bin/env node
|
#!/usr/bin/env node
|
||||||
// Secret scanning alert handler for OpenClaw maintainers.
|
/**
|
||||||
// Usage: node secret-scanning.mjs <command> [options]
|
* Secret scanning alert handler for OpenClaw maintainers.
|
||||||
|
* Usage: node secret-scanning.mjs <command> [options]
|
||||||
|
*/
|
||||||
|
|
||||||
import { spawnSync } from "node:child_process";
|
import { spawnSync } from "node:child_process";
|
||||||
import crypto from "node:crypto";
|
import crypto from "node:crypto";
|
||||||
@@ -57,6 +59,7 @@ function isBodyLocationType(locationType) {
|
|||||||
return locationType === "issue_body" || locationType === "pull_request_body";
|
return locationType === "issue_body" || locationType === "pull_request_body";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** Decides whether redacting an issue/PR body requires notifying the reporter. */
|
||||||
export function decideBodyRedaction(currentBody, redactedBody) {
|
export function decideBodyRedaction(currentBody, redactedBody) {
|
||||||
const bodyChanged = String(currentBody) !== String(redactedBody);
|
const bodyChanged = String(currentBody) !== String(redactedBody);
|
||||||
return {
|
return {
|
||||||
@@ -65,6 +68,7 @@ export function decideBodyRedaction(currentBody, redactedBody) {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** Loads redaction-result metadata for issue/PR body secret locations. */
|
||||||
export function loadBodyRedactionResult(locationType, resultFile) {
|
export function loadBodyRedactionResult(locationType, resultFile) {
|
||||||
if (!isBodyLocationType(locationType)) {
|
if (!isBodyLocationType(locationType)) {
|
||||||
return { notify_required: true };
|
return { notify_required: true };
|
||||||
|
|||||||
@@ -1,4 +1,7 @@
|
|||||||
#!/usr/bin/env node
|
#!/usr/bin/env node
|
||||||
|
/**
|
||||||
|
* Heap snapshot diff utility for OpenClaw test memory leak investigations.
|
||||||
|
*/
|
||||||
|
|
||||||
import fs from "node:fs";
|
import fs from "node:fs";
|
||||||
import path from "node:path";
|
import path from "node:path";
|
||||||
|
|||||||
@@ -1,4 +1,8 @@
|
|||||||
#!/usr/bin/env node
|
#!/usr/bin/env node
|
||||||
|
/**
|
||||||
|
* Release CI summary helper that prints parent and child workflow status for a
|
||||||
|
* full release run.
|
||||||
|
*/
|
||||||
import { execFileSync } from "node:child_process";
|
import { execFileSync } from "node:child_process";
|
||||||
import process from "node:process";
|
import process from "node:process";
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,8 @@
|
|||||||
#!/usr/bin/env node
|
#!/usr/bin/env node
|
||||||
|
/**
|
||||||
|
* Release preflight helper that verifies required provider API keys can reach
|
||||||
|
* their model-list endpoints without printing secret values.
|
||||||
|
*/
|
||||||
import process from "node:process";
|
import process from "node:process";
|
||||||
|
|
||||||
const args = new Map();
|
const args = new Map();
|
||||||
|
|||||||
@@ -1,4 +1,8 @@
|
|||||||
#!/usr/bin/env bun
|
#!/usr/bin/env bun
|
||||||
|
/**
|
||||||
|
* Android release helper that bumps version fields, builds release AAB variants,
|
||||||
|
* verifies signatures, and prints SHA-256 checksums.
|
||||||
|
*/
|
||||||
|
|
||||||
import { $ } from "bun";
|
import { $ } from "bun";
|
||||||
import { dirname, join } from "node:path";
|
import { dirname, join } from "node:path";
|
||||||
|
|||||||
@@ -1,3 +1,6 @@
|
|||||||
|
/**
|
||||||
|
* Knip configuration for OpenClaw root and bundled plugin dependency hygiene.
|
||||||
|
*/
|
||||||
const BUNDLED_PLUGIN_ROOT_DIR = "extensions";
|
const BUNDLED_PLUGIN_ROOT_DIR = "extensions";
|
||||||
|
|
||||||
function bundledPluginFile(pluginId: string, relativePath: string, suffix = ""): string {
|
function bundledPluginFile(pluginId: string, relativePath: string, suffix = ""): string {
|
||||||
|
|||||||
@@ -1,3 +1,7 @@
|
|||||||
|
/**
|
||||||
|
* Docs UI enhancement that mirrors the active nav tab underline with a stable
|
||||||
|
* animated underline element.
|
||||||
|
*/
|
||||||
(() => {
|
(() => {
|
||||||
const NAV_TABS_SELECTOR = ".nav-tabs";
|
const NAV_TABS_SELECTOR = ".nav-tabs";
|
||||||
const ACTIVE_UNDERLINE_SELECTOR = ".nav-tabs-item > div.bg-primary";
|
const ACTIVE_UNDERLINE_SELECTOR = ".nav-tabs-item > div.bg-primary";
|
||||||
|
|||||||
Reference in New Issue
Block a user