jackwener/OpenCLI · warning · EmptyResultError

Facebook did not show any feed posts for this account.

Error message

Facebook did not show any feed posts for this account.

What it means

If the feed extraction ran but found zero rows and the payload reports status === 'empty', the library throws EmptyResultError('facebook feed', 'Facebook did not show any feed posts for this account.'). This is a legitimate empty state, distinct from auth problems or extraction failures.

Source

Thrown at clis/facebook/feed.js:380

      `Failed to read facebook feed: ${err instanceof Error ? err.message : err}`,
      'Facebook may not have rendered or the feed markup may have changed.',
    );
  }

  if (!payload || typeof payload !== 'object' || !Array.isArray(payload.rows)) {
    throw new CommandExecutionError('facebook feed returned malformed extraction payload');
  }

  if (payload.status === 'auth') {
    throw new AuthRequiredError('www.facebook.com', 'Open Chrome and log in to Facebook before retrying.');
  }

  if (payload.rows.length > 0) {
    return payload.rows;
  }

  if (payload.status === 'empty') {
    throw new EmptyResultError('facebook feed', 'Facebook did not show any feed posts for this account.');
  }

  const diagnostics = payload.diagnostics || {};
  if (diagnostics.articleCount || diagnostics.actionMenuCount || diagnostics.fallbackActionCount || diagnostics.mainTextLength > 200) {
    throw new CommandExecutionError(
      'facebook feed page rendered but no feed rows could be extracted',
      `Diagnostics: articles=${diagnostics.articleCount || 0}, actions=${diagnostics.fallbackActionCount || 0}, mainTextLength=${diagnostics.mainTextLength || 0}.`,
    );
  }

  throw new EmptyResultError('facebook feed', 'No Facebook feed content was visible in the current browser session.');
}

const command = {
  site: 'facebook',
  name: 'feed',
  access: 'read',
  description: 'Get your Facebook news feed',

View on GitHub (pinned to 49907e53dc)

Solutions

  1. Scroll/interact in the browser so Facebook populates the feed, then retry.
  2. Use a different limit (e.g. --limit 10) and confirm the account actually has feed posts in a normal browser.
  3. Check the account isn't flagged/restricted (feeds can be hidden for policy-flagged accounts).
  4. Treat as an expected empty result in calling code if the account is known to have no feed.

Example fix

// before
const rows = await getFacebookFeed(page, { limit: 10 });
// after
let rows;
try {
  rows = await getFacebookFeed(page, { limit: 10 });
} catch (err) {
  if (err.name === 'EmptyResultError') rows = [];
  else throw err;
}
Defensive patterns

Strategy: fallback

Try / catch

try {
  const rows = await getFacebookFeed(page, { limit: 10 });
} catch (err) {
  if (/did not show any feed posts/i.test(err.message)) {
    const rows = []; // treat as legitimate empty feed
  } else throw err;
}

Prevention

When it happens

Trigger: payload.rows is an empty array AND payload.status === 'empty' — Facebook itself rendered an explicitly empty feed for the account.

Common situations: Brand-new or dormant account with no feed content; Facebook served a 'no posts' placeholder; heavy feed personalization shows nothing for restricted accounts; region with limited feed content.

Understand the failure class

Background: EmptyResultError / "no results found": when an API or scraper succeeds but returns zero rows — this error's family across 9 libraries.

Related errors


AI-assisted analysis of jackwener/OpenCLI@49907e53dc (2026-08-29). Data as JSON: /api/errors/4fffc3a03549e1a6. Report an issue: GitHub.