ruvnet/ruflo · error
[IPFS] Pinata unpin failed: ${error}
Error message
[IPFS] Pinata unpin failed: ${error} What it means
Log warning in unpinContent: the DELETE call to Pinata's unpin endpoint threw or returned non-OK, so the CID remains pinned; the function continues to its demo/no-op path instead of failing.
Source
Thrown at v3/@claude-flow/cli/src/transfer/ipfs/upload.ts:360
// Real unpinning with Pinata
if (pinataKey) {
try {
const pinataSecret = process.env.PINATA_API_SECRET;
const response = await fetch(`https://api.pinata.cloud/pinning/unpin/${cid}`, {
method: 'DELETE',
headers: {
'pinata_api_key': pinataKey,
'pinata_secret_api_key': pinataSecret || '',
},
});
if (response.ok) {
console.log(`[IPFS] Unpinned ${cid} from Pinata`);
return { success: true };
}
} catch (error) {
console.warn(`[IPFS] Pinata unpin failed: ${error}`);
}
}
// Demo mode
console.log(`[IPFS] Demo unpinning ${cid}...`);
await new Promise(resolve => setTimeout(resolve, 200));
console.log(`[IPFS] Demo unpinned`);
return { success: true };
}
/**
* Check if content exists on IPFS
*/
export async function checkContent(
cid: string,
gateway: string = 'https://w3s.link'
): Promise<{ exists: boolean; size?: number }> {View on GitHub (pinned to fa13ee4ad6)
Solutions
- Verify the Pinata credentials and that the CID is currently pinned before unpinning.
Defensive patterns
Strategy: fallback
When it happens
Trigger: Thrown at v3/@claude-flow/cli/src/transfer/ipfs/upload.ts:360 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/a74c311f13cc4471.
Report an issue: GitHub.