Skip to content

Releases: procyon-creative/wp-dario-provider

v0.2.3

Choose a tag to compare

@nicolasgalvez nicolasgalvez released this 15 May 23:36
00f5dc3

What's Changed

  • fix(http): Safe-request filters now whitelist the host and port from DARIO_BASE_URL (when overridden), not just the sidecar settings. Without this, pointing the AI Client at a remote Dario instance via DARIO_BASE_URL would surface "A valid URL was not provided" because wp_safe_remote_request blocked the request. (WPD-27)

Full Changelog: v0.2.2...v0.2.3

v0.2.2

Choose a tag to compare

@nicolasgalvez nicolasgalvez released this 15 May 23:12
529393a

Important: This release bumps the minimum PHP version from 7.4 to 8.0 to match what the code already required (the OpenAI-compat parser uses match, a PHP 8.0+ feature). Anyone running 0.2.x on PHP 7.4 was already crashing at runtime; this just makes the requirement honest.

What changed since 0.2.1

  • Admin notice now also fires when the Dario sidecar is down, not just when Claude OAuth is missing. Consumers were failing silently with "connection refused" until you went to the settings page (WPD-20).
  • Requires PHP bumped 7.4 → 8.0 (WPD-17). The plugin was always 8.0+ in practice.
  • PHPStan static analysis at level 5 added to CI, with WP stubs. Fixed a handful of dead defensive checks and one missed type narrowing it surfaced (WPD-17).
  • Pre-commit hook now also lints staged .mjs and .yml files (WPD-19).
  • MigrationShim extracted to its own class with full unit-test coverage (WPD-18).
  • Test coverage added for the sidecar start-command construction, connector-key sync, and the secret-preservation rule on empty form submit (WPD-21, WPD-22).

No changes to end-user behavior beyond the new admin notice case and the PHP requirement bump.

v0.2.1

Choose a tag to compare

@nicolasgalvez nicolasgalvez released this 15 May 22:32
87a645f

Maintenance + CI hardening release. Existing 0.2.x installs will auto-update via PUC.

What's in this release

  • WPD-9 — Bump GitHub Actions to Node 24 before the September 2026 Node 20 removal
  • WPD-10 — CI runs the same npm run check developers run locally; drop bespoke verification steps
  • WPD-11 — Single CI job (no setup duplication across parallel jobs)
  • WPD-12 — Refresh composer.lock content-hash to silence the lock-out-of-date warning
  • WPD-13 — README Development + Releases section catch-up
  • WPD-14 — Branch protection on main requires CI green before merge
  • WPD-15 — PCP gate fails on warnings too; rename last unprefixed global

No code changes affecting end-user behavior. The plugin's runtime is identical to v0.2.0.

v0.2.0

Choose a tag to compare

@nicolasgalvez nicolasgalvez released this 15 May 21:35
d8405a2

Breaking change: plugin slug, namespace, options, and provider ID renamed to use the procyon vendor prefix. Plus a major UX overhaul to make Claude auth state impossible to miss.

Upgrading from 0.1.x

The directory rename means WordPress sees this as a different plugin. To upgrade:

  1. Auto-update or manually install 0.2.0. The new plugin appears alongside the old.
  2. Deactivate wp-dario-provider (the old version).
  3. Activate procyon-dario-provider (the new version). The activation hook copies your existing settings, sidecar PID, and connector API key to the new option names automatically.
  4. Optionally delete the old wp-dario-provider/ plugin directory.

