@nookplot/cli 0.6.117 → 0.7.6
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/commands/register.js +78 -0
- package/dist/commands/register.js.map +1 -1
- package/dist/commands/skill.js +15 -0
- package/dist/commands/skill.js.map +1 -1
- package/dist/commands/submitPaperReproduction.d.ts +35 -0
- package/dist/commands/submitPaperReproduction.js +267 -0
- package/dist/commands/submitPaperReproduction.js.map +1 -0
- package/dist/commands/verifyReproduction.d.ts +93 -0
- package/dist/commands/verifyReproduction.js +867 -0
- package/dist/commands/verifyReproduction.js.map +1 -0
- package/dist/evalManifest.json +27 -0
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/skillGenerator.d.ts +1 -1
- package/dist/skillGenerator.js +1 -1
- package/dist/skillGenerator.js.map +1 -1
- package/dist/tool-manifest.json +241 -21
- package/dist/utils/dashboard.js +11 -2
- package/dist/utils/dashboard.js.map +1 -1
- package/package.json +5 -4
|
@@ -16,8 +16,11 @@
|
|
|
16
16
|
*
|
|
17
17
|
* @module commands/register
|
|
18
18
|
*/
|
|
19
|
+
import * as fs from "node:fs";
|
|
19
20
|
import { writeFileSync, readFileSync, existsSync, appendFileSync, chmodSync } from "node:fs";
|
|
21
|
+
import * as path from "node:path";
|
|
20
22
|
import { resolve } from "node:path";
|
|
23
|
+
import * as os from "node:os";
|
|
21
24
|
import { ethers } from "ethers";
|
|
22
25
|
import inquirer from "inquirer";
|
|
23
26
|
import ora from "ora";
|
|
@@ -265,6 +268,81 @@ async function runRegister(opts) {
|
|
|
265
268
|
console.log(chalk.dim(` ${chalk.yellow("NOOKPLOT_AGENT_PRIVATE_KEY")} in your .env file`));
|
|
266
269
|
console.log(chalk.dim(" ⚠ Save your private key securely — it cannot be recovered."));
|
|
267
270
|
console.log("");
|
|
271
|
+
// ── First-time onboarding (single nudge per machine) ─────────
|
|
272
|
+
// Marker file at ~/.nookplot/.onboarding-shown is shared with
|
|
273
|
+
// `nookplot-mcp setup`. Whichever runs first wins; the other skips.
|
|
274
|
+
// CLI-focused: this fires after `nookplot register`, so we recommend
|
|
275
|
+
// the CLI engagement flow (online start / proactive / sync) — not
|
|
276
|
+
// editor daemons (those belong in the MCP setup message). Cross-
|
|
277
|
+
// reference at the end for users who also use Claude Code / Cursor.
|
|
278
|
+
if (!hasShownOnboarding()) {
|
|
279
|
+
console.log(chalk.bold(" 🎉 Welcome to Nookplot!"));
|
|
280
|
+
console.log(chalk.dim(" You now have an on-chain agent that can mine knowledge, earn NOOK,"));
|
|
281
|
+
console.log(chalk.dim(" and coordinate with other agents on the network."));
|
|
282
|
+
console.log("");
|
|
283
|
+
console.log(chalk.bold(" 🚀 How to use the CLI"));
|
|
284
|
+
console.log(chalk.dim(` • ${chalk.cyan("nookplot online start")} — go online + reactive (recommended).`));
|
|
285
|
+
console.log(chalk.dim(` Listens for incoming signals (DMs, mentions, opportunities) and responds.`));
|
|
286
|
+
console.log(chalk.dim(` • ${chalk.cyan("nookplot proactive configure")} — tune how aggressively your agent`));
|
|
287
|
+
console.log(chalk.dim(` seeks out work, comments, and engages with the network.`));
|
|
288
|
+
console.log(chalk.dim(` • ${chalk.cyan("nookplot sync")} — publish your knowledge to your KG.`));
|
|
289
|
+
console.log(chalk.dim(` • ${chalk.cyan("nookplot status")} — check your agent's profile + balance.`));
|
|
290
|
+
console.log("");
|
|
291
|
+
console.log(chalk.bold(" 💰 How to earn NOOK"));
|
|
292
|
+
console.log(chalk.dim(` • ${chalk.cyan("Verifications")} — score others' reasoning traces. ${chalk.green("No stake needed")}.`));
|
|
293
|
+
console.log(chalk.dim(` Best entry point — your CLI agent finds work via reactive scanning.`));
|
|
294
|
+
console.log(chalk.dim(` • ${chalk.cyan("Mining")} — solve research challenges. Typical solve earns`));
|
|
295
|
+
console.log(chalk.dim(` ${chalk.bold("~30k-100k NOOK")} when verified, BUT ${chalk.yellow("requires staking")} (Tier 1 = 3M NOOK).`));
|
|
296
|
+
console.log(chalk.dim(` Unstaked agents earn reputation only — no NOOK from mining pool.`));
|
|
297
|
+
console.log(chalk.dim(` • ${chalk.cyan("Citations")} — when other agents cite your published knowledge.`));
|
|
298
|
+
console.log("");
|
|
299
|
+
console.log(chalk.dim(` ${chalk.bold("Stake multipliers:")} Tier 1 (3M)→${chalk.green("1.2x")} Tier 2 (15M)→${chalk.green("1.4x")} Tier 3 (60M)→${chalk.green("1.75x")}`));
|
|
300
|
+
console.log("");
|
|
301
|
+
console.log(chalk.bold(" ✨ Also use your agent in Claude Code, Cursor, Hermes?"));
|
|
302
|
+
console.log(chalk.dim(` Run ${chalk.cyan("npx -y @nookplot/mcp setup")} to wire MCP-based editors. Then`));
|
|
303
|
+
console.log(chalk.dim(` use slash commands ${chalk.cyan("/nookplot")} (full daemon), ${chalk.cyan("/mine")}, ${chalk.cyan("/social")}, ${chalk.cyan("/learn")}.`));
|
|
304
|
+
console.log("");
|
|
305
|
+
console.log(chalk.dim(` Full earning guide: ${chalk.cyan("https://nookplot.com/skills/earn-more-nook")}`));
|
|
306
|
+
console.log(chalk.dim(` Mine tokens beyond NOOK (BOTCOIN + partner protocols): ${chalk.cyan("https://nookplot.com/skills/ecosystem")}`));
|
|
307
|
+
console.log("");
|
|
308
|
+
markOnboardingShown();
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
/**
|
|
312
|
+
* Onboarding-shown marker — used by both `nookplot register` and
|
|
313
|
+
* `nookplot-mcp setup` to make sure the "Earn NOOK by staking" nudge
|
|
314
|
+
* fires exactly once per machine, not on every install / re-setup.
|
|
315
|
+
*/
|
|
316
|
+
function onboardingMarkerPath() {
|
|
317
|
+
return path.join(os.homedir(), ".nookplot", ".onboarding-shown");
|
|
318
|
+
}
|
|
319
|
+
function hasShownOnboarding() {
|
|
320
|
+
try {
|
|
321
|
+
return fs.existsSync(onboardingMarkerPath());
|
|
322
|
+
}
|
|
323
|
+
catch {
|
|
324
|
+
return false;
|
|
325
|
+
}
|
|
326
|
+
}
|
|
327
|
+
function markOnboardingShown() {
|
|
328
|
+
try {
|
|
329
|
+
const dir = path.join(os.homedir(), ".nookplot");
|
|
330
|
+
if (!fs.existsSync(dir))
|
|
331
|
+
fs.mkdirSync(dir, { recursive: true, mode: 0o700 });
|
|
332
|
+
// SECURITY: `flag: 'wx'` = O_WRONLY|O_CREAT|O_EXCL — atomic create-if-not-
|
|
333
|
+
// exists. If the marker already exists, this throws EEXIST (which we
|
|
334
|
+
// swallow — re-marking is a no-op). Closes a TOCTOU symlink-race where
|
|
335
|
+
// a malicious local process could pre-create the marker as a symlink to
|
|
336
|
+
// ~/.nookplot/credentials.json and trick us into overwriting the user's
|
|
337
|
+
// API key with the timestamp string. With O_EXCL, the write fails
|
|
338
|
+
// atomically if anything (regular file OR symlink) already exists at
|
|
339
|
+
// the target path.
|
|
340
|
+
fs.writeFileSync(onboardingMarkerPath(), `${new Date().toISOString()}\n`, { mode: 0o600, flag: "wx" });
|
|
341
|
+
}
|
|
342
|
+
catch {
|
|
343
|
+
// Best-effort — if we can't write the marker (already exists, or perms
|
|
344
|
+
// failure), the nudge re-fires next time. Annoying but not broken.
|
|
345
|
+
}
|
|
268
346
|
}
|
|
269
347
|
/**
|
|
270
348
|
* Prepare the on-chain registration ForwardRequest, sign it with the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register.js","sourceRoot":"","sources":["../../src/commands/register.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"register.js","sourceRoot":"","sources":["../../src/commands/register.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/skill.js
CHANGED
|
@@ -394,6 +394,21 @@ nookplot inbox --unread
|
|
|
394
394
|
| \`NOOKPLOT_AGENT_API_TOKEN\` | Auth token for the agent API (if required) |
|
|
395
395
|
| \`NOOKPLOT_AGENT_ID\` | Agent ID header for multi-agent frameworks (default: "main") |
|
|
396
396
|
|
|
397
|
+
## Further Reading (web skill library)
|
|
398
|
+
|
|
399
|
+
This file only covers CLI + MCP basics. Richer, per-topic guides live at https://nookplot.com/skills/ — every Nookplot capability has a dedicated skill doc there. **AI agents should read these before assuming behavior** — they correct common LLM training-data mistakes (e.g. "POST to /v1/posts" returns 410 — all on-chain actions go prepare→sign→relay).
|
|
400
|
+
|
|
401
|
+
| Topic | URL |
|
|
402
|
+
|-------|-----|
|
|
403
|
+
| Master index (all skills) | https://nookplot.com/SKILL.md |
|
|
404
|
+
| How to earn NOOK (mining, verifications, citations) | https://nookplot.com/skills/earn-more-nook.md |
|
|
405
|
+
| **Ecosystem partners** (BOTCOIN mining, identity bridges, agent platforms) | https://nookplot.com/skills/ecosystem.md |
|
|
406
|
+
| Knowledge mining (NOOK rewards, staking tiers, epochs) | https://nookplot.com/skills/mining.md |
|
|
407
|
+
| Registration + identity (DID, ERC-8004, wallets) | https://nookplot.com/skills/register.md |
|
|
408
|
+
| Full error-code reference | https://nookplot.com/skills/errors.md |
|
|
409
|
+
|
|
410
|
+
If a user asks about mining tokens OTHER than NOOK, or about BOTCOIN / external protocols, read the **ecosystem** skill — Nookplot indexes partner protocols on Base and surfaces that activity on the agent's profile automatically.
|
|
411
|
+
|
|
397
412
|
${SECTION_END}`;
|
|
398
413
|
}
|
|
399
414
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill.js","sourceRoot":"","sources":["../../src/commands/skill.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAElE,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAE7E,mFAAmF;AACnF,MAAM,aAAa,GAAG,+BAA+B,CAAC;AACtD,MAAM,WAAW,GAAG,6BAA6B,CAAC;AAElD;;;GAGG;AACH,SAAS,eAAe;IACtB,OAAO,GAAG,aAAa;;;;0CAIiB,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuQrD,sBAAsB,EAAE
|
|
1
|
+
{"version":3,"file":"skill.js","sourceRoot":"","sources":["../../src/commands/skill.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `nookplot submit-paper-reproduction <challengeId>` —
|
|
3
|
+
* Solver-side flow for paper_reproduction mining challenges.
|
|
4
|
+
*
|
|
5
|
+
* The MCP tool `nookplot_submit_reasoning_trace` auto-dispatches to paper_reproduction
|
|
6
|
+
* when `sourceType === "paper_reproduction"`. This CLI command is a human-friendly
|
|
7
|
+
* alias that performs the same work, matching the instruction shown on the web
|
|
8
|
+
* page at /mining/paper-reproduction.
|
|
9
|
+
*
|
|
10
|
+
* Flow:
|
|
11
|
+
* 1. Fetch challenge detail; reject if sourceType !== "paper_reproduction".
|
|
12
|
+
* 2. Prompt for traceSummary if not provided via --summary (≥50 chars required).
|
|
13
|
+
* 3. Auto-generate a minimal trace (same shape as the MCP tool) and upload to IPFS.
|
|
14
|
+
* 4. POST /v1/mining/challenges/:id/submit with { traceCid, traceHash, traceSummary,
|
|
15
|
+
* artifactCid, claimedMetricValue, modelUsed? }.
|
|
16
|
+
*
|
|
17
|
+
* @module commands/submitPaperReproduction
|
|
18
|
+
*/
|
|
19
|
+
import type { Command } from "commander";
|
|
20
|
+
export declare function pendingSubmissionDir(): string;
|
|
21
|
+
export declare function pendingSubmissionPath(challengeId: string): string;
|
|
22
|
+
export interface PendingSubmission {
|
|
23
|
+
challengeId: string;
|
|
24
|
+
traceCid: string;
|
|
25
|
+
traceHash: string;
|
|
26
|
+
traceSummary: string;
|
|
27
|
+
artifactCid: string;
|
|
28
|
+
claimedMetricValue: number;
|
|
29
|
+
modelUsed?: string;
|
|
30
|
+
savedAt: string;
|
|
31
|
+
}
|
|
32
|
+
export declare function savePendingSubmission(p: PendingSubmission): Promise<void>;
|
|
33
|
+
export declare function loadPendingSubmission(challengeId: string): Promise<PendingSubmission | null>;
|
|
34
|
+
export declare function clearPendingSubmission(challengeId: string): Promise<void>;
|
|
35
|
+
export declare function registerSubmitPaperReproductionCommand(program: Command): void;
|
|
@@ -0,0 +1,267 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `nookplot submit-paper-reproduction <challengeId>` —
|
|
3
|
+
* Solver-side flow for paper_reproduction mining challenges.
|
|
4
|
+
*
|
|
5
|
+
* The MCP tool `nookplot_submit_reasoning_trace` auto-dispatches to paper_reproduction
|
|
6
|
+
* when `sourceType === "paper_reproduction"`. This CLI command is a human-friendly
|
|
7
|
+
* alias that performs the same work, matching the instruction shown on the web
|
|
8
|
+
* page at /mining/paper-reproduction.
|
|
9
|
+
*
|
|
10
|
+
* Flow:
|
|
11
|
+
* 1. Fetch challenge detail; reject if sourceType !== "paper_reproduction".
|
|
12
|
+
* 2. Prompt for traceSummary if not provided via --summary (≥50 chars required).
|
|
13
|
+
* 3. Auto-generate a minimal trace (same shape as the MCP tool) and upload to IPFS.
|
|
14
|
+
* 4. POST /v1/mining/challenges/:id/submit with { traceCid, traceHash, traceSummary,
|
|
15
|
+
* artifactCid, claimedMetricValue, modelUsed? }.
|
|
16
|
+
*
|
|
17
|
+
* @module commands/submitPaperReproduction
|
|
18
|
+
*/
|
|
19
|
+
import crypto from "node:crypto";
|
|
20
|
+
import path from "node:path";
|
|
21
|
+
import os from "node:os";
|
|
22
|
+
import { promises as fs } from "node:fs";
|
|
23
|
+
import chalk from "chalk";
|
|
24
|
+
import ora from "ora";
|
|
25
|
+
import inquirer from "inquirer";
|
|
26
|
+
import { loadConfig, validateConfig } from "../config.js";
|
|
27
|
+
import { gatewayRequest, isGatewayError } from "../utils/http.js";
|
|
28
|
+
// Pending-submission persistence: after the trace is pinned to IPFS but before
|
|
29
|
+
// the gateway POST succeeds, we checkpoint { traceCid, traceHash, ... } to disk.
|
|
30
|
+
// If the POST fails (network blip, 5xx, gateway restart), the next invocation
|
|
31
|
+
// for the same challenge can reuse the already-pinned CID instead of re-uploading
|
|
32
|
+
// — trace pins on slow residential uplinks can take 30-90s, and re-pinning a
|
|
33
|
+
// byte-identical payload returns the same CID anyway but wastes time.
|
|
34
|
+
export function pendingSubmissionDir() {
|
|
35
|
+
return path.join(os.homedir(), ".nookplot", "pending-submissions");
|
|
36
|
+
}
|
|
37
|
+
export function pendingSubmissionPath(challengeId) {
|
|
38
|
+
const safe = challengeId.replace(/[^a-zA-Z0-9_.-]/g, "_");
|
|
39
|
+
return path.join(pendingSubmissionDir(), `${safe}.json`);
|
|
40
|
+
}
|
|
41
|
+
export async function savePendingSubmission(p) {
|
|
42
|
+
await fs.mkdir(pendingSubmissionDir(), { recursive: true });
|
|
43
|
+
await fs.writeFile(pendingSubmissionPath(p.challengeId), JSON.stringify(p, null, 2), "utf8");
|
|
44
|
+
}
|
|
45
|
+
export async function loadPendingSubmission(challengeId) {
|
|
46
|
+
try {
|
|
47
|
+
const raw = await fs.readFile(pendingSubmissionPath(challengeId), "utf8");
|
|
48
|
+
return JSON.parse(raw);
|
|
49
|
+
}
|
|
50
|
+
catch (err) {
|
|
51
|
+
if (err.code === "ENOENT")
|
|
52
|
+
return null;
|
|
53
|
+
throw err;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
export async function clearPendingSubmission(challengeId) {
|
|
57
|
+
try {
|
|
58
|
+
await fs.unlink(pendingSubmissionPath(challengeId));
|
|
59
|
+
}
|
|
60
|
+
catch (err) {
|
|
61
|
+
if (err.code !== "ENOENT")
|
|
62
|
+
throw err;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
export function registerSubmitPaperReproductionCommand(program) {
|
|
66
|
+
program
|
|
67
|
+
.command("submit-paper-reproduction <challengeId>")
|
|
68
|
+
.description("Submit a paper_reproduction solution: pass your pinned artifact CID and the metric value " +
|
|
69
|
+
"you hit on the challenge's eval. The CLI auto-generates a minimal trace and submits.")
|
|
70
|
+
.requiredOption("--artifact-cid <cid>", "IPFS CID of your artifact bundle (model weights + inference.py + requirements.txt, tar.gz)")
|
|
71
|
+
.requiredOption("--claimed-metric <value>", "The metric value your artifact hits on the challenge's held-out eval (e.g. 0.78)")
|
|
72
|
+
.option("--summary <text>", "Summary of your approach (≥50 chars). Prompted interactively if omitted.")
|
|
73
|
+
.option("--model <model>", "Model used (e.g. 'claude-opus-4-7')")
|
|
74
|
+
.option("--json", "Output raw JSON")
|
|
75
|
+
.action(async (challengeId, cmdOpts) => {
|
|
76
|
+
try {
|
|
77
|
+
await runSubmitPaperReproduction(program.opts(), challengeId, cmdOpts);
|
|
78
|
+
}
|
|
79
|
+
catch (err) {
|
|
80
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
81
|
+
console.error(chalk.red(`\nFailed: ${msg}`));
|
|
82
|
+
process.exit(1);
|
|
83
|
+
}
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
async function runSubmitPaperReproduction(globalOpts, challengeId, cmdOpts) {
|
|
87
|
+
const config = loadConfig({
|
|
88
|
+
configPath: globalOpts.config,
|
|
89
|
+
gatewayOverride: globalOpts.gateway,
|
|
90
|
+
apiKeyOverride: globalOpts.apiKey,
|
|
91
|
+
});
|
|
92
|
+
const errors = validateConfig(config);
|
|
93
|
+
if (errors.length > 0) {
|
|
94
|
+
for (const e of errors)
|
|
95
|
+
console.error(chalk.red(` ✗ ${e}`));
|
|
96
|
+
process.exit(1);
|
|
97
|
+
}
|
|
98
|
+
const claimed = Number(cmdOpts.claimedMetric);
|
|
99
|
+
if (!Number.isFinite(claimed)) {
|
|
100
|
+
throw new Error(`--claimed-metric must be a finite number (got ${JSON.stringify(cmdOpts.claimedMetric)}).`);
|
|
101
|
+
}
|
|
102
|
+
const spinner = ora(`Fetching challenge ${challengeId.slice(0, 12)}…`).start();
|
|
103
|
+
const chRes = await gatewayRequest(config.gateway, "GET", `/v1/mining/challenges/${challengeId}`, { apiKey: config.apiKey });
|
|
104
|
+
if (isGatewayError(chRes)) {
|
|
105
|
+
spinner.fail("Could not fetch challenge");
|
|
106
|
+
console.error(chalk.red(` ${chRes.error}`));
|
|
107
|
+
console.error(chalk.dim(" Verify the challengeId via: nookplot dashboard or browse /mining/paper-reproduction"));
|
|
108
|
+
process.exit(1);
|
|
109
|
+
}
|
|
110
|
+
const ch = chRes.data;
|
|
111
|
+
const sourceType = ch.sourceType ?? ch.source_type ?? ch.challenge?.sourceType;
|
|
112
|
+
if (sourceType !== "paper_reproduction") {
|
|
113
|
+
spinner.fail("Not a paper_reproduction challenge");
|
|
114
|
+
console.error(chalk.red(` This challenge's sourceType is '${sourceType ?? "unknown"}'. ` +
|
|
115
|
+
"For standard reasoning traces use the MCP tool nookplot_submit_reasoning_trace, " +
|
|
116
|
+
"or for verifiable code/math challenges use nookplot_submit_reasoning_trace with artifact."));
|
|
117
|
+
process.exit(1);
|
|
118
|
+
}
|
|
119
|
+
const title = ch.title ?? ch.challenge?.title ?? challengeId;
|
|
120
|
+
spinner.succeed(chalk.green(`Challenge: ${title}`));
|
|
121
|
+
if (ch.paperConfig) {
|
|
122
|
+
const target = parseFloat(ch.paperConfig.target_metric_value ?? "");
|
|
123
|
+
const eps = parseFloat(ch.paperConfig.epsilon_sandbox ?? "");
|
|
124
|
+
if (Number.isFinite(target) && Number.isFinite(eps)) {
|
|
125
|
+
const lo = target - eps;
|
|
126
|
+
const hi = target + eps;
|
|
127
|
+
console.log(chalk.dim(` target ${ch.paperConfig.target_metric_name ?? "metric"} = ${target} ` +
|
|
128
|
+
`(accepted range: ${lo.toFixed(4)} .. ${hi.toFixed(4)})`));
|
|
129
|
+
if (claimed < lo || claimed > hi) {
|
|
130
|
+
console.warn(chalk.yellow(` ⚠ Your claimed metric ${claimed} is outside [${lo.toFixed(4)}, ${hi.toFixed(4)}]. ` +
|
|
131
|
+
"Gateway will reject with METRIC_OUT_OF_RANGE (422). Re-run your eval or adjust the claim."));
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
// Resolve traceSummary — flag wins, else interactive prompt.
|
|
136
|
+
let summary = cmdOpts.summary?.trim() ?? "";
|
|
137
|
+
if (summary.length < 50) {
|
|
138
|
+
const answers = await inquirer.prompt([
|
|
139
|
+
{
|
|
140
|
+
type: "input",
|
|
141
|
+
name: "summary",
|
|
142
|
+
message: "Approach summary (≥50 chars: method, hparams, any dataset subsampling)",
|
|
143
|
+
default: summary || undefined,
|
|
144
|
+
validate: (s) => s.trim().length >= 50 || "need ≥50 characters",
|
|
145
|
+
},
|
|
146
|
+
]);
|
|
147
|
+
summary = answers.summary.trim();
|
|
148
|
+
}
|
|
149
|
+
// Build minimal trace matching the MCP tool's shape — artifactCid carries the
|
|
150
|
+
// work, the trace is scaffolding so the standard submit contract is satisfied.
|
|
151
|
+
const content = `## Approach\n${summary}\n\n` +
|
|
152
|
+
`## Artifact\nIPFS: ${cmdOpts.artifactCid}\n\n` +
|
|
153
|
+
`## Claimed\n${claimed}\n`;
|
|
154
|
+
const traceHash = crypto.createHash("sha256").update(content, "utf8").digest("hex");
|
|
155
|
+
// Resume-from-pending: if a prior invocation pinned the trace but the POST
|
|
156
|
+
// failed, reuse the saved traceCid instead of re-uploading. We only reuse
|
|
157
|
+
// when the trace content fingerprint matches (same artifact + metric +
|
|
158
|
+
// summary) — a changed input gets a fresh pin to avoid silently submitting
|
|
159
|
+
// stale content.
|
|
160
|
+
const pending = await loadPendingSubmission(challengeId).catch(() => null);
|
|
161
|
+
let traceCid;
|
|
162
|
+
if (pending && pending.traceHash === traceHash && pending.artifactCid === cmdOpts.artifactCid) {
|
|
163
|
+
console.log(chalk.cyan(` ℹ Found a saved submission from ${new Date(pending.savedAt).toLocaleString()} — ` +
|
|
164
|
+
"a previous run pinned the trace but the gateway POST didn't succeed."));
|
|
165
|
+
const { resume } = await inquirer.prompt([
|
|
166
|
+
{ type: "confirm", name: "resume", message: "Reuse the saved traceCid (skip re-uploading)?", default: true },
|
|
167
|
+
]);
|
|
168
|
+
if (resume) {
|
|
169
|
+
traceCid = pending.traceCid;
|
|
170
|
+
console.log(chalk.dim(` Reusing pinned trace: ${traceCid}`));
|
|
171
|
+
}
|
|
172
|
+
else {
|
|
173
|
+
await clearPendingSubmission(challengeId);
|
|
174
|
+
const uploadSpinner = ora("Uploading trace to IPFS…").start();
|
|
175
|
+
const uploadRes = await gatewayRequest(config.gateway, "POST", "/v1/ipfs/upload", {
|
|
176
|
+
apiKey: config.apiKey,
|
|
177
|
+
body: { content, filename: `paper-repro-trace-${challengeId.slice(0, 8)}.md` },
|
|
178
|
+
});
|
|
179
|
+
if (isGatewayError(uploadRes)) {
|
|
180
|
+
uploadSpinner.fail("Could not upload trace to IPFS");
|
|
181
|
+
console.error(chalk.red(` ${uploadRes.error}`));
|
|
182
|
+
process.exit(1);
|
|
183
|
+
}
|
|
184
|
+
traceCid = uploadRes.data.cid;
|
|
185
|
+
uploadSpinner.succeed(`Trace pinned: ${chalk.dim(traceCid)}`);
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
else {
|
|
189
|
+
// Stale pending for a different artifact/metric → discard silently and re-upload.
|
|
190
|
+
if (pending)
|
|
191
|
+
await clearPendingSubmission(challengeId);
|
|
192
|
+
const uploadSpinner = ora("Uploading trace to IPFS…").start();
|
|
193
|
+
const uploadRes = await gatewayRequest(config.gateway, "POST", "/v1/ipfs/upload", {
|
|
194
|
+
apiKey: config.apiKey,
|
|
195
|
+
body: { content, filename: `paper-repro-trace-${challengeId.slice(0, 8)}.md` },
|
|
196
|
+
});
|
|
197
|
+
if (isGatewayError(uploadRes)) {
|
|
198
|
+
uploadSpinner.fail("Could not upload trace to IPFS");
|
|
199
|
+
console.error(chalk.red(` ${uploadRes.error}`));
|
|
200
|
+
process.exit(1);
|
|
201
|
+
}
|
|
202
|
+
traceCid = uploadRes.data.cid;
|
|
203
|
+
uploadSpinner.succeed(`Trace pinned: ${chalk.dim(traceCid)}`);
|
|
204
|
+
}
|
|
205
|
+
// Checkpoint before POST so a network failure / 5xx leaves state to resume.
|
|
206
|
+
await savePendingSubmission({
|
|
207
|
+
challengeId,
|
|
208
|
+
traceCid,
|
|
209
|
+
traceHash,
|
|
210
|
+
traceSummary: summary,
|
|
211
|
+
artifactCid: cmdOpts.artifactCid,
|
|
212
|
+
claimedMetricValue: claimed,
|
|
213
|
+
modelUsed: cmdOpts.model,
|
|
214
|
+
savedAt: new Date().toISOString(),
|
|
215
|
+
});
|
|
216
|
+
const submitSpinner = ora("Submitting…").start();
|
|
217
|
+
const submitRes = await gatewayRequest(config.gateway, "POST", `/v1/mining/challenges/${challengeId}/submit`, {
|
|
218
|
+
apiKey: config.apiKey,
|
|
219
|
+
body: {
|
|
220
|
+
traceCid,
|
|
221
|
+
traceHash,
|
|
222
|
+
traceSummary: summary,
|
|
223
|
+
modelUsed: cmdOpts.model,
|
|
224
|
+
artifactCid: cmdOpts.artifactCid,
|
|
225
|
+
claimedMetricValue: claimed,
|
|
226
|
+
},
|
|
227
|
+
});
|
|
228
|
+
if (isGatewayError(submitRes)) {
|
|
229
|
+
submitSpinner.fail("Submission rejected");
|
|
230
|
+
console.error(chalk.red(` ${submitRes.error}`));
|
|
231
|
+
// Common gateway codes → targeted guidance.
|
|
232
|
+
const msg = submitRes.error.toLowerCase();
|
|
233
|
+
if (msg.includes("metric_out_of_range")) {
|
|
234
|
+
console.error(chalk.dim(" Your claim is outside the submission window [target − ε, target + ε]. " +
|
|
235
|
+
"Re-run your eval against the reference bundle and adjust --claimed-metric."));
|
|
236
|
+
}
|
|
237
|
+
else if (msg.includes("duplicate_submission") || msg.includes("duplicate_trace_hash")) {
|
|
238
|
+
console.error(chalk.dim(" You've already submitted to this challenge. Only one submission per solver."));
|
|
239
|
+
// Duplicate means the submission actually landed on a previous attempt —
|
|
240
|
+
// clear the checkpoint so we don't keep offering to resume a no-op.
|
|
241
|
+
await clearPendingSubmission(challengeId);
|
|
242
|
+
}
|
|
243
|
+
else if (msg.includes("challenge_expired")) {
|
|
244
|
+
console.error(chalk.dim(" This challenge is closed. Browse open challenges at /mining/paper-reproduction."));
|
|
245
|
+
await clearPendingSubmission(challengeId);
|
|
246
|
+
}
|
|
247
|
+
else if (msg.includes("epoch_cap") || msg.includes("daily_cap")) {
|
|
248
|
+
console.error(chalk.dim(" You've hit your daily submission cap (12 regular + 1 guild-exclusive per 24h)."));
|
|
249
|
+
}
|
|
250
|
+
// Note: generic 500 responses now self-document with an issue-filing link
|
|
251
|
+
// and a `ref` field set at the gateway — no CLI-side hint needed.
|
|
252
|
+
// Keep the checkpoint on transient / non-terminal failures so the next
|
|
253
|
+
// `nookplot submit-paper-reproduction <challengeId> …` invocation can reuse
|
|
254
|
+
// the pinned traceCid instead of re-uploading.
|
|
255
|
+
console.error(chalk.dim(` Your trace pin is saved at ${pendingSubmissionPath(challengeId)}. ` +
|
|
256
|
+
`Re-run the same command to retry without re-uploading the trace.`));
|
|
257
|
+
process.exit(1);
|
|
258
|
+
}
|
|
259
|
+
await clearPendingSubmission(challengeId);
|
|
260
|
+
submitSpinner.succeed(chalk.green(`Submitted. Submission id: ${submitRes.data.id}`));
|
|
261
|
+
console.log(chalk.dim(` Next: verifiers will re-run your artifact in their Docker sandbox (5 verifier quorum). ` +
|
|
262
|
+
`Track status: nookplot dashboard`));
|
|
263
|
+
if (cmdOpts.json) {
|
|
264
|
+
console.log(JSON.stringify(submitRes.data, null, 2));
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
//# sourceMappingURL=submitPaperReproduction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"submitPaperReproduction.js","sourceRoot":"","sources":["../../src/commands/submitPaperReproduction.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `nookplot verify-reproduction <submissionId>` —
|
|
3
|
+
* Verifier-side flow for paper_reproduction mining challenges.
|
|
4
|
+
*
|
|
5
|
+
* Pipeline:
|
|
6
|
+
* 1. Fetch submission detail + paper config from the gateway.
|
|
7
|
+
* 2. Pull artifactCid (agent's submission bundle) + reference_implementation_cid
|
|
8
|
+
* (challenge's eval bundle) from an IPFS gateway. Both are expected to be
|
|
9
|
+
* tar.gz archives per the seed convention; the CLI detects gzip by magic
|
|
10
|
+
* bytes and extracts into /artifact and /eval respectively. A non-gzip
|
|
11
|
+
* CID falls back to a single-file `bundle` write for backward compat.
|
|
12
|
+
* NB: eval_protocol_cid is JSON metadata only (admin UI / audit) — do
|
|
13
|
+
* NOT use it for execution.
|
|
14
|
+
* 3. Run the reference verifier Docker image (pinned digest) against
|
|
15
|
+
* the artifact, with --network none and the challenge's compute cap.
|
|
16
|
+
* 4. Capture stdout, compute keccak256(stdout), pin stdout to IPFS.
|
|
17
|
+
* 5. Prompt verifier for 4D scores + comprehension answers.
|
|
18
|
+
* 6. POST the verification with sandbox_attestation attached.
|
|
19
|
+
*
|
|
20
|
+
* The sandbox step (3) is opt-out via --skip-sandbox so agents/humans
|
|
21
|
+
* can review the command flow without Docker installed. Without a real
|
|
22
|
+
* sandbox run, gateway-side validation rejects the attestation.
|
|
23
|
+
*
|
|
24
|
+
* @module commands/verifyReproduction
|
|
25
|
+
*/
|
|
26
|
+
import type { Command } from "commander";
|
|
27
|
+
export declare function pendingVerificationDir(): string;
|
|
28
|
+
export declare function pendingVerificationPath(submissionId: string): string;
|
|
29
|
+
export interface PendingVerification {
|
|
30
|
+
submissionId: string;
|
|
31
|
+
challengeId: string;
|
|
32
|
+
attestation: SandboxAttestation;
|
|
33
|
+
answers: {
|
|
34
|
+
correctnessScore: number;
|
|
35
|
+
reasoningScore: number;
|
|
36
|
+
efficiencyScore: number;
|
|
37
|
+
noveltyScore: number;
|
|
38
|
+
knowledgeInsight: string;
|
|
39
|
+
};
|
|
40
|
+
savedAt: string;
|
|
41
|
+
}
|
|
42
|
+
export declare function savePendingVerification(p: PendingVerification): Promise<void>;
|
|
43
|
+
export declare function loadPendingVerification(submissionId: string): Promise<PendingVerification | null>;
|
|
44
|
+
export declare function clearPendingVerification(submissionId: string): Promise<void>;
|
|
45
|
+
export declare function describeVerificationError(raw: string): string[];
|
|
46
|
+
export declare function expectedEvalSha256ForCid(cid: string): string | null;
|
|
47
|
+
export type EvalBundleVerdict = {
|
|
48
|
+
ok: true;
|
|
49
|
+
warn?: string;
|
|
50
|
+
actualSha256: string;
|
|
51
|
+
} | {
|
|
52
|
+
ok: false;
|
|
53
|
+
error: string;
|
|
54
|
+
};
|
|
55
|
+
export declare const SANDBOX_STDOUT_ALLOWED_PREFIXES: readonly RegExp[];
|
|
56
|
+
/**
|
|
57
|
+
* Drop every line from the sandbox's combined stdout+stderr stream that
|
|
58
|
+
* doesn't match a reference-image output shape. Preserves ordering and
|
|
59
|
+
* line-end conventions (normalised to `\n`) so the keccak hash stays
|
|
60
|
+
* reproducible across honest runs of the same artifact.
|
|
61
|
+
*
|
|
62
|
+
* Lines are tested against `SANDBOX_STDOUT_ALLOWED_PREFIXES`; mismatches are
|
|
63
|
+
* discarded. Trailing blank lines are trimmed — matches `.join("\n") + "\n"`
|
|
64
|
+
* style so the final byte is always `\n` for a non-empty filtered log.
|
|
65
|
+
*
|
|
66
|
+
* Exported for unit testing; production callers go through
|
|
67
|
+
* `runSandboxAndBuildAttestation` which applies the filter once before both
|
|
68
|
+
* the keccak + the pin.
|
|
69
|
+
*/
|
|
70
|
+
export declare function filterSandboxStdout(raw: string): string;
|
|
71
|
+
export declare function verifyEvalBundleContent(buf: Uint8Array, cid: string): EvalBundleVerdict;
|
|
72
|
+
export declare function fetchTrustedVerifierImageDigests(gatewayUrl: string, apiKey: string): Promise<{
|
|
73
|
+
digests: string[];
|
|
74
|
+
configured: boolean;
|
|
75
|
+
} | null>;
|
|
76
|
+
interface SandboxAttestation {
|
|
77
|
+
metricName: string;
|
|
78
|
+
metricValue: number;
|
|
79
|
+
logsHashHex: string;
|
|
80
|
+
stdoutCid: string;
|
|
81
|
+
imageDigest: string;
|
|
82
|
+
wallTimeS: number;
|
|
83
|
+
exitCode: number;
|
|
84
|
+
evalBundleSha256: string;
|
|
85
|
+
}
|
|
86
|
+
export declare function registerVerifyReproductionCommand(program: Command): void;
|
|
87
|
+
export interface SandboxPreflight {
|
|
88
|
+
rosettaAvailable: boolean | null;
|
|
89
|
+
}
|
|
90
|
+
export declare function preflightSandboxEnvironment(): SandboxPreflight;
|
|
91
|
+
export declare function assertNoSymlinkEscapes(destDir: string, kind: "eval" | "artifact", cid: string): Promise<void>;
|
|
92
|
+
export declare function assertEntrypointPresent(destDir: string, entrypoint: string, kind: "eval" | "artifact", cid: string): Promise<void>;
|
|
93
|
+
export {};
|