Codeinwp / Codeinwp/tweet-old-post
Dashboard labels request-specific failures as core REST API unavailability
@selul is already working on this.
Since Sep 15, 2026.
- Dominant language
- PHP
- Stars
- 13
- Forks
- 15
- Avg merge
- 1d 11h
- Merged PRs (30d)
- 8
Description
Summary
The Revive Social dashboard reports that WordPress core REST API functionality is unavailable when one of its authenticated product-specific startup requests fails. The warning is expected to distinguish a failure of a Revive Social request from unavailability of the general WordPress REST API. Instead, a route-specific, authorization, response, or transient request failure can display the broad core REST warning, directing users toward unrelated security-plugin or hosting troubleshooting and obscuring the failing request.
Customer context
- Product / area: Revive Social dashboard used with the Pro Add-on
- Version: Pro Add-on 3.3.5; free/core plugin version not provided
- Environment: WordPress 7.1, PHP 8.3.21, managed hosting
- Integration / third party: WPML multilingual URL structure; JNews theme
- Reported error / symptom: Dashboard says core REST API functionality is unavailable while the general and language-prefixed REST indexes respond and Site Health reports REST API availability
- Impact: Misleading critical-looking configuration guidance and difficulty identifying the product-specific request that failed
Reproduction notes
- Load the Revive Social dashboard as an administrator.
- In a controlled test environment, make one of
get_available_services,get_authenticated_services, orget_active_accountsreturn a rejected/non-2xx response while the general WordPress REST index remains available. - Observe that the dashboard displays the message claiming core REST API functionality is unavailable.
The failure path is source-confirmed in tag v9.4.2; no local browser reproduction was run. The customer's exact failing request and response were not provided.
Diagnosis
Conclusion
The warning condition and its message describe different scopes. The dashboard sets the warning for rejection of any Promise-based Revive Social API request, while the rendered text states that WordPress core REST API functionality is unavailable. This directly permits request-specific failures to be reported as general REST unavailability. The reported site demonstrated that its public REST indexes were available, although the exact rejected authenticated response was not captured.
Where this likely occurs
vue/src/models/rop_store.js— Vuexactions.fetchAJAXPromise()lines 320–354: all HTTP rejection and catch paths commitapiNotAvailablewithtruewithout classifying the failure.includes/class-rop-i18n.php—Rop_I18ndashboard label construction lines 403–408:api_not_availablestates that core REST API functionality is unavailable and attributes likely causes to security plugins or server configuration.vue/src/rop_main.js— dashboardcreated()lines 27–31: startup dispatchesget_available_services,get_authenticated_services, andget_active_accountsthrough the shared Promise action.includes/admin/class-rop-admin.php—Rop_Admin::enqueue_scripts()lines 307–327: the client receives a product-specific REST route generated from/tweet-old-post/v8/api/and a WordPress REST nonce.- Git commit
55c777deintroduced the warning mechanism in 2018. The behavior is present in tagv9.4.2; tags containing the introduction begin atv8.0.9. This establishes long-standing behavior, not a verified regression.
Engineering notes
The dashboard implementation belongs to the free/core Codeinwp/tweet-old-post repository; the inspected Pro repository does not contain a competing production dashboard state path. The Pro Add-on version reported by the customer is v3.3.5, but the paired free/core version is unknown. The same client action handles several authenticated product-specific operations, so the warning does not identify which operation or failure class triggered it. WordPress core REST behavior was not inspected from local source; the scope mismatch is established by the plugin's own request target and warning text.
Test coverage status
No relevant coverage was found during inspection for rejected dashboard startup requests or warning classification. tests/e2e/specs/dashboard/general-settings.spec.js lines 6–38 exercises a successful dashboard load and settings interaction but does not simulate a failed Revive Social REST request or assert warning content.
What to verify or explore next
- May be worth reproducing each of the three startup request failures independently while the general
/wp-json/index remains available. - May be worth recording the status and response body for authorization, route-specific server error, malformed response, and transient network cases.
- If reproducible, checking the Playwright dashboard suite with controlled REST responses would establish the exact visible warning for each failure class.
Unknowns / follow-up
- The customer's exact failed authenticated request, HTTP status, and response body are unavailable.
- The customer's installed free/core Revive Social version is unknown.
Confidence
Confidence: 96/100
Repository inspection confirms two independently testable dashboard defects in the current tagged free-plugin source: request-specific failures are mapped to a core REST API warning, and the shared warning flag is not cleared by later successes. No matching open GitHub issue was found.
Source: HelpScout #3447403104
Generated by bug-report-triage (ID: bug-report-triage_6aa31a6d08a988.40680962)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.