Skip to content

Add an editor extension for judging the record - #694

Merged
felipesauer merged 7 commits into
main-v1from
an-editor-extension-for-the-record
Oct 4, 2026
Merged

felipesauer merged 7 commits into
main-v1from
an-editor-extension-for-the-record

Conversation

@felipesauer

Copy link
Copy Markdown
Owner

Adds @mnema/vscode, a VS Code extension for the person who reviews the record. It is private and not published; every read and write goes through the mnema command line.

  • A lens on the first line of each file a rule in force addresses (governs, asks-for-a-person, refuses-a-write), from mnema rules <path> --json; clicking it lists the rules and who accepted each.
  • A panel in the Explorer of the decisions awaiting judgment (mnema search --state proposed --json, with the justification and alternatives from mnema show). Accept and reject run mnema decision move accept|reject <id> --note <note> through execFile with an argument array; the input box refuses an empty note.
  • A notice when a decision is proposed while the window is open, driven by the editor's file watcher on .mnema/** with a 1.5 s quiet period (no polling timer).
  • A status bar item with the level mnema verify --json reports and how many channels mnema switch lists as off.

The parsing of the command line's output is separate from the editor API (rules.ts, proposed.ts, status.ts, cli.ts); extension.ts takes the vscode module as an argument, and the tests run it against a stand-in, with no editor download. @mnema/sdk is not in the trunk, so the command line is the interface.

The package joins the workspace guards: version, licence and NOTICE, descriptions, homepage, honest-guarantee heading, page-command and test-census guards. Mutations checked: shell: true in the runner, a note validator that accepts empty, a rule filter that keeps every state, and announcing on the first reading each turned a new test red.

Not done here: a .vsix is not built or installed by the suite or CI (the README gives the local steps), and the extension has not been run in a real editor.

…ver a file, decisions awaiting judgment, verify and channels in the status bar
…n-for-the-record

# Conflicts:
#	CHANGELOG.md
#	README.md
#	packages/code/tests/every-file-has-a-test-that-names-it.test.ts
#	packages/code/tests/every-readme-says-what-it-does-not.test.ts
#	packages/code/tests/support/published-examples.ts
#	packages/code/tests/the-channel-says-what-it-carries.test.ts
#	packages/code/tests/the-command-handed-over-runs-as-handed.test.ts
#	packages/code/tests/the-sentence-reaches-every-door.test.ts
#	packages/code/tests/the-version-is-one-number.test.ts
#	packages/code/tests/what-a-package-publishes-is-what-its-page-promises.test.ts
#	pnpm-lock.yaml
#	tsconfig.json
@felipesauer
felipesauer merged commit af78211 into main-v1 Oct 4, 2026
6 checks passed
@felipesauer
felipesauer deleted the an-editor-extension-for-the-record branch October 4, 2026 13:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant