Skip to content

fix: rename to "Agentic Admin for WordPress" (closes #125, #124) - #206

Merged
ivdimova merged 2 commits into
devfrom
fix/v0-11-wp-org-rename
May 12, 2026
Merged

ivdimova merged 2 commits into
devfrom
fix/v0-11-wp-org-rename

Conversation

@pluginslab

Copy link
Copy Markdown
Owner

Summary

Minimum WP.org-required rename ahead of plugin directory submission.

Net: 91 files changed, +1021 / -1015 (close to zero — mechanical renames, no logic changes).

What WP.org's Plugin Checker actually rejects

Rule Current state This PR
Plugin Name contains "WP" WP Agentic Admin Agentic Admin for WordPress
Function names start with wp_ wp_agentic_admin_* (58 files) agentic_admin_*
Text Domain doesn't match slug header: wp-agentic-admin, i18n calls: wp-agentic-admin header: agentic-admin, i18n calls: agentic-admin

What changed in detail

  • `wp-agentic-admin.php` header: Plugin Name, Plugin URI, Description, Text Domain
  • `readme.txt`: header + body content
  • `README.md`: heading + all body mentions (this PR supersedes fix: align README.md plugin name with header (closes #124) #202 — close that as superseded after merge)
  • All PHP `()/esc_html()/etc.` calls: text-domain string `'wp-agentic-admin'` → `'agentic-admin'`
  • All PHP function names + their callers: `wp_agentic_admin_` → `agentic_admin_`
  • `phpcs.xml.dist`: `text_domain` and `PrefixAllGlobals.prefixes` updated. `WP_AGENTIC_ADMIN` and `WPAgenticAdmin` kept in the allowed prefix list (legacy, see below).

Deliberately out of scope (per "minimum WP.org-required" choice)

Kept as-is Why
Local folder name `wp-agentic-admin/` Folder rename = every-file path change, breaks dev environments. WP.org assigns the folder from the submitted slug at install time, so this doesn't block submission.
PHP constants `WP_AGENTIC_ADMIN_*` Not WP.org-checked.
PHP namespace `WPAgenticAdmin` Not WP.org-checked.
JS global `wpAgenticAdmin` Not WP.org-checked.
Ability ID prefix (`wp-agentic-admin/*`) Internal identifier.
REST namespace (`wp-agentic-admin/v1`) Visible in URLs but not flagged.
Option key prefix (`wp_agentic_admin_*`) Database content, would need migration logic.

These can land in a v0.12 cosmetic-rename PR if/when we want full consistency. Folder rename specifically should be its own deliberate move with migration handling for any existing dev-install Option data.

Verification

Played back manually in the running Playground:

  • Plugin list: shows "Agentic Admin for WordPress" ✓
  • `agentic_admin_resolve_enabled_abilities()` returns 33 abilities, every registrar `function_exists()` check passes ✓
  • `composer lint` — 0 errors (1 pre-existing `readfile` warning on `sw-loader.php`, addressed by PR fix: small security cleanups (closes #121, #123, #128) #201)
  • `npm test` — 96 passing, unchanged
  • `npm run build` — clean

Supersedes #202

#202 renamed `WP-Agentic-Admin` → `WP Agentic Admin` in README.md. This PR takes that further to `Agentic Admin for WordPress`. After this lands, please close #202 as superseded.

Test plan

  • Build check passes
  • PHP lint passes
  • JS lint passes
  • Unit tests pass (96)
  • Manual: in Playground, plugin shows correct display name, all abilities work (run "list plugins", "check site health", etc.)
  • grep -ri "wp_agentic_admin_" against the PHP source returns zero hits

🤖 Generated with Claude Code

pluginslab and others added 2 commits May 13, 2026 00:12
Minimum WP.org-required rename ahead of plugin directory submission.
What WordPress.org's Plugin Checker actually rejects:
  - Plugin Name containing "WP" (treats it as a WordPress lookalike)
  - Function names beginning with wp_ (looks like core)
  - Text Domain not matching the submission slug

What changed:
  - Plugin Name header: "WP Agentic Admin" → "Agentic Admin for WordPress"
  - Plugin URI: pluginslab.com/wp-agentic-admin → pluginslab.com/agentic-admin
  - Text Domain header: wp-agentic-admin → agentic-admin
  - readme.txt header: === Agentic Admin for WordPress ===
  - README.md heading + body: same display-name updates
  - i18n text-domain string in all __()/esc_html__()/etc. calls:
    'wp-agentic-admin' → 'agentic-admin'
  - PHP function prefix: wp_agentic_admin_* → agentic_admin_*
    (touches register fns, helpers, the manifest entries that
    reference function names by string, the abilities, REST callbacks)
  - phpcs.xml.dist: updated text_domain + prefixes properties
    accordingly. WP_AGENTIC_ADMIN_* constants and WPAgenticAdmin
    namespace kept in the allowed prefix list (not WP.org-checked,
    deliberately out of scope for this PR).

What stayed (out of scope, not WP.org-blocking):
  - Local folder name (wp-agentic-admin/)
  - PHP constants WP_AGENTIC_ADMIN_*
  - PHP namespace WPAgenticAdmin
  - JS global wpAgenticAdmin
  - Ability ID prefix (wp-agentic-admin/*)
  - REST namespace (wp-agentic-admin/v1)
  - Option key prefix (wp_agentic_admin_*)

These can land in a v0.12 cosmetic-rename PR if/when we want full
consistency. Folder rename specifically should be its own deliberate
move with migration handling for any dev-install Option data.

Verification:
  - Playground reload: plugin still active, shown as "Agentic Admin
    for WordPress" in plugin list
  - agentic_admin_resolve_enabled_abilities() returns 33 abilities,
    every registrar function_exists() check passes
  - composer lint: 0 errors (1 pre-existing readfile warning on
    sw-loader.php, fixed by PR #201)
  - npm test: 96 passing, unchanged
  - npm run build: clean

Note: this PR also covers the README.md plugin-name update from
PR #202 (which renamed "WP-Agentic-Admin" → "WP Agentic Admin").
After this lands, #202 should be closed as superseded.

Net: 91 files changed, +1021 / -1015 (close to zero — mechanical renames,
no logic changes).

Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
@ivdimova
ivdimova force-pushed the fix/v0-11-wp-org-rename branch from a91fbf2 to 85f73af Compare May 12, 2026 22:12

@ivdimova ivdimova left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Rename to 'Agentic Admin for WordPress' for WordPress.org compliance. Conflict resolutions applied: Text Domain updated to agentic-admin (no Domain Path), load_textdomain() kept removed, query-database hardened functions renamed to agentic_admin_ prefix with agentic-admin text domain, esc_html() preserved from #201 with updated text domain. All CI checks pass.

@ivdimova
ivdimova merged commit 6887484 into dev May 12, 2026
4 checks passed
@ivdimova
ivdimova deleted the fix/v0-11-wp-org-rename branch May 12, 2026 22:14
pluginslab added a commit that referenced this pull request May 15, 2026
The menu slug was renamed from wp-agentic-admin to agentic-admin in #206,
but three hook/screen-id checks still referenced the old slug. As a result,
the dedicated admin page never enqueued the React app (empty page), and
the sidebar diamond button incorrectly rendered on top of it.

Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
pluginslab added a commit that referenced this pull request May 15, 2026
#210)

* fix: update admin page hook checks after v0.11 rename

The menu slug was renamed from wp-agentic-admin to agentic-admin in #206,
but three hook/screen-id checks still referenced the old slug. As a result,
the dedicated admin page never enqueued the React app (empty page), and
the sidebar diamond button incorrectly rendered on top of it.

Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>

* fix: bypass ReAct for knowledge-base intent (book button)

When the user enables the docs/book toggle, route directly to a new
processWithDocSearch path instead of running the ReAct tool-selection
loop. Small models (Qwen 3 1.7B in prompt-based JSON mode) hallucinate
tool calls when no clear match exists — e.g. asking "what hook injects
content in the footer?" with the book button on previously invoked
role-capabilities-check or rewrite-list. The user's explicit RAG intent
should win.

New path runs an in-browser vector search, builds a context-augmented
prompt, and streams a direct LLM answer with no tool selection. Respects
the user's "disable thinking before tool" setting by appending /nothink,
and still defensively strips <think> blocks (Qwen sometimes ignores the
flag — same pattern as react-agent.js:241). Leaked thinking tokens, when
thinking is enabled, route through the standard onThinkingStart/Chunk/End
callbacks so they collapse into the thought-process timeline entry
instead of leaking into the visible chat body.

Falls back to a context-less conversational answer (still no tools) when
the index is empty or the vector lookup fails — never silently re-routes
into ReAct.

Partially addresses #209 (Fix 1). Fixes 2 and 3 (post-hoc tool
validation, soften read-file priming) tracked separately in the same
umbrella issue.

Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>

* fix: respect saved model on auto-load after hard refresh

Auto-load paths called modelLoader.isModelCached() and modelLoader.load()
without arguments, falling back to DEFAULT_MODEL (Qwen3-1.7B) regardless
of the user's saved selection. Now reads agentic_admin_model from
localStorage and passes it through.

Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>

---------

Co-authored-by: Claude Opus 4.7 (1M context) <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants