ruvnet/ruflo · error
Plugin ID required
Error message
Plugin ID required
What it means
The 'track-download' action found no pluginId in the body or query. Input-presence guard: download analytics need an item to attribute the event to; the request is rejected with 400 rather than recording an anonymous download.
Source
Thrown at v3/@claude-flow/cli/cloud-functions/publish-registry/index.js:298
case 'import-model': {
const { cid } = req.query;
if (!cid) {
return res.status(400).json({ error: 'CID required' });
}
const result = await importModel(cid);
await trackEvent(bucket, 'model-import', cid);
return res.json(result);
}
case 'track-download': {
const { pluginId } = req.body || req.query;
if (!pluginId) {
return res.status(400).json({ error: 'Plugin ID required' });
}
await trackEvent(bucket, 'download', pluginId);
return res.json({ success: true });
}
case 'analytics': {
const { period = '7d' } = req.query;
// Read analytics files
const [files] = await bucket.getFiles({ prefix: 'analytics/' });
const analytics = {
downloads: {},
exports: 0,
imports: 0,
publishes: 0,
};
View on GitHub (pinned to fa13ee4ad6)
Solutions
- Provide all required parameters listed in the message.
- Validate required fields before dispatch and report the full set of missing fields at once.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at v3/@claude-flow/cli/cloud-functions/publish-registry/index.js:298 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of ruvnet/ruflo@fa13ee4ad6 (2026-08-18).
Data as JSON: /api/errors/290be468dd3cc0c2.
Report an issue: GitHub.