(1) release.yml hatte kein Gate: ci.yml jetzt als workflow_call vor build-tauri (needs: gate). (2) Checkout war target_commitish (Branch) statt Tag -> ref: tag_name, die signierten Bytes entsprechen jetzt dem Tag (AGPL §6). (3) ci.yml rief nur cargo check -> cargo test + clippy (clippy non-gating: scheitert heute schon an secret.rs:108 absurd_extreme_comparisons, Folgefund). (4) enforce-prerelease war No-Op (rel.id === latest.id greift immer) -> prüft jetzt 'von diesem Run gerade veröffentlicht?' statt 'schon Latest?'. (5) discord-announce zählte alte Assets mit -> nur state=uploaded und created_at >= Run-Start. Audit: LUTechnikAudit2.6.6 M6 (release.yml, release-rules.mjs, discord-announce). Verifikation STATISCH (kein Actions-Lauf, nichts öffentlich); release-rules 28 Tests grün, cargo test 539 grün, Full-Suite 6.280. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
34 lines
1.0 KiB
TypeScript
34 lines
1.0 KiB
TypeScript
/** Types for the plain-node rule module. The script itself runs in CI without
|
|
* a build step, so the implementation stays .mjs and the types live here. */
|
|
|
|
export declare const MARKER: string
|
|
export declare const BANNER: string
|
|
|
|
export interface GitHubRelease {
|
|
id: number
|
|
tag_name?: string
|
|
prerelease?: boolean
|
|
draft?: boolean
|
|
published_at?: string | null
|
|
created_at?: string | null
|
|
body?: string | null
|
|
}
|
|
|
|
export declare function withoutBanner(body: string | null | undefined): string
|
|
export declare function shouldCarryBanner(
|
|
rel: GitHubRelease,
|
|
latest: GitHubRelease | null | undefined,
|
|
): boolean
|
|
|
|
export interface ForcePrereleaseContext {
|
|
/** True when this run's own `release: published` event named this release —
|
|
* it was published seconds ago, so it cannot have been verified yet. */
|
|
publishedByThisRun?: boolean
|
|
}
|
|
|
|
export declare function shouldForcePrerelease(
|
|
rel: GitHubRelease | null | undefined,
|
|
latest: GitHubRelease | null | undefined,
|
|
ctx?: ForcePrereleaseContext,
|
|
): boolean
|