I recently released a new feature called "Delegated Moderation" which effectively allows a Monetizer Account to select other Hive accounts to moderate ads on its behalf.
Docs
mod_add
This new custom JSON op adds a specified Hive account as a moderator for the Hive Monetizer account that's making the op.
mod_remove
This custom JSON op removes the specified Hive account from the list of allowed moderators of the Hive Monetzier account making the op.
monetizer.get_moderators
This new API call will return a list of all moderators that the specified Monetizer account has delegated, with their status and scope.
Upgrading to the latest version
If you're running Native Ads, follow these two steps to upgrade:
- Get the latest code
- Run this query in your
native_ads
PostgreSQL database:
CREATE TABLE IF NOT EXISTS moderators (
monetizer_id integer NOT NULL REFERENCES monetizer_accs (id),
hive_acc_id integer NOT NULL REFERENCES hive_accounts (id),
enabled boolean NOT NULL DEFAULT true,
scope text NOT NULL DEFAULT '{}'
);
I'm still working on database migration, which will avoid having to run these SQL queries manually.
The new ops are activated as from block 48000000
from which point I made test transactions during development. You can drop the native_ads
database to resync and have these test transactions included in your DB, and perhaps other transactions that may have occurred since then.
What's next
More ad types
A top priority is to add support for more ad_types
and this is where most of the creativity will need to be. I'll share details on each type as I develop and release it.
DB Migration
I have to implement a migration system for the database, so that future upgrades won't require manual SQL queries to get to the latest DB version.
DB Snapshots
I want to host periodic snapshots of the database, so that upgrades are easier and quicker.
Node data integrity and consensus
I've been investigating a way to ensure that all Native Ads nodes have consensus and have the same data state. I've got a couple of theories, some of them look promising. I'm still looking into them and I plan to test some of them out soon.
Microfork recovery
During the HF24, issues with microforks brought to the surface the need to have microfork recovery built into the DB structure. It was part of the roadmap originally, as a transition out of the alpha version.
I'm working on an entirely new DB structure for Native Ads that allows for microfork recovery, while protecting important ops like ad_fund
that require more block confirmations to become "final" and some mitigation from reversals due to microfork recoveries.
Vote for my proposal
I have a proposal up on the DHF. Vote for it to enable me to dedicate more time to my Hive projects.