ruvnet/ruflo · error · ValidationError
INVALID_VALUE
INVALID_VALUE
Error message
retentionDays must be a non-negative number
What it means
validateDataPolicy() found retentionDays is either not a number or is negative. Retention windows must be a non-negative numeric day count; this manifest field drives data-expiry enforcement and cannot be missing, negative, or non-numeric.
Source
Thrown at v3/@claude-flow/guidance/src/manifest-validator.ts:550
field: 'dataPolicy',
message: 'Data policy is required',
severity: 'error',
});
return errors;
}
if (!DATA_SENSITIVITY_LEVELS.includes(dataPolicy.dataSensitivity as DataSensitivity)) {
errors.push({
code: 'INVALID_ENUM',
field: 'dataPolicy.dataSensitivity',
message: `dataSensitivity must be one of: ${DATA_SENSITIVITY_LEVELS.join(', ')} (got "${dataPolicy.dataSensitivity}")`,
severity: 'error',
});
}
if (typeof dataPolicy.retentionDays !== 'number' || dataPolicy.retentionDays < 0) {
errors.push({
code: 'INVALID_VALUE',
field: 'dataPolicy.retentionDays',
message: 'retentionDays must be a non-negative number',
severity: 'error',
});
}
if (!dataPolicy.exportControls) {
errors.push({
code: 'MISSING_FIELD',
field: 'dataPolicy.exportControls',
message: 'exportControls is required in data policy',
severity: 'error',
});
} else {
if (!Array.isArray(dataPolicy.exportControls.allowedRegions)) {
errors.push({
code: 'INVALID_TYPE',
field: 'dataPolicy.exportControls.allowedRegions',View on GitHub (pinned to fa13ee4ad6)
Solutions
- Set retentionDays to a non-negative number.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at v3/@claude-flow/guidance/src/manifest-validator.ts:550 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/35c50567ec47b594.
Report an issue: GitHub.