affaan-m/ECC · error
release tag is required
Error message
release tag is required
What it means
Guard inside releaseMarker: the release tag used to build the idempotency marker comment is empty or whitespace. The marker uniquely identifies which release an announcement belongs to, so a tag is mandatory.
Source
Thrown at scripts/discord/announcement-core.mjs:11
import { createHash } from 'node:crypto';
const DISCORD_DESCRIPTION_LIMIT = 4000;
export function isAnnouncementDiscussion(discussion) {
return discussion?.category?.name === 'Announcements';
}
export function releaseMarker(tag) {
const normalized = String(tag || '').trim();
if (!normalized) throw new Error('release tag is required');
return `<!-- ecc-release:${normalized} -->`;
}
export function findReleaseDiscussion(discussions, marker) {
return discussions.find(item => (
item?.category?.name === 'Announcements'
&& typeof item.body === 'string'
&& item.body.includes(marker)
)) || null;
}
export function announcementKey({ repository, discussionId }) {
if (!/^[^/\s]+\/[^/\s]+$/.test(String(repository || ''))) throw new Error('invalid repository');
if (!/^[A-Za-z0-9_-]+$/.test(String(discussionId || ''))) throw new Error('invalid discussion id');
return `${repository}:discussion:${discussionId}`;
}
export function buildDiscordPayload({ title, body, url, key }) {View on GitHub (pinned to 06c5e118c4)
Solutions
- Supply the required argument/option named in the message and re-run the command.
Defensive patterns
Strategy: validation
When it happens
Trigger: Triggered when announcement-core.mjs rejects the current invocation: release tag is required
Common situations: Occurs while running scripts/discord/announcement-core.mjs with invalid arguments, missing flags, or a failing external dependency; the guard at scripts/discord/announcement-core.mjs:11 aborts the command with this message.
AI-assisted analysis of affaan-m/ECC@06c5e118c4 (2026-08-18).
Data as JSON: /api/errors/990fb95a3a91f6e7.
Report an issue: GitHub.