ruvnet/ruflo · error · ValidationError

UNSUPPORTED_API_VERSION

UNSUPPORTED_API_VERSION

Error message

API version "${manifest.apiVersion}" is not supported (expected "${SUPPORTED_API_VERSION}")

What it means

validateApiVersion() found manifest.apiVersion differs from the single SUPPORTED_API_VERSION. UNSUPPORTED_API_VERSION error: the cell manifest was authored for a different platform generation and cannot be validated/loaded against this validator's schema.

Source

Thrown at v3/@claude-flow/guidance/src/manifest-validator.ts:720

      if (!TRACE_LEVELS.includes(manifest.observability.traceLevel as typeof TRACE_LEVELS[number])) {
        errors.push({
          code: 'INVALID_ENUM',
          field: 'observability.traceLevel',
          message: `traceLevel must be one of: ${TRACE_LEVELS.join(', ')}`,
          severity: 'error',
        });
      }
    }

    return errors;
  }

  private validateApiVersion(manifest: AgentCellManifest): ValidationError[] {
    if (!manifest.apiVersion) return []; // caught by requiredFields

    if (manifest.apiVersion !== SUPPORTED_API_VERSION) {
      return [{
        code: 'UNSUPPORTED_API_VERSION',
        field: 'apiVersion',
        message: `API version "${manifest.apiVersion}" is not supported (expected "${SUPPORTED_API_VERSION}")`,
        severity: 'error',
      }];
    }
    return [];
  }

  private validateDigest(manifest: AgentCellManifest): ValidationError[] {
    if (!manifest.cell?.codeRef?.digest) return []; // caught by requiredFields

    if (!SHA256_DIGEST_RE.test(manifest.cell.codeRef.digest)) {
      return [{
        code: 'INVALID_DIGEST',
        field: 'cell.codeRef.digest',
        message: `Digest must match "sha256:<64 hex chars>" format (got "${manifest.cell.codeRef.digest}")`,
        severity: 'error',
      }];

View on GitHub (pinned to fa13ee4ad6)

Solutions

  1. Set apiVersion to the supported version indicated in the message.
  2. Pin the manifest generator to the supported API version to avoid drift.
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at v3/@claude-flow/guidance/src/manifest-validator.ts:720 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/5fefb3e81ce9ff0f. Report an issue: GitHub.