Your ~/.dario/credentials.json and OpenAI backend files at ~/.dario/backends/*.json are unaffected.

What changed

Vendor-prefix rename (WPD-7)

Every plugin-owned identifier now carries a procyon prefix. Strings owned by WP core or by upstream Dario stay as they are.

Surface Before After
Directory + main file wp-dario-provider/ + wp-dario-provider.php procyon-dario-provider/ + procyon-dario-provider.php
Text Domain wp-dario-provider procyon-dario-provider
PHP namespace Dario\ Procyon\Dario\
Composer package procyon-creative/wp-dario-provider procyon-creative/procyon-dario-provider
Provider ID (AI Client) dario procyon_dario
Connector API key option connectors_ai_dario_api_key connectors_ai_procyon_dario_api_key
Plugin options/transients dario_provider_* / dario_oauth_* procyon_dario_*

The repo URL stays at procyon-creative/wp-dario-provider (intentional).

UX overhaul (WPD-8)

  • Site-wide admin notice when Claude is not authenticated, with a one-click link to the settings page. Cached in a 60s transient so admin loads stay fast.
  • Settings page reordered: Status → Claude Authentication → Sidecar Settings → OpenAI Backend. Claude auth at position 2 because nothing works without it.
  • Status row severity styling: red text + warning icon when not authenticated, orange when credentials present but invalid.
  • Secret fields render placeholder="*****" when a value is stored. Drops the trailing <code>last4</code> mask that leaked the last 4 chars.

Plugin Check (PCP) compliance (WPD-1, WPD-4)

  • All filesystem ops moved to WP_Filesystem via the new WithFilesystem trait.
  • Permanent exceptions for fsockopen (port liveness) and FIFO ops (no WP_Filesystem equivalent) are inline phpcs:ignore.
  • CI gate runs PCP on every PR. Only the 3 deferred plugin_updater_detected errors remain (intentional — wp.org would reject the auto-updater, but we distribute via GitHub releases).

Lando dev environment (WPD-2, WPD-3)

  • Single lando rebuild -y produces a fully working install: dry WordPress (no Akismet, no Hello Dolly), twentytwentyfive theme, procyon-dario-provider, ai consumer plugin, and plugin-check — all installed and active automatically.
  • CI workflow boots the same Lando environment and runs the same tests.

Other

  • Repo transferred to procyon-creative org (WPD-6). Old nicolasgalvez/wp-dario-provider URL has GitHub's automatic redirect.
  • Distribution decision: stay off wp.org for now, keep PUC for GitHub-releases-driven updates (WPD-5).

See docs/plugin-check.md for the deferred PCP exceptions and rationale.

v0.1.5

Choose a tag to compare

@nicolasgalvez nicolasgalvez released this 15 May 18:03
6d6af41

New: Settings → Dario AI Connector admin page

Non-SSH WordPress admins can now configure the sidecar, write OpenAI-compatible backend credentials, and complete Claude OAuth without a shell.

Highlights

  • Settings → Dario AI Connector admin page surfaces sidecar status / restart / proxy + backend config.
  • Writes OpenAI-compatible backends to ~/.dario/backends/<name>.json (mode 0600), byte-compatible with Dario's own saveBackend().
  • Drives Dario's manual Claude OAuth flow from PHP via proc_open + a FIFO so admins can paste back the authorization code from another browser tab.
  • Paste-credentials.json fallback for installs where running the in-browser flow isn't practical.
  • Constant/env overrides honoured for every setting.

Bug fixes found during integration testing with the WordPress.org ai consumer plugin

  • Auto-fill connectors_ai_dario_api_key so the WP AI Client binds an auth interface to the provider (default value dario, kept in sync with the proxy_api_key setting).
  • Scoped http_request_host_is_external and http_allowed_safe_ports filters so wp_safe_remote_request can reach the loopback proxy on port 3456.
  • Fixed FIFO open ordering bug in OAuth orchestration (0<> instead of < so the spawning shell doesn't block waiting for a writer peer).

Verified

End-to-end Title Generation ability through the wp.org ai plugin routes Consumer → AI Client → DarioProvider → sidecar → Anthropic and returns real generated text.

See PR #1 for the full diff and test plan.

v0.1.4

Choose a tag to compare

@nicolasgalvez nicolasgalvez released this 15 May 04:03

Start a bundled Dario Node sidecar on plugin activation when Node.js is available.

v0.1.3

Choose a tag to compare

@nicolasgalvez nicolasgalvez released this 15 May 02:59

Include Composer vendor files in the GitHub release zip.

v0.1.2

Choose a tag to compare

@nicolasgalvez nicolasgalvez released this 15 May 02:56

Fix GitHub Actions release asset upload permissions.

v0.1.1

Choose a tag to compare

@nicolasgalvez nicolasgalvez released this 15 May 02:54

Fix compatibility with the WordPress 7.0 RC4 AI Client model metadata directory interface.