@primitivedotdev/map 0.2.0 → 0.2.1
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/map.mjs +1 -1
- package/package.json +2 -3
package/dist/map.mjs
CHANGED
|
@@ -3500,7 +3500,7 @@ async function createRepoByEmail(mail, o) {
|
|
|
3500
3500
|
var SKILL_default = '---\nname: map\ndescription: Work on a map repo, a code host where each repo is an email address like owner-repo@map.dev, with plain files and email. Use when a task names a map.dev repo address, or when mail with a "[map ...]" subject arrives (verdicts, consent asks, objections).\n---\n\n# map\n\nA map repo is an email address, `owner-repo@map.dev`, and everything about it\nis email: you get the code as a mail attachment, send changes as a patch by\nmail, and the verdicts, reviews and history are mail too. The `map` command\ndoes that mail for you. There is no git remote.\n\n## Setup (once)\n\n```sh\nnpx -y @primitivedotdev/map init --yes # mail login check, PATH, your address, this skill\n```\n\n`map whoami` prints the address you send from. In a session where Primitive\ngave you an address, that is it: map uses `$PRIMITIVE_AGENT_ADDRESS`, so\nseveral agents on one machine each send as themselves with nothing to set.\n\n## The flow\n\n```sh\nmap get owner-repo@map.dev work && cd work # the code at the tip, in a folder\n# edit the files\nmap diff # what you would send (no network)\nmap send "Add retries to the fetcher" # mails the change, waits for the verdict\n```\n\n`map send` waits about 90 s. If map has not decided by then it prints\n`map: PENDING p-1a2b3c4d: ...`: nothing is wrong. Run `map wait p-1a2b3c4d`\nuntil it returns a verdict (each call waits about 90 s and finds a verdict\nthat arrived in between). Never send the same change again while it is\npending. If your harness wakes you on new mail you may stop after sending and\nrun `map wait <pid>` or `map inbox` when woken.\n\nExit codes of send and wait: 0 landed or still pending (read the PENDING line), 1 not landed (objected, conflict, rejected). Scripts can pass --strict to get 75 for pending.\n\n## The verdict\n\n- **LANDED** `as c4-...`: run `map update`. The folder then matches the tip\n and nothing is left to send.\n- **CONFLICT**: a change that landed first touches the same lines. Run\n `map update`: it merges the tip into your folder and marks each overlap\n with `<<<<<<<`, `=======`, `>>>>>>>`. Fix those files, then `map send` again.\n- **OBJECTED**: the reviewer or a line owner said no; the output says who,\n why, and the round (of 3).\n - Argue with `map argue <pid> "<why>"` when the objection misreads the\n change or is wrong; say exactly why. Then `map wait <pid>`.\n - Revise (edit, `map send` again) when the objection is right or cheap to\n satisfy. After round 3 only a revision or a repo owner helps.\n- **REJECTED**: map could not use the patch; fix what it names and send again.\n- **VETOED**, **CHECK FAILED**, **ESCALATED**: follow the message.\n\nBefore starting new work on an old folder, run `map update`.\n\n## When map asks you\n\n`map inbox` lists map mail that needs you (marked `*`) with the command to\nanswer it.\n\n- Someone changed lines you wrote (a consent ask): read it first with\n `map show <pid>`, which prints the part touching your lines and then the\n whole change. Then `map approve <pid>` to let it land, or\n `map object <pid> "<reason>"` to stop it. Silence lets it land.\n- An objection to your change: argue or revise, as above.\n- Repo owners: `map approve <pid>` lands over objections; `map veto <pid> "<reason>"` closes it.\n\n## History is the mailbox\n\n```sh\nmap log # the repo\'s commits\nmap history src/fetch.py # commits, verdicts, objections and arguments about a path\nmap history "retry" # ... or about some words\nmap status # the tip and open changes\n```\n\nEach prints the mail search it ran, for example\n\n```sh\nprimitive emails search --q \'"src/fetch.py"\' --from owner-repo@map.dev --to you@example.com\n```\n\nwhich you can run yourself and refine (`--subject`, `--body`, `--thread-id`).\nSearch sees mail you received; the repo\'s own commit mail is visible only to\nthe account that hosts the repo, so `map log` asks the repo by mail when your\nmailbox has none.\n';
|
|
3501
3501
|
|
|
3502
3502
|
// src/main.ts
|
|
3503
|
-
var VERSION = "0.2.
|
|
3503
|
+
var VERSION = "0.2.1";
|
|
3504
3504
|
var HELP = `map: work on a map repo (a repo is an email address) with files and mail.
|
|
3505
3505
|
|
|
3506
3506
|
New here? Run: npx -y @primitivedotdev/map init
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@primitivedotdev/map",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.1",
|
|
4
4
|
"description": "Work on a map repo (a repo is an email address) with files and mail: map get, map send, map update.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -9,8 +9,7 @@
|
|
|
9
9
|
},
|
|
10
10
|
"bin": {
|
|
11
11
|
"map": "dist/map.mjs",
|
|
12
|
-
"map-conformance": "dist/map.mjs"
|
|
13
|
-
"gud": "dist/map.mjs"
|
|
12
|
+
"map-conformance": "dist/map.mjs"
|
|
14
13
|
},
|
|
15
14
|
"files": [
|
|
16
15
|
"dist/map.mjs",
|