Repository navigation
Releases: jevlinai/jevlin-go
Release list
v0.4.3
What changed, in plain language: https://github.com/jevlinai/jevlin-go/blob/v0.4.3/CHANGELOG.md
Changelog
- a0ff6ca Merge pull request #125 from jevlinai/release/0.4.3
- b9b33a1 release: v0.4.3
- 2fbbc45 Merge pull request #124 from jevlinai/feat/skill-teaches-query-forms
- 05bf365 skill: teach the query forms, now that the live router takes them
- 27be7c0 Merge pull request #119 from jevlinai/docs/fast-tier-trio
- 7d8ae39 Skill: wrap the Tiers paragraph, and describe fast once
- b438fcd Merge main into docs/fast-tier-trio
- 24e5f01 Merge pull request #123 from jevlinai/feat/router-merge-forms
- a58275f README: the core set is seven indexes; serpapi and the research arms by name
- 8e8ca41 Skill: balanced is for sources beyond the three fast indexes
- 21dc90c docs, skill: each extra wording of search_queries costs about as much as another search
- 44e4c6d search test: a 400 that is not malformed_json is not retried, with the forms or without
- a4a053d skill test: the query-forms gate ships off
- 2b12e3a search test: a merged page whose position cannot be found carries none
- 1566f37 docs: one merge, the query forms, and the retry they license
- 987916a skill: teach the query forms behind a release gate until the router takes them
- ead6f41 search --stdin: objective and search_queries, retried away once by a router that refuses them
- cc56309 search --stdin: result.merged is the router's merged view
- dccccc2 Merge pull request #120 from jevlinai/fix/host-files-atomic
- c81b012 AGENTS.md: a relative link is read from the real directory it sits in
- f23d077 fsx test: under CI, a read-only check that cannot run fails rather than skips
- 4a99fcf agents test: expect the kept skill as the run spells it, on Windows too
- 966dda5 fsx: on Windows, wait out a brief hold before refusing a replacement
- d53cf46 fsx: follow a relative link from the directory it really sits in
- b945ad2 docs: how a host file is written, and what uninstall -binary keeps
- e89e274 fsx test: ReplaceFile refuses a FIFO before it opens anything
- 3ceca50 agents, uninstall: a failed write stops what assumes it succeeded
- 99ef30c fsx: ReplaceFile leaves a file it could not have written in place
- 7933887 agents: replace a host file whole, through a link, keeping its mode
- 554c7f8 Docs: the three bands as work per query, their prices, and the named-set rule
- 734b9f9 Docs: the fast band is three fast indexes, not one provider
- 2bda3ba Merge pull request #118 from jevlinai/feat/pi-turn-end
- 2b7bc27 docs: Pi turns, the settled-run report, and what it needs
- 2c282b7 pi: test that the system prompt is never read and a turn outlives an unreadable branch
- 28173f0 pi: test that an installation that did not opt in sends no turn end
- 31d56d6 pi: report the turn when the run settles
- dca15ef pi: give each search its turn, by the user entry Pi persisted
- 072be87 testdata: Pi 1.3.0's session file and the events an extension is handed
v0.4.2
What changed, in plain language: https://github.com/jevlinai/jevlin-go/blob/v0.4.2/CHANGELOG.md
Changelog
- ddc62ed Merge pull request #117 from jevlinai/release/0.4.2
- 6d24526 release: v0.4.2
- 4f1336d Merge pull request #116 from jevlinai/fix/trace-panic-fails-open
- db48570 Merge origin/main into fix/trace-panic-fails-open
- b15099e Merge pull request #115 from jevlinai/fix/trace-scrubber-gaps
- 37b8e1c docs: a panic while preparing the trace fails open
- d71f2a6 search, hook: a panic while preparing the trace costs the trace, not the search
- 8876286 docs: the Authorization credential and the open-quote stop in the trace scrub
- bc4816c trace scrubber: an Authorization credential, and a quote that ran into a later secret
- 3a48a87 Merge pull request #114 from jevlinai/fix/npm-installer-signature
- 748db47 docs: the npm installer checks the release signature
- 5e74ffc release: run the npm installer against the release before npm publishes it
- 44dee88 npm installer: trust checksums.txt only under the release signature
v0.4.1
What changed, in plain language: https://github.com/jevlinai/jevlin-go/blob/v0.4.1/CHANGELOG.md
Changelog
- 754c242 Merge pull request #112 from jevlinai/release/0.4.1
- 68ff603 release: v0.4.1
- f907a84 Merge pull request #111 from jevlinai/feat/update-apply-by-default
- 2431d50 docs: apply is the default [update] mode
- a5289ed update check: apply is the default mode
- d9fbda8 Merge pull request #69 from jevlinai/devin/1791361186-signed-release-checksums
- 9630232 docs: the GitHub Release job waits for a release-signing approval
- 79e58f7 releasecheck preflight: refuse a tag that compiles in no release key
- 1269f87 selfupdate: compile in the release signing key
- e7e57ba update check: describe notify as the default, not the default until signing
- e588377 Merge remote-tracking branch 'origin/main' into devin/1791361186-signed-release-checksums
- 08b1236 selfupdate live test: the unsigned release it checks is v0.3.2
- 38b3cd1 docs: an upgrade checks the release signature; the changelog says when that starts
- d304696 upgrade -auto: verify with the same verifier as upgrade
- a8b2de9 Merge remote-tracking branch 'origin/main' into devin/1791361186-signed-release-checksums
- 53b4901 selfupdate: trust checksums.txt only under a release signature
v0.4.0
What changed, in plain language: https://github.com/jevlinai/jevlin-go/blob/v0.4.0/CHANGELOG.md
Changelog
- cf4aa9f Merge pull request #109 from jevlinai/release/0.4.0
- 51dfde8 Merge remote-tracking branch 'origin/main' into release/0.4.0
- b4e0567 Merge pull request #110 from jevlinai/docs/upgrade-auto-in-help
- b9f279c help: name upgrade's internal -auto and -config at the top level
- 064f1c0 release: v0.4.0
- 419b897 Merge pull request #108 from jevlinai/fix/scrubber-dashed-account
- df89775 Merge remote-tracking branch 'origin/main' into fix/scrubber-dashed-account
- e7a611a docs: re-wrap the account paragraph in the trace's names
- 9da80d3 trace cases: the dotted row no longer asserts the account survives
- 9d1aa9d Merge pull request #106 from jevlinai/fix/88-conflicted-records-wait
- a285fec Merge remote-tracking branch 'origin/main' into fix/88-conflicted-records-wait
- 3b019df Merge pull request #105 from jevlinai/fix/70-delegated-turns
- bedd2bb Merge remote-tracking branch 'origin/main' into fix/88-conflicted-records-wait
- b08849c Merge remote-tracking branch 'origin/main' into fix/70-delegated-turns
- e707f8d Merge pull request #104 from jevlinai/fix/80-codex-linux-delivery-waits
- 0361b58 tests: an intake that is a file is unreadable only off Windows
- 5c94663 docs: re-wrap the Codex delivery paragraph
- 1e61acf tests: status keeps an unread intake's error, and an untimed record's place
- c75adfc agents: name conflict_flush_test.go beside region_flush_test.go
- c9ef134 tests: count what the AS sees of a held record, not posts it never gets
- 59b786a flush: held records are no failed progress, and their fault clears
- 9f2c979 docs: the turn end's late report, as it now behaves
- 8e35f59 turn end: read an earlier turn out of the transcript only to report it
- 670162a turn end: report late only a turn a subagent's search marked
- a23e842 tests: a flush with no target holds back what it cannot deliver
- 23df44b turn end: only a Claude Code subagent's search marks anything
- dc61580 flush: a conflict entry goes only with all of its epoch's records
- 46d745d turn end test: the takes refuse an id that is not a hash
- b108b43 turn end: name a mark only after an id of traceHash's shape
- 6640db9 turn end: write the ended mark before the turn's mark is removed
- 57ed8a5 status: count what waits whatever the registration; an unread count is unknown
- a1d4cff Merge remote-tracking branch 'origin/main' into fix/70-delegated-turns
- 6bb4be7 Merge remote-tracking branch 'origin/main' into fix/80-codex-linux-delivery-waits
- 5943510 Merge remote-tracking branch 'origin/main' into fix/88-conflicted-records-wait
- bc83959 agents goldens: the opencode and Pi plans carry the dashed account rule
- 1011050 trace scrubber: remove the account from a Claude Code project folder's dashed name
- 902ee9e Merge pull request #100 from jevlinai/auto-update-check
- f374864 turn end test: a main agent's earlier mark stays put under a Stop that reads the transcript
- 72beb53 turn end: a Codex subagent's search leaves no mark
- 03622e3 turn end: report a turn a background subagent searched in, late and once
- 3d199f7 tests: the two read-only-directory tests need POSIX modes
- 62982bc update check: the default mode is notify
- 0a8b008 tests: Pi's session start runs
hook start; a doc comment back in place - cca7b8f docs: the release check as it now behaves
- 5640030 upgrade: a person's record goes to the check after its own locks
- 016c63d update check: no check from a hook inside a sandbox; test the real entry
- d1cd523 update check: a check that cannot write its stamp makes no request
- 61a30c3 update check: what waits for a person, and what the check may do alone
- 7f9f438 update check: keep the stamp and its lock beside the credential
- addbd5e Merge remote-tracking branch 'origin/main' into fix/pr100-review
- f51fdf5 opencode: a turn report that fails does not cost the session start
- cb707ef opencode: start the session start at load and at a top-level session's idle
- 8c8df72 upgrade -auto: bind the stamp to its copy, hold one check lock, share the gate
- 0b34d1a hook: opencode and Pi start the flush and the release check at a session's start
- d96c0d2 upgrade: a daily release check the hooks start, applied to a native copy
- 2bfbb8a docs: on Linux, approving Codex's hooks is what delivers Codex searches
- fed9db8 codex: say when a Linux participant's Codex searches cannot be delivered
- f0b9f9e changelog: a second installation's conflicted epoch shows no delivery fault
- 7b4474e flush: hold back a conflicted epoch's records as a region-refused one's are
v0.3.2
What changed, in plain language: https://github.com/jevlinai/jevlin-go/blob/v0.3.2/CHANGELOG.md
Changelog
- bbc5514 Merge pull request #103 from jevlinai/release/0.3.2
- fdb224c release: v0.3.2
- c84e7ee Merge pull request #102 from jevlinai/fix/npm-scoped-launcher
- bfdc23b changelog: setup works from a global npm install; the router's name
- b1b33af skill, setup: name the Jevlin search router
- d607ad7 npm: a global install of the scoped package launches as global
- a656cd6 Merge pull request #91 from shivampwm2020/fix/82-render-covers-every-invisible-format-rune
- b355077 Merge branch 'main' into fix/82-render-covers-every-invisible-format-rune
- 7cafbeb test(render): assert exact replacement output for refused runes
- 5cf02b9 fix(render): replace every hidden format rune, not a hand-listed subset
v0.3.1
What changed, in plain language: https://github.com/jevlinai/jevlin-go/blob/v0.3.1/CHANGELOG.md
Changelog
- 7b1d487 Merge pull request #99 from jevlinai/release/0.3.1
- 28bce7e release: v0.3.1
- 94bb23d Merge pull request #98 from jevlinai/docs/readme-accuracy
- 44c2829 Merge remote-tracking branch 'origin/main' into docs/readme-accuracy
- 7888a59 Merge pull request #97 from jevlinai/fix/testnet-hosts
- 7826382 Merge remote-tracking branch 'origin/main' into fix/testnet-hosts
- 8ae2954 Merge pull request #96 from jevlinai/ci/release-tooling-fixes
- 3ef7c55 changelog: an installation from v0.1.0 or earlier has to register again
- 503c373 PR template: name twilight.org among the hosts a test never contacts
- 8df95cf docs test: check the README's absolute links into the repository again
- 5e1261f docs: correct what the README says the client does
- f72ee5a changelog: the rewards service moved; the one line an existing installation changes
- 55caf99 config: the wallet's default chain node is rpc-testnet.twilight.org
- ca405ea config: new installations use the AS at rewards-testnet.jevlin.ai
- 76389be docs: RELEASING names immutable releases, the staged first publish and SHA pinning
- dc6e7c8 release: pin the goreleaser the action runs, not only the action
- 1b4d699 release: list this package's versions when the registry never shows the new one
- 4fa258a Merge pull request #95 from jevlinai/docs/readme-positioning
- 893cbdb README: absolute links so one text serves the repo and npmjs.com; npm copy regenerated as root plus the wrapper suffix
- fc57ddf README: the human search form puts the query on the command line; only --stdin keeps it out
- d54bb21 README: every shell command beside the slash commands, in one section
- 21730c2 README: the skill and its slash commands in one place
- d10c4dd README: the three tiers as a section of their own, with who chooses
- c67a8f3 README: search is free; name the twelve core arms and the named-only ones
- c6b3804 README: badges under the wordmark (npm, release, ci, license, PRs welcome, sites)
- bdc2a46 README: centre the wordmark
- 7cdc0e1 npm README: load the wordmark by commit, so it renders on the branch, on main and on npmjs.com
- 734aba4 README: the Jevlin wordmark at the top
- a8b533b README: lead with multi-provider fan-out search and trajectory observability; mining on the Twilight testnet last
v0.3.0
What changed, in plain language: https://github.com/jevlinai/jevlin-go/blob/v0.3.0/CHANGELOG.md
Changelog
- 8b7555c Merge pull request #94 from jevlinai/release/0.3.0
- 589153c Merge branch 'main' into release/0.3.0
- 63dd126 Merge pull request #93 from jevlinai/ci/npm-trusted-publishing
- 1ca5e4d release: v0.3.0
- cc15e2e release: publish to npm through trusted publishing, no stored token
- b7c395d Merge pull request #92 from jevlinai/fix/turn-end-harness-text
- a2ef552 docs: say plainly who started the turn in the turn-end changelog bullet
- 9c4eac7 docs: name every turn start Claude Code writes that the turn end withholds
- d2a4ab3 turn end: send a turn's start only when the participant wrote it
- 2c7f35c Merge main into fix/turn-end-harness-text after #90
- 7bff204 Merge pull request #90 from jevlinai/fix/hook-ownership-per-handler
- 73b9cf5 test: look up the Codex hook file by the fake machine's own key
- fa2d034 test: skip the shared-group test's Codex half where Codex gets no hooks
- 5455823 test: status counts jevlin's hooks in groups it shares as installed
- eca4636 docs: user_text is absent for a turn the agent started itself
- 8bb9a43 turn end: a user record the harness wrote is not the user's message
- f860c9d docs: a hook of yours in jevlin's group stays, on uninstall and on upgrade
- 9ba77bf agents: own a hook per handler, so a participant's handler in our group is kept
v0.2.0
What changed, in plain language: https://github.com/jevlinai/jevlin-go/blob/v0.2.0/CHANGELOG.md
Changelog
- e636452 Merge pull request #89 from jevlinai/release/0.2.0
- f580866 release: v0.2.0
- 2ef0552 Merge pull request #86 from jevlinai/feat/search-tier-setting
- 5f01d6c Merge main into feat/search-tier-setting after #87
- e538bae Merge pull request #87 from jevlinai/chore/jevlin-ai-endpoints
- 43e0c24 Merge main into feat/search-tier-setting after #85
- 47e11da Merge main into chore/jevlin-ai-endpoints after #85
- 1269367 Merge pull request #85 from jevlinai/feat/region-refusal-copy
- 956dc9c skill: /jevlin tier status is a command, and comments name agents tier
- 009c56e config: a [miner] tier this client cannot use is ignored and named, not fatal
- d5f1baa agents tier: read the file as search does, and treat a link as a name
- 4cce782 cursor: auto-allow only
agents tier status; setting a band asks - 4481399 region: status repeats the most recently recorded refusal, not the highest epoch
- b9891ce doctor: explain the region refusal of the epoch doctor is looking at
- 7fb24a4 AGENTS.md: the region line says what upstream decided and what 60aa407 built
- c096e0b region: REGION_RESTRICTED's sentence no longer says "sanctioned"
- f500c92 config: the legacy pair's comment says setup does not move an installation
- 4b7246b config: the agents API comment says where its observation was made
- 69e6750 changelog: re-running setup does not move an existing installation
- ae8bb18 platform: an installation configured for platform.nyks.dev accepts links on platform.jevlin.ai
- 7334e7f agents tier: remove the setting by name, never a tree; find the file by suffix in the test
- d9948b5 config: a portal-only config from before jevlin.ai still implies its agents API
- 60aa407 region: one note per epoch, drop only on the AS's word, defer a held submission, status for manual enrollments
- a261077 agents tier: one path for the command and the search, effective band in status, default always removes
- 64382d6 config: the platform moved to jevlin.ai — api, platform and agents-v1 hosts
- 1cc87f3 agents: a participant-level search tier, and /jevlin tier in every skill host
- 585dd0c docs: what a region refusal looks like to a participant, and where its rules live
- 64a737a auth: say a submission's 451 is retried, and hold Submit to it
- d1c6c49 doctor: offer a hold's join only while the epoch is still joinable
- 7dfb803 join: every enrollment clears its epoch's region note, and jevlin join keeps it
- 37ac6b0 flush: drop a region-refused epoch's records once the AS's target moves past it
- 4789ef0 flush: a region-refused epoch asks for no capability and its records wait
- 6cf9dfe auth: the hold's sentence says the next attempt, not the next epoch
- cef3a97 driver: retry a region refusal and explain it once per verdict, not per process
- 45ee959 mining: explain the AS's region refusals instead of treating them as auth faults
v0.1.0
What changed, in plain language: https://github.com/jevlinai/jevlin-go/blob/v0.1.0/CHANGELOG.md
Changelog
- 48ae4df Merge pull request #84 from jevlinai/release/0.1.0
- feda014 release: v0.1.0 as @jevlinsearch/jevlin
- dbf930e Merge pull request #76 from jevlinai/fix/codex-network-profile
- 978d7c0 changelog: the Windows Codex block has not been live-smoked
- a682d13 setup: the agents paragraph says what Codex gets on this OS
- b02fd94 test: pin the profile's form where a test is about it, and run both forms
- 05f41c7 test: expected Codex config paths in this OS's spelling
- 77bb46e test: a marked line whose profile is still defined is not called unloadable
- e641381 agents: a marked line left without its block is named, and its repair
- ed1000b agents: status's "remove the block by hand" names the line to put back
- 3c36b95 agents: uninstall keeps Codex's tables where our block was
- ae82124 agents: appendTables writes the file's own line ending
- 0209d68 uninstall: a target's refusal is reported and counted once
- 9895c27 agents: the last line says when a run refused something
- ac459f7 agents: uninstall refuses a mark whose was: sets another key
- 6a48a89 agents: a marked line left with no block is refused in its own words
- 54cf8ee agents: subtractDoc's comment back above subtractDoc
- 2a75f3f agents: "remove the block by hand" also names the line to put back
- 15131ee agents: another installation's unreadable block is named, not refused
- 25c3baf agents: a moved state_dir leaves the Codex block this installation's
- 0e97dca test: annotate the router test's read and write of its own config
- 0a96632 agents: every deny pattern Codex applies is read as one
- 1be0d4e test: an uninstall that leaves an unreadable block exits 1
- 62ab6d6 test: an uninstall that cannot put a marked line back exits non-zero
- 3807235 agents: say why the "*" deny check stays
- 8beebf1 agents: uninstall's plan names the value it puts back
- 0c23fc3 test: guard insertAtEnd's CRLF and a damaged block's by-hand text
- 260d2aa test: the question names the value before our first change
- 323dc74 agents: a mark's was: must set the key it is read for
- 7aa0261 agents: the by-hand text puts a line back from our block as changed
- fc0c2e4 agents: a wildcard deny in the chain closes our exact allow, and is named
- c8468eb agents: an uninstall that leaves our Codex block does not exit 0
- 21ef373 agents: uninstall keeps an empty table the participant declares
- 395e085 agents: a lost end marker's region runs to the last of our tables
- 8eb3645 agents: a lost end marker at the end of the file keeps the comment after it
- 51bf35b testdata: Codex 0.158.0 over our block, round four
- 76d2aef agents: "the extends chain", not "every profile jevlin's extends"
- 266e87b test: the line ending comes from the participant's lines, not the first line
- 98f0a7b agents: write our Codex block in the file's own line ending
- 05c80ee docs: a host in the extends chain is decided by the nearest profile naming it
- 0a5c87d agents: say what "*" means, and the key note only where it applies
- 282924c test: the fallback write keeps the byte-order mark
- a63eb0f agents: a line Codex rewrote under our mark is ours to set again
- 8a863fa agents: the by-hand text says what to do with a block already there
- ccea880 agents: resolve each host by its nearest definition in the chain
- 36983c9 agents: a lost end marker no longer takes the participant's comment
- ee45c7f agents: a typed no at Proceed? also closes our old Codex block
- 26c7cc9 agents: the old Codex block is closed under CRLF line endings too
- 0e96129 testdata: Codex 0.158.0 deleting our end marker, and rewriting a marked line
- 76e9ba5 test: a byte-order mark directly before the first table header
- 2be1094 docs: invariant 18's safety-write exception, and Codex after round two
- 552fd8a test: an unspecified or *.localhost service is never listed for Codex
- 131cba9 agents: a Codex profile ours extends that is gone is named
- 4006bb1 agents: the Codex collision refusal names the participant's table
- 1195871 agents: a line uninstall leaves for the participant loses jevlin's mark
- a55a97c agents: the by-hand text for Codex is the file install would have written
- ae132f0 agents: a run that commits nothing else still closes our old Codex block
- f84697d agents: a Codex config with a byte-order mark is read and kept
- 6b63568 agents: closing the old Codex block removes one line, and only when it is true
- 6079ce5 agents: Codex's switch names every host the merged profile allows
- f482587 agents: Codex can no longer take our begin marker, and a lost one is repaired
- b22c44f testdata: Codex 0.158.0 deleting our begin marker with its proxy table
- 8d2499c test: a proxy table without enabled is refused by name
- 3344dca test: four Codex guards the mutation mapping found missing
- 72595d5 docs: Codex's profile after review — extends, closes, one unit, 0.158+
- 1a0b0a4 agents: Codex 0.158.0 or newer is supported; older versions are not
- b7ccb57 test: gofmt pkg/auth/proxy_test.go
- 293abe2 test: guards for the proxy rule and Codex status that could not fail
- 100ee0c agents: gofmt codex_region.go
- 02733c4 agents: the Codex region goes in and out with no byte of its own
- 71acde8 agents: a dry run shows Codex's question, and no terminal to ask exits 2
- 9cbc02f agents: our own Codex network is never left open, and uninstall is one unit
- a2b1f85 agents: jevlin's Codex profile extends the participant's, never edits it
- 955a322 agents: our markers are whole lines outside TOML strings
- 126d71c agents: never list a loopback host in Codex's profile
- 36b2510 agents: write nothing into Codex's config that Codex's parser refuses
- 8625ff9 Merge main (go1.26.9 toolchain) into fix/codex-network-profile
- eac5d85 Merge pull request #75 from jevlinai/fix/go1.26.9-toolchain
- fe1f5c2 go.mod: build with go1.26.9
- c6df2ed testdata: keep the CRLF golden's CRLF bytes in the repository
- 4f74688 test: states the mutation pass found unguarded, and escape the separators
- 97a5ead test: install refuses rather than lose a key it cannot place
- 49ec70e docs: Codex's permission profile, its floor, and the AS proxy rule
- 662b5a3 comments: state the Codex rules, not the brief's labels for them
- 294bd40 agents: ask before changing a Codex setting of the participant's own
- 07108fb agents: Codex gets a permission profile, not open network
- 4d5872b testdata: what Codex 0.158.0 writes into a config holding a profile region
- c5bce4c auth: the AS clients use an environment proxy only on loopback
- d8eae49 Merge pull request #65 from jevlinai/devin/1791361089-safe-powershell-path-rendering
- afd20be Merge main into devin/1791361089-safe-powershell-path-rendering
- 1926521 Merge pull request #57 from jevlinai/devin/1791361170-windows-state-dir-dacl
- 761a5c2 Merge main into devin/1791361170-windows-state-dir-dacl
- ab3fef0 Mer...