35 Commits

Author SHA1 Message Date
self 893c7b9bb9 docs: document shared HTTP wrapper usage
Advise plugin runtime code to use Tribes.HTTP for outbound requests while allowing standalone test and supertest scripts to keep raw Req usage.
2026-07-13 15:47:17 +02:00
self 029ba23b75 fix: update Docker bootstrap fixtures
Use the current Tribes bootstrap public_host field so supertest Docker nodes start against the latest host image.
2026-06-30 02:59:17 +02:00
self 982243e64a fix: repair supertest docker e2e metrics
Refresh the plugin Mix dependency FOD hash for the current host source.

Align the probe telemetry event and VictoriaMetrics query with the metric actually exported by the host telemetry reporter.
2026-06-19 16:34:47 +02:00
self c20a3b4f71 feat: prefix Supertest plugin slug
Rename the Supertest fixture plugin to tribe-one-supertest across manifest, runtime API routes, metrics, e2e fixtures, and tests.
2026-06-17 22:33:39 +02:00
self afc38412c4 dev: add en_GB locale archive to devenv
Provide a Nix glibc locale archive with en_GB.UTF-8 so tools inside the devenv shell inherit a valid UTF-8 locale.
2026-06-02 00:01:39 +02:00
self 6caccf23a6 feat: add scheduler probe fixture
Add supertest scheduler cron workers and local API endpoints that record singleton and all-nodes scheduler executions into synced supertest cases.\n\nThe probe API lets live supertest scenarios start, inspect, and stop scheduler assertions without adding a separate resource.
2026-05-28 16:50:50 +02:00
self 5c3ea44aa9 feat: namespace plugin identity
Adopt canonical plugin id/slug manifest fields, vendor-prefixed OTP app naming, and fully-qualified capability ids for Supertest.
2026-05-27 19:06:09 +02:00
self 592dd83388 chore: quiet dev Ash domain warnings
Suppress Ash domain config inclusion warnings while compiling the host as a dev-only plugin dependency.
2026-05-27 16:19:16 +02:00
self 692dcb3129 refactor: move Supertest into TribeOne plugin namespace
Use TribeOne.TribesPlugin.Supertest modules throughout the fixture plugin and update manifest, tests, and migration references accordingly.
2026-05-26 01:13:52 +02:00
self 4ecc731978 docs: clarify plugin hook registration
Document that external plugin hooks are registered through global_js bundles and window.TribesPluginHooks rather than host-side colocated imports.
2026-05-24 23:46:24 +02:00
self 0b498a1561 build: disable unused npm environment
Disable JavaScript/npm in devenv until this plugin grows npm-managed assets, and leave a reminder for the release-delay config.
2026-05-24 19:53:40 +02:00
self dba15adacf build: update devenv inputs
Run devenv update to refresh pinned devenv and related inputs.
2026-05-24 16:26:06 +02:00
self 7c23b9bd22 build: refresh devenv lock
Refresh devenv.lock after the devenv update normalized lock-file inputs.
2026-05-24 16:16:54 +02:00
self c173e1d512 chore: declare git-hooks input in devenv.yaml
Newer devenv versions require git-hooks.nix to be declared as an
explicit input when devenv.nix uses `git-hooks.hooks`.
2026-05-24 15:20:31 +02:00
self e8f30a7560 refactor: mark supertest sync resources as control
Declare control lanes for the supertest case and event resources so their behavior is unchanged after the host AshNostrSync default moves to bulk.
2026-05-23 18:48:58 +02:00
self 44c8a753db build: refresh supertest plugin lockfile
Refresh the plugin lock to match the current local Tribes/Parrhesia dependency graph and Req resolution used by precommit.
2026-05-23 18:27:38 +02:00
self 6eaa4beb80 feat: expose plugin migration commands
Forward ash.codegen and ecto.migration through the Supertest plugin wrapper and update agent guidance to keep AshPostgres codegen as the default migration workflow.
2026-05-23 15:58:07 +02:00
self e360bab329 test: adapt supertest e2e to shared relay identity
Use per-node internal identities with a shared relay identity in supertest bootstrap and compose fixtures, and update the runner and lock data for the new node pubkey contract.
2026-05-18 12:19:35 +02:00
self e45ec84341 test: cover plugin metrics rollups
Add a supertest metrics probe that emits telemetry, configure vmagent sidecars in the Docker e2e stack, and assert the emitted plugin metric reaches synced rollups through the admin API.
2026-05-14 15:25:41 +02:00
self 99a7d68125 test: add supertest docker e2e suite
Add a plugin-owned Docker e2e image and compose runner for the supertest plugin. The suite validates plugin loading, local plugin APIs, plugin.call, origin-to-peer resource sync, and cluster PubSub behavior against a Tribes release with the plugin installed.

Broaden loopback detection so local-only plugin API calls work from Docker's IPv4-mapped loopback addresses.
2026-05-13 17:44:11 +02:00
self ff9817fcc2 fix: use host-backed plugin test aliases
Route raw Mix test and precommit aliases through the plugin wrapper workflow.

Update the manifest assertion so supertest remains an internal test fixture without a public capability.
2026-05-09 19:43:35 +02:00
self 64a1fd8b44 fix: remove supertest plugin contract 2026-05-09 17:31:18 +02:00
self 131524f3bf test: add supertest plugin management method 2026-05-08 22:34:41 +02:00
self 926e59f579 feat: expose cluster pubsub probe capability 2026-05-08 21:36:38 +02:00
self 4bbb28c36f feat: Add cluster pubsub probe 2026-05-08 21:36:34 +02:00
self 7e5b86fc20 chore: Update plugin scaffolding 2026-05-07 16:48:42 +02:00
self e042f3265d feat: implement supertest fixture plugin
Replace the template plugin with a migration-bearing supertest fixture. Add linked Ash resources, reversible migrations, a local-only JSON API for infra scenarios, and host-backed tests covering the plugin contract and API behavior.
2026-04-30 11:18:12 +02:00
self fddd616772 feat(template): adopt host-backed plugin workflow
Add the shared plugin helper, host-backed test config, and runtime validation entrypoint. Update the example plugin route/docs and replace the old standalone test suite with the host-backed contract and page tests.
2026-04-27 17:00:16 +02:00
self 569f7e9785 build: Credo, devenv, precommit 2026-04-26 22:00:17 +02:00
self 22fd27da14 Document current AshNostrSync plugin defaults 2026-04-18 12:42:58 +02:00
self f6b767fbec Update plugin template for host-driven dev reload 2026-04-08 13:11:37 +02:00
self 41d35103dd Document tribes.migrate workflow in template README 2026-04-04 22:39:43 +02:00
self ed0d4f9c0d Adopt strict plugin entry module and otp_app conventions 2026-04-04 20:33:59 +02:00
self 54d9bdd99c template: make rename portable and add explicit otp_app dev flow 2026-04-04 19:45:32 +02:00
self 647d5537ff skeleton 2026-03-25 12:42:19 +01:00