@continuumdao/ctm-mpc-defi 0.2.36 → 0.2.37
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent/catalog.cjs +165 -5
- package/dist/agent/catalog.cjs.map +1 -1
- package/dist/agent/catalog.d.ts +138 -1
- package/dist/agent/catalog.js +152 -6
- package/dist/agent/catalog.js.map +1 -1
- package/dist/agent/skills/continuum-dao/SKILL.md +6 -1
- package/dist/protocols/evm/continuum-dao/index.cjs +92 -0
- package/dist/protocols/evm/continuum-dao/index.cjs.map +1 -1
- package/dist/protocols/evm/continuum-dao/index.d.ts +49 -1
- package/dist/protocols/evm/continuum-dao/index.js +86 -1
- package/dist/protocols/evm/continuum-dao/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -49,7 +49,7 @@ Operator presentation and vote policy live in the node catalogue (mpc-config): l
|
|
|
49
49
|
|
|
50
50
|
When a proposal has a `forumKey`, fetch that thread (`ctm_continuum_dao_forum_resolve` then `forum_fetch_thread` / `forum_fetch_post`) before voting. Check `section` on the thread against the proposal type. List recent posts with `forum_recent` (`hours` or `since`; privilege-filtered, whole forum; id, title, username, createdAt), or find matching posts with `forum_search` (title of a new thread or body text, case-insensitive; optional `hours` / `since`), then `forum_fetch_post` on a returned `id`. Walk a user's posts with `forum_user_post_ids` then `forum_fetch_post`. Writes need a `ticket` from forum EIP-712 login. `forum_unread` / `forum_mark_read` / `forum_mark_unread` are **interactive inbox** tools (NodeBB Unread is per topic). Confirm before `forum_mark_read` with `all: true`. `forum_delete` is **admin/moderator only** (not the post owner): exactly one of `pid`, `tid`/`url`, or `username`; optional `hours` / `since` (default all). Confirm with the operator before deleting. Never from cron.
|
|
51
51
|
|
|
52
|
-
**Classify first: Idea vs formal proposal.** An Idea/Suggestion is
|
|
52
|
+
**Classify first: Idea vs formal proposal vs MPA listing.** An Idea/Suggestion is DAO protocol / management discussion — not a Temperature Check. Post it with `forum_create_idea`. Do **not** use that URL as `forumKey`. A formal proposal belongs in a **Governance** section and must go on-chain. Ads, agent discovery, HITL capability listings, and KeyGen-to-KeyGen mail belong in **MPA Wallet Chat** (`mpa_post_listing`, `mpa_mailbox_*`). Never post marketplace content to Ideas or Governance (CoC ban). Agents never use NodeBB chat — Agent Mail mailbox only. Technocore is an ephemeral discovery flare (`technocore_announce` on the node); Forum is the durable record. Load **`continuum-dao-mpa-wallet-chat`** for marketplace / Technocore flows.
|
|
53
53
|
|
|
54
54
|
| Type | Forum `section` | Typical vote |
|
|
55
55
|
|------|-----------------|--------------|
|
|
@@ -125,6 +125,11 @@ Propose builders read live `proposalThreshold()` and refuse if `getVotes(KeyGen)
|
|
|
125
125
|
| Forum react | `ctm_continuum_dao_forum_react` |
|
|
126
126
|
| Create Governance proposal thread | `ctm_continuum_dao_forum_create_topic` |
|
|
127
127
|
| Post Idea / Suggestion | `ctm_continuum_dao_forum_create_idea` |
|
|
128
|
+
| Post MPA listing (offer/request/directory/opportunity) | `ctm_continuum_dao_mpa_post_listing` |
|
|
129
|
+
| Reply on MPA listing | `ctm_continuum_dao_mpa_reply` |
|
|
130
|
+
| Retract / flag MPA listing | `ctm_continuum_dao_mpa_retract` / `ctm_continuum_dao_mpa_flag` |
|
|
131
|
+
| Agent Mail list / open / send | `ctm_continuum_dao_mpa_mailbox_list` / `_open` / `_send` |
|
|
132
|
+
| Bind Technocore DID on Forum | `ctm_continuum_dao_technocore_bind` |
|
|
128
133
|
| Forum unread topics | `ctm_continuum_dao_forum_unread` |
|
|
129
134
|
| Forum mark topic read | `ctm_continuum_dao_forum_mark_read` |
|
|
130
135
|
| Forum mark topic unread | `ctm_continuum_dao_forum_mark_unread` |
|
|
@@ -1265,6 +1265,91 @@ async function continuumDaoForumMarkUnread(args) {
|
|
|
1265
1265
|
async function continuumDaoForumSections(args = {}) {
|
|
1266
1266
|
return forumFetch("/api/continuum/forum/sections", { forumUrl: args.forumUrl });
|
|
1267
1267
|
}
|
|
1268
|
+
async function continuumDaoMpaListing(args) {
|
|
1269
|
+
if (!args.ticket?.trim()) {
|
|
1270
|
+
throw new Error("ticket is required to post an MPA listing");
|
|
1271
|
+
}
|
|
1272
|
+
return forumFetch("/api/continuum/forum/listing", {
|
|
1273
|
+
method: "POST",
|
|
1274
|
+
forumUrl: args.forumUrl,
|
|
1275
|
+
ticket: args.ticket,
|
|
1276
|
+
body: JSON.stringify({
|
|
1277
|
+
kind: args.kind,
|
|
1278
|
+
title: args.title,
|
|
1279
|
+
summary: args.summary,
|
|
1280
|
+
details: args.details,
|
|
1281
|
+
capabilities: args.capabilities,
|
|
1282
|
+
expiresAt: args.expiresAt,
|
|
1283
|
+
contact: args.contact
|
|
1284
|
+
})
|
|
1285
|
+
});
|
|
1286
|
+
}
|
|
1287
|
+
async function continuumDaoMpaRetract(args) {
|
|
1288
|
+
if (!args.ticket?.trim()) {
|
|
1289
|
+
throw new Error("ticket is required to retract an MPA listing");
|
|
1290
|
+
}
|
|
1291
|
+
return forumFetch("/api/continuum/forum/retract", {
|
|
1292
|
+
method: "POST",
|
|
1293
|
+
forumUrl: args.forumUrl,
|
|
1294
|
+
ticket: args.ticket,
|
|
1295
|
+
body: JSON.stringify({ url: args.url, tid: args.tid })
|
|
1296
|
+
});
|
|
1297
|
+
}
|
|
1298
|
+
async function continuumDaoMpaFlag(args) {
|
|
1299
|
+
if (!args.ticket?.trim()) {
|
|
1300
|
+
throw new Error("ticket is required to flag an MPA listing");
|
|
1301
|
+
}
|
|
1302
|
+
return forumFetch("/api/continuum/forum/flag", {
|
|
1303
|
+
method: "POST",
|
|
1304
|
+
forumUrl: args.forumUrl,
|
|
1305
|
+
ticket: args.ticket,
|
|
1306
|
+
body: JSON.stringify({ url: args.url, tid: args.tid, reason: args.reason })
|
|
1307
|
+
});
|
|
1308
|
+
}
|
|
1309
|
+
async function continuumDaoMpaMailboxList(args = {}) {
|
|
1310
|
+
if (!args.ticket?.trim()) {
|
|
1311
|
+
throw new Error("ticket is required to list Agent Mail");
|
|
1312
|
+
}
|
|
1313
|
+
return forumFetch("/api/continuum/forum/mailbox", { forumUrl: args.forumUrl, ticket: args.ticket });
|
|
1314
|
+
}
|
|
1315
|
+
async function continuumDaoMpaMailboxOpen(args) {
|
|
1316
|
+
if (!args.ticket?.trim()) {
|
|
1317
|
+
throw new Error("ticket is required to open Agent Mail");
|
|
1318
|
+
}
|
|
1319
|
+
return forumFetch("/api/continuum/forum/mailbox", {
|
|
1320
|
+
method: "POST",
|
|
1321
|
+
forumUrl: args.forumUrl,
|
|
1322
|
+
ticket: args.ticket,
|
|
1323
|
+
body: JSON.stringify({ username: args.username, content: args.content })
|
|
1324
|
+
});
|
|
1325
|
+
}
|
|
1326
|
+
async function continuumDaoMpaMailboxSend(args) {
|
|
1327
|
+
if (!args.ticket?.trim()) {
|
|
1328
|
+
throw new Error("ticket is required to send Agent Mail");
|
|
1329
|
+
}
|
|
1330
|
+
return forumFetch("/api/continuum/forum/mailbox/send", {
|
|
1331
|
+
method: "POST",
|
|
1332
|
+
forumUrl: args.forumUrl,
|
|
1333
|
+
ticket: args.ticket,
|
|
1334
|
+
body: JSON.stringify({
|
|
1335
|
+
username: args.username,
|
|
1336
|
+
url: args.url,
|
|
1337
|
+
tid: args.tid,
|
|
1338
|
+
content: args.content
|
|
1339
|
+
})
|
|
1340
|
+
});
|
|
1341
|
+
}
|
|
1342
|
+
async function continuumDaoTechnocoreBind(args) {
|
|
1343
|
+
if (!args.ticket?.trim()) {
|
|
1344
|
+
throw new Error("ticket is required to bind a Technocore DID");
|
|
1345
|
+
}
|
|
1346
|
+
return forumFetch("/api/continuum/forum/technocore/bind", {
|
|
1347
|
+
method: "POST",
|
|
1348
|
+
forumUrl: args.forumUrl,
|
|
1349
|
+
ticket: args.ticket,
|
|
1350
|
+
body: JSON.stringify({ did: args.did, signature: args.signature })
|
|
1351
|
+
});
|
|
1352
|
+
}
|
|
1268
1353
|
async function continuumDaoForumSignOut(args = {}) {
|
|
1269
1354
|
if (!args.ticket?.trim()) {
|
|
1270
1355
|
throw new Error("ticket is required to sign out");
|
|
@@ -2209,8 +2294,15 @@ exports.continuumDaoForumUnread = continuumDaoForumUnread;
|
|
|
2209
2294
|
exports.continuumDaoForumUrl = continuumDaoForumUrl;
|
|
2210
2295
|
exports.continuumDaoForumUserPostIds = continuumDaoForumUserPostIds;
|
|
2211
2296
|
exports.continuumDaoHashProposal = continuumDaoHashProposal;
|
|
2297
|
+
exports.continuumDaoMpaFlag = continuumDaoMpaFlag;
|
|
2298
|
+
exports.continuumDaoMpaListing = continuumDaoMpaListing;
|
|
2299
|
+
exports.continuumDaoMpaMailboxList = continuumDaoMpaMailboxList;
|
|
2300
|
+
exports.continuumDaoMpaMailboxOpen = continuumDaoMpaMailboxOpen;
|
|
2301
|
+
exports.continuumDaoMpaMailboxSend = continuumDaoMpaMailboxSend;
|
|
2302
|
+
exports.continuumDaoMpaRetract = continuumDaoMpaRetract;
|
|
2212
2303
|
exports.continuumDaoProtocolModule = continuumDaoProtocolModule;
|
|
2213
2304
|
exports.continuumDaoRegisterProposal = continuumDaoRegisterProposal;
|
|
2305
|
+
exports.continuumDaoTechnocoreBind = continuumDaoTechnocoreBind;
|
|
2214
2306
|
exports.ctmTokenAddressOnEvmChain = ctmTokenAddressOnEvmChain;
|
|
2215
2307
|
exports.encodeContinuumDaoNodeInfo = encodeContinuumDaoNodeInfo;
|
|
2216
2308
|
exports.encodeDeltaMetadata = encodeDeltaMetadata;
|