diff --git a/scripts/test-listing-roundtrip.mjs b/scripts/test-listing-roundtrip.mjs index 35f6108..46d927a 100644 --- a/scripts/test-listing-roundtrip.mjs +++ b/scripts/test-listing-roundtrip.mjs @@ -28,7 +28,7 @@ import { signMessageBip137, addressFromPrivateKey } from '../service/lib/sign-me const BASE = process.env.BASE || 'http://127.0.0.1:3700'; const PUBLISHER = process.env.PUBLISHER || 'testpub.x'; const SLUG = process.env.SLUG || `hello-world-${Date.now()}`; -const CATEGORY = process.env.CATEGORY || 'utilities'; +const CATEGORY = process.env.CATEGORY || 'productivity'; // A hard-coded deterministic test key — this is NEVER a real wallet key, just // a predictable 32-byte scalar so the roundtrip script can print the matching diff --git a/service/pages.js b/service/pages.js index a24a55c..2fa736c 100644 --- a/service/pages.js +++ b/service/pages.js @@ -307,97 +307,401 @@ export function submit() { return { title: 'Submit an app', description: - 'Upload an app to Prometheus. We scan it, generate the manifest and the APS1 record, you sign with your BNS key and the listing goes on chain.', + 'Upload an app to Prometheus. We scan it, generate the manifest, you sign with your BNS key and the listing goes live.', here: '/submit', body: `

Submit an app

-

Upload, scan, sign, publish. Four screens; your key stays with you.

+

Upload → fill manifest → sign with your wallet → publish. + Your key stays with you.

+
-
Milestone 1 of 4: upload + scan. This step is - live and testable. The next milestone wires the manifest and APS1 record - (see the publishers' walkthrough); payment and the - on-chain publish come after that.
- -
    -
  1. 1. Upload the binary. - Pick a file (any file — we don't care what the format is, only - what ClamAV says about the bytes). The server scans it, hashes it, - and hands back a signed scan report.
  2. -
  3. 2. Fill the manifest. - Name, description, category, version, icon URL. Scan verdict is - attached automatically. Not wired yet.
  4. -
  5. 3. Sign with your BNS key. - The service shows the APS1 payload. Sign in Theseus, paste a - BIP-137 signature from any BCH wallet, or import your name's mnemonic - once in the page (wiped on close). Not wired yet.
  6. -
  7. 4. Pay the listing fee (eventually). - Free during the opening wave; a BCH invoice for the per-listing - fee once storage costs cross a threshold. Not wired yet.
  8. +
      +
    1. Upload the binary (any size up to 2 GiB)
    2. +
    3. Describe name, publisher name, category, description
    4. +
    5. Sign with the BCH key for your publisher BNS name
    6. +
    7. Publish POST to the directory
-
-

Upload a file to try it

-

Pick any file to send through the scanner. The upload is - accepted, SHA-256'd, and either kept (clean) or discarded (infected or - error). Nothing is published; this is just the scan step.

+ +
+

1 · Upload the binary

+

The server scans with ClamAV + VirusTotal (where configured), + computes the SHA-256, and attaches a signed scan report to your listing. + Only clean uploads can proceed.

-
+ -
+
- + +
+ + + + + + + + +