Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
559 commits
Select commit Hold shift + click to select a range
54a83f7
chore(capabilities): index `senders prefer`
mayoalexander Aug 17, 2026
a20c647
docs(comms-router): per-sender channel preference; senders:backfill i…
mayoalexander Aug 17, 2026
bb00314
feat(mail): iris mail send --sender <slug> — send as a registered ide…
mayoalexander Aug 17, 2026
40e3558
docs(comms-router): --sender on the send path
mayoalexander Aug 17, 2026
e3ee853
docs(comms-router): senders:check-bindings, and why campaigns are the…
mayoalexander Aug 17, 2026
499dd67
feat(mail): iris mail accounts — what this Mac can actually send from
mayoalexander Aug 17, 2026
ba9af7b
docs(comms-router): Apple Mail bindings are checkable — and the old c…
mayoalexander Aug 17, 2026
940d10b
feat(bloqs): delete-list and rename-list — creating structure with no…
mayoalexander Aug 17, 2026
d88ebf4
fix(bug): show the LATEST fix commit, not the first one ever recorded
mayoalexander Aug 17, 2026
8cb046e
feat(bloqs): iris bloqs list --all, and say when the list is filtered…
mayoalexander Aug 17, 2026
4a47a21
fix(bug): refuse a corrupted bug report instead of filing it (#180713)
mayoalexander Aug 17, 2026
bc9efc9
feat(auth): iris auth whoami — which account is this credential?
mayoalexander Aug 17, 2026
a5d1ebd
chore(capabilities): reindex for iris auth whoami
mayoalexander Aug 17, 2026
b0bd1d3
fix(bug): make the title help line describe both ways of passing it (…
mayoalexander Aug 17, 2026
63e59fa
docs(how-to): the hunter certification, and the three things it is not
mayoalexander Aug 17, 2026
c39c94c
fix(pathways): pipeline/status read the wrong fields; audit leaks PHI…
mayoalexander Aug 17, 2026
e34d746
fix(cli): --json output was silently truncated past the pipe buffer (…
mayoalexander Aug 17, 2026
c539cbc
fix(bounty): the hunters board hid $57 the moment the certification g…
mayoalexander Aug 17, 2026
a53b389
docs(hive): node execution is refused over the hosted connector
mayoalexander Aug 17, 2026
9cef207
fix(mcp): accept 'iris <cmd>' — the form every model actually writes
mayoalexander Aug 17, 2026
c81c623
chore(capabilities): reindex
mayoalexander Aug 17, 2026
106645b
feat(mcp): spill oversized output to disk with an OUTLINE, instead of…
mayoalexander Aug 17, 2026
4757cf8
v1.3.177
mayoalexander Aug 17, 2026
0f5ce26
v1.3.180
mayoalexander Aug 17, 2026
aca02d8
feat(search): the multi-source fan-out now has a top-level front door…
mayoalexander Aug 17, 2026
83268ca
fix(mcp): the capability map handed to every agent was wrong in six p…
mayoalexander Aug 17, 2026
1b899ff
fix(venues): `search` searches YOUR venues, not the open web (#180716)
mayoalexander Aug 17, 2026
970d65d
fix(bounty): create no longer publishes, and shows you the money firs…
mayoalexander Aug 17, 2026
cbbc668
fix(cli): --json answered with silence on every failure (#180540)
mayoalexander Aug 17, 2026
aeae777
chore: sync bun.lock to the v1.3.180 version already in package.json
mayoalexander Aug 17, 2026
204af2e
chore(build): refuse a build that cannot finish, and stop the release…
mayoalexander Aug 17, 2026
622e923
feat(geo): place lookup as a first-class verb (#180699)
mayoalexander Aug 17, 2026
763bdc7
chore(capabilities): reindex for iris geo (#180699)
mayoalexander Aug 17, 2026
7ef9b51
feat(playbook): playbooks are the top level — items, roles and bounty…
mayoalexander Aug 17, 2026
e5ccf4a
feat(playbook): iris playbook ack — see what a bounty requires, and m…
mayoalexander Aug 17, 2026
ec905ec
feat(geo): distance + nearby, and say when the provider is degraded (…
mayoalexander Aug 17, 2026
bc61a6d
chore(capabilities): reindex for geo distance + nearby
mayoalexander Aug 17, 2026
8aa8521
chore(release): v1.3.181
mayoalexander Aug 17, 2026
6796a1c
ci(release): free disk on macOS runners before building
mayoalexander Aug 17, 2026
09b3ba6
chore(release): v1.3.182
mayoalexander Aug 17, 2026
3d1c85c
ci(release): measure the volume the build writes to, and reclaim Xcode
mayoalexander Aug 17, 2026
d29e2c7
chore(release): v1.3.183
mayoalexander Aug 17, 2026
83f29fc
fix(build): a broken disk reading was blocking every release
mayoalexander Aug 17, 2026
74b824f
chore(release): v1.3.184
mayoalexander Aug 17, 2026
d7f6f4a
fix(mcp): teach iris_run that 'bloqs list' is not an inventory
mayoalexander Aug 18, 2026
d50e847
chore(capabilities): reindex
mayoalexander Aug 18, 2026
27bbf37
v1.3.185
mayoalexander Aug 18, 2026
7ad8e74
feat(cli): list must declare what it withholds, and return identity n…
mayoalexander Aug 18, 2026
4768cd9
v1.3.186
mayoalexander Aug 18, 2026
7f82b23
fix(pages): refuse to screenshot the 404 instead of reporting success…
mayoalexander Aug 18, 2026
197cab7
fix(release): publish what built; feat(cli): finish the list contract
mayoalexander Aug 18, 2026
e75b8de
v1.3.187
mayoalexander Aug 18, 2026
c876b5d
feat(integrations): make Meta Ads reachable — connect, and the 16 rea…
mayoalexander Aug 18, 2026
f1f7fe3
fix(integrations): say WHY a probe failed — and stop reporting verifi…
mayoalexander Aug 19, 2026
b13c57e
feat(health): degraded-mode banners — tell the user a subsystem is de…
mayoalexander Aug 19, 2026
c61af46
feat(atlas): iris atlas use <ref> — pull a shared item's context into…
mayoalexander Aug 19, 2026
beafb56
feat(health): wire the bridge banner into comms — an empty inbox is n…
mayoalexander Aug 19, 2026
4cf10f6
feat(bug): --project routes a report to a client's own bug list
mayoalexander Aug 19, 2026
803c5d8
fix(content): every read/write path called a route that does not exist
mayoalexander Aug 19, 2026
f25232f
fix(cli): six dead endpoints from the #181136 census
mayoalexander Aug 19, 2026
9ef3c38
feat(ci): fail the push when the CLI calls an endpoint that does not …
mayoalexander Aug 19, 2026
f7ff7ba
fix(cli): three silent 404s that were rendered as facts about the user
mayoalexander Aug 19, 2026
cec11c9
chore(capabilities): index `bloqs use` so agents can discover it
mayoalexander Aug 19, 2026
3b75bbc
v1.3.188
mayoalexander Aug 19, 2026
9a20bc8
feat(course): iris course — create courses and chapters from the CLI
mayoalexander Aug 19, 2026
79292f0
fix(pages set): bracket indexing wrote a dead key and then confirmed …
mayoalexander Aug 19, 2026
1e67431
feat(bloqs): iris bloqs update --slug — the flag a booking page needs
mayoalexander Aug 19, 2026
a8ba0e9
fix(integrations): read BOTH integration stores — a confident negativ…
mayoalexander Aug 19, 2026
49a8c5a
feat(chat): -V / -VV trace the agent run — the stream already carried…
mayoalexander Aug 19, 2026
44d1d37
docs(how-to): debug-an-agent-run — reading a -V / -VV trace
mayoalexander Aug 19, 2026
53766be
feat(bloqs): add-member / remove-member / members — the CLI could not…
mayoalexander Aug 19, 2026
1b87c8b
feat(bloqs): show a board's related projects in `get` — the graph was…
mayoalexander Aug 19, 2026
344a2e2
ci(pre-push): refuse a push where package.json and bun.lock disagree …
mayoalexander Aug 19, 2026
9f1c86c
chore: resync bun.lock to 1.3.188 — the drift the new gate now prevents
mayoalexander Aug 19, 2026
a715af7
feat(atlas): publish an HTML artifact — the third type had no way in
mayoalexander Aug 19, 2026
8976cbd
fix(capabilities): a dirty tree excused drift that a COMMIT introduced
mayoalexander Aug 19, 2026
dfab25f
feat(sessions): iris sessions — see and steer the AI sessions on this…
mayoalexander Aug 19, 2026
df26c28
feat(agents): `iris agents bench` — an agent's benchmark history, que…
mayoalexander Aug 20, 2026
6f0614b
feat(atlas): ingest reads the file instead of storing it unread
mayoalexander Aug 20, 2026
813fe7f
feat(agents): `bench record` and `bench note` — close the loop from h…
mayoalexander Aug 20, 2026
92edd80
v1.3.189
mayoalexander Aug 20, 2026
7d4997d
docs(how-to): certification is a gate now — the hunter journey said t…
mayoalexander Aug 20, 2026
97596de
fix(capabilities): a partial workspace could silently unindex 17 real…
mayoalexander Aug 20, 2026
e003b86
feat(mcp): iris_agent + iris_memory — make IRIS agents delegable from…
mayoalexander Aug 20, 2026
ad57e40
feat(cli): land `iris mint` + `iris prod` — committed as-found, they …
mayoalexander Aug 20, 2026
8523d23
fix(mcp): iris_memory `get` leaked ANSI escapes into the tool result
mayoalexander Aug 20, 2026
1b0fdff
feat(cli): iris x — draft and publish to X as separable, chainable steps
mayoalexander Aug 20, 2026
ef6ac84
docs(mcp): `iris mcp serve --help` now names the tool surface it exposes
mayoalexander Aug 20, 2026
7552709
fix(mcp): a bare "{" literal silently unindexed `mcp serve`; refresh …
mayoalexander Aug 20, 2026
33b4017
fix(bloqs publish): 4 defects behind #181502 — silent duplicate items…
mayoalexander Aug 20, 2026
a924d93
fix(routes-check): anchor route-array parse past railway ssh log nois…
mayoalexander Aug 20, 2026
2d861e4
fix(bloqs publish): 3 more defects on the same surface — #176517, #15…
mayoalexander Aug 20, 2026
1c8a6f8
feat(cli): iris onboarding — the surface that would have advertised t…
mayoalexander Aug 20, 2026
966113b
fix(programs): one envelope seam — diff was reporting "No differences…
mayoalexander Aug 20, 2026
54f9e3f
fix(programs): --price 0 was dropped, and the bloq guard 404'd every …
mayoalexander Aug 20, 2026
a1db447
feat(mcp): iris_agent ask takes a JSON `schema` — a validated object …
mayoalexander Aug 20, 2026
408f574
feat(mcp): structural provenance — what the agent READ, not what it s…
mayoalexander Aug 20, 2026
6cfba04
fix(playbook): `run <name> key=value` kept the key as part of the value
mayoalexander Aug 20, 2026
a53d15e
feat(chat/mcp): expose thread control — --thread / --fresh, and detec…
mayoalexander Aug 21, 2026
e15cf7d
fix(mcp): two thread banners contradicted each other on a fresh turn
mayoalexander Aug 21, 2026
2037100
fix(traces): --source was declared and never forwarded
mayoalexander Aug 21, 2026
83ef278
feat(mint): scenarios — model a financial distribution, then score it…
mayoalexander Aug 21, 2026
94fe675
fix(telemetry): stamp IRIS_MCP on the MCP surface and its children (#…
mayoalexander Aug 21, 2026
e124352
fix(packages): read the value back instead of trusting the 200 (#181608)
mayoalexander Aug 21, 2026
d659c85
feat(agents): export an agent as a forkable folder (P4)
mayoalexander Aug 21, 2026
c0dd0c2
fix(pages): refuse to push a stale shadow ./pages, and name the file …
mayoalexander Aug 21, 2026
fd7c43b
feat(mint): scenario score reads actuals straight from the Mint ledger
mayoalexander Aug 21, 2026
d6483ea
feat(workflows): export a workflow as a runnable .claude/workflows/*.…
mayoalexander Aug 21, 2026
ff3cca1
docs(how-to): ship the genesis-sdk recipe instead of stranding it on …
mayoalexander Aug 21, 2026
b74db0a
v1.3.190
mayoalexander Aug 21, 2026
7133ecf
docs(scaffold): register genesis-sdk in the manifest, or the installe…
mayoalexander Aug 21, 2026
d03b3d9
chore(release): v1.3.191
mayoalexander Aug 21, 2026
bbc7be1
chore(capabilities): reindex so the release describes what it actuall…
mayoalexander Aug 21, 2026
f2f97f6
feat(venues): agent-browser replaces the Playwright Hive scraper (P5)
mayoalexander Aug 21, 2026
9db1939
chore(capabilities): reindex — mint audit/verify were committed but u…
mayoalexander Aug 21, 2026
9707b4e
docs(how-to): forkable-exports — the surface P4 shipped without
mayoalexander Aug 21, 2026
7eed308
fix(datasets): schemas update claimed "(existing records preserved)" …
mayoalexander Aug 21, 2026
1835020
feat(how-to): `iris how-to publish` — mirror the repo's recipes to he…
mayoalexander Aug 21, 2026
3bce7b3
chore(capabilities): index how-to publish
mayoalexander Aug 21, 2026
983c45b
fix(playbook): `iris loop` kept its own copy of the arg parser, and k…
mayoalexander Aug 21, 2026
9398da0
chore(capabilities): regenerate the index — the push gate caught it s…
mayoalexander Aug 21, 2026
23a4de8
feat(how-to): `backup` — a private, verified home for LOCAL recipes
mayoalexander Aug 21, 2026
05eecfa
feat(agents): `prove` — the grounding demo as a re-runnable assertion…
mayoalexander Aug 21, 2026
f98b9d0
test(mcp): pin the ARGV MAPPING — a declared input must actually reac…
mayoalexander Aug 21, 2026
c8991d3
chore(capabilities): regenerate — push gate caught it stale again
mayoalexander Aug 21, 2026
8175ede
chore(routes): refresh the snapshot — PATCH on the bloq item route no…
mayoalexander Aug 21, 2026
77545e1
test(cli): a registered option must be read by its handler — the argv…
mayoalexander Aug 21, 2026
5c94d1e
fix(how-to): summarise the paragraph, not the first physical line
mayoalexander Aug 21, 2026
0c0449e
chore(capabilities): reindex against HEAD (mint commands live only in…
mayoalexander Aug 21, 2026
007cdc6
refactor(cli): one workflow tree, and the reader is the subcommand (P0b)
mayoalexander Aug 21, 2026
7f231d5
fix(capabilities): resolve a command block by FILE, not by const name
mayoalexander Aug 21, 2026
9f0133c
fix(cli): a no-op write now EXITS NON-ZERO — 21 commands were reporti…
mayoalexander Aug 21, 2026
7f2a397
v1.3.192
mayoalexander Aug 21, 2026
911ef59
fix(pages): the shadow-copy refusal exited 0 — a refusal that reports…
mayoalexander Aug 21, 2026
3d34cb1
v1.3.193
mayoalexander Aug 21, 2026
fcb7461
SDR-06: iris pages add-table — the bridge from an Atlas dataset to a …
mayoalexander Aug 21, 2026
4f9c57d
ci(release): a PARTIAL release must never become GitHub's "latest"
mayoalexander Aug 21, 2026
1a7614f
fix(how-to): author into the repo, and make stranded recipes visible
mayoalexander Aug 21, 2026
8fec1d2
v1.3.194
mayoalexander Aug 21, 2026
dfa4164
fix(onboarding): publish no longer wipes every step (#181824)
mayoalexander Aug 21, 2026
ff3e0f5
feat(how-to): YAML front-matter taxonomy, and seed all 46 recipes (DI…
mayoalexander Aug 21, 2026
c8d9bee
fix(pages): rollback takes a positional, and push creates a missing s…
mayoalexander Aug 21, 2026
4272948
feat(cli): iris listen — record from the mic with a live level meter,…
mayoalexander Aug 21, 2026
769efd4
fix(scaffold): register the five how-to recipes ff3e0f5fc shipped but…
mayoalexander Aug 21, 2026
bb00190
feat(tui): dictate into the prompt with Ctrl+X V, with a live level m…
mayoalexander Aug 21, 2026
804e4bb
chore: resync bun.lock to package.json 1.3.194
mayoalexander Aug 21, 2026
ca8320f
feat(how-to): CLI parity — grouped list, --category/--level/--tag, ra…
mayoalexander Aug 21, 2026
96c8fdf
v1.3.195
mayoalexander Aug 21, 2026
7b6ce03
feat(timeline): iris timeline — four months of history from what was …
mayoalexander Aug 22, 2026
6911eb6
v1.3.196
mayoalexander Aug 22, 2026
a05008b
feat(timeline): CRM comms and bloq items as episode sources (TL-05)
mayoalexander Aug 22, 2026
0dc27f7
v1.3.197
mayoalexander Aug 22, 2026
3c0b5f9
feat(how-to): `iris how-to social` — a recipe becomes a carousel + an…
mayoalexander Aug 22, 2026
b8ef4ab
v1.3.198
mayoalexander Aug 22, 2026
29aeb44
feat(cli): Lexicon gets a front door, and products get a shape to share
mayoalexander Aug 22, 2026
f433421
fix(capabilities): index productCommand front doors, not just cmd blocks
mayoalexander Aug 22, 2026
c85b6b8
fix(cli): atlas, genesis and reachr resolve to themselves — 13/13 fro…
mayoalexander Aug 22, 2026
72d8203
feat(cli): every product's help states its purpose and points at its …
mayoalexander Aug 22, 2026
8a54c81
feat(mint): extract mint-core, add the audit trail and `mint verify`
mayoalexander Aug 22, 2026
75455ec
feat(cli): mint gets its front door — 13/13 products complete
mayoalexander Aug 22, 2026
c536174
fix(how-to): fall back to the published recipes when this machine has…
mayoalexander Aug 22, 2026
a3495b3
fix(how-to social): four mapper defects found by sweeping all 46 recipes
mayoalexander Aug 22, 2026
ae1ce04
v1.3.199
mayoalexander Aug 22, 2026
3603053
fix(lexicon): four subcommands could not reach the arg that FILES the…
mayoalexander Aug 22, 2026
53d3e77
fix(playbooks): AI steps use the platform proxy, not the caller's own…
mayoalexander Aug 22, 2026
cc5a27a
docs(how-to): bloq-access-control — the three ways to grant access, a…
mayoalexander Aug 22, 2026
55d46c6
fix(cli): rescue four orphaned integration verbs, and guard the name …
mayoalexander Aug 22, 2026
ce2fdf8
docs(how-to): building a page from Genesis Components
mayoalexander Aug 22, 2026
d9b732c
fix(pages): the gate was liftable all along — `set json_content.x` wr…
mayoalexander Aug 23, 2026
ac2b690
v1.3.200
mayoalexander Aug 23, 2026
7e89af5
fix(pages): refuse a push that would remove a gate the local file pre…
mayoalexander Aug 23, 2026
2016fc8
v1.3.201
mayoalexander Aug 23, 2026
118e91e
fix(pages): read/verify returned the OTP GATE's text as if it were th…
mayoalexander Aug 23, 2026
5ac096d
fix(pages): check-public asked the wrong host
mayoalexander Aug 23, 2026
60ce766
chore(cli): refresh the route snapshot from production
mayoalexander Aug 23, 2026
5f7a8d4
v1.3.202
mayoalexander Aug 23, 2026
c1f417e
fix(scaffold): register two how-tos the installer was never fetching
mayoalexander Aug 23, 2026
52ab3de
chore: sync bun.lock to package.json 1.3.202
mayoalexander Aug 23, 2026
a911216
fix(release): the desktop build has been dead for 11 releases and sai…
mayoalexander Aug 23, 2026
87c26cd
fix(pulse): a message's words live in three places, and the sweep rea…
mayoalexander Aug 23, 2026
ea8cbaf
feat(web): a front door that is ours, and works offline
mayoalexander Aug 23, 2026
b8df709
fix(pages): push must not carry the flag that decides who may read th…
mayoalexander Aug 23, 2026
d493894
chore(cli): reindex capabilities — atlas:comms attachments was undisc…
mayoalexander Aug 23, 2026
3d2fd74
feat(scripts): time-front-door.sh — the measurement nobody owned
mayoalexander Aug 23, 2026
e2fe1d0
fix(pulse): repair main — the gmail source had no type, and its tests…
mayoalexander Aug 23, 2026
a9fd2df
feat(search): iris search reaches messages and mail, and names every …
mayoalexander Aug 23, 2026
b7b9a5d
v1.3.203
mayoalexander Aug 23, 2026
ba9b5fb
docs(pages): compose does not use Gemini, and --model names the real …
mayoalexander Aug 23, 2026
e06a705
fix: publish-html --requires-auth never actually gated with OTP
mayoalexander Aug 23, 2026
e6b76c6
fix(bloq): kpis add accepted --status and threw it away
mayoalexander Aug 23, 2026
d43eef5
feat(mint): spending groups + spend policy (#181985, #181986); source…
mayoalexander Aug 23, 2026
e96a0ec
fix(leads): list reported the page size as the total, so truncation w…
mayoalexander Aug 23, 2026
2bb9e98
fix: atlas:datasets records list can't reach a same-slug schema on an…
mayoalexander Aug 23, 2026
7734da0
fix(pulse): the mail response key moved, and the collector reported "…
mayoalexander Aug 23, 2026
cdc794e
feat(leads): stats separates outreach pipeline from board pipeline, a…
mayoalexander Aug 23, 2026
cc09c9a
feat(hive): reach your own nodes over Tailscale, and stop reporting u…
mayoalexander Aug 23, 2026
5e881f5
fix(leads): --bid 0 was silently discarded, so an amount could be set…
mayoalexander Aug 23, 2026
04285e6
chore(cli): reindex capabilities — 17 committed commands were undisco…
mayoalexander Aug 23, 2026
4550015
v1.3.204
mayoalexander Aug 23, 2026
78a4637
feat(leads): capture an amount at create, not only at update
mayoalexander Aug 23, 2026
c0d8aac
feat(desktop): rebrand the opencode Tauri shell as IRIS
mayoalexander Aug 23, 2026
cb3f7dc
fix(desktop): position IRIS as an AI Business OS Copilot, not a codin…
mayoalexander Aug 23, 2026
260c870
fix(desktop): revert a self-introduced regression in the local dev si…
mayoalexander Aug 24, 2026
1110f35
ci: add a manual, one-off desktop test build workflow
mayoalexander Aug 24, 2026
66eca4b
fix(desktop): the compiled CLI binary is named iris, not opencode
mayoalexander Aug 24, 2026
4ed8b15
fix(desktop): set mainBinaryName explicitly in the prod config
mayoalexander Aug 24, 2026
39ca88d
fix(desktop): correct app icon to the real IRIS cube mark, wordmark t…
mayoalexander Aug 24, 2026
e0bdfca
fix(pulse): the panel that tells you what is wrong was wrong four ways
mayoalexander Aug 24, 2026
d4b0fd6
fix(bug list): --severity searched one page of 118 and reported "none…
mayoalexander Aug 24, 2026
d928219
ci: wire packages/desktop (Tauri) into the real release pipeline
mayoalexander Aug 24, 2026
2d9cdfc
ci(test): add a Windows leg to the manual desktop test build
mayoalexander Aug 24, 2026
5e0b18b
fix(boards): you could not file an item into a list, and could not mo…
mayoalexander Aug 24, 2026
6a613fa
ci: add the Windows leg to the real release pipeline
mayoalexander Aug 24, 2026
9b8781b
fix(mint): spend policy silently unenforced on import/split, group ke…
mayoalexander Aug 23, 2026
c896c49
feat: iris imessage mentions reads the cross-machine Atlas dataset (#…
mayoalexander Aug 23, 2026
9710932
fix: --node filter on iris imessage mentions never matched real hostn…
mayoalexander Aug 24, 2026
a9b4666
test(leads): lock the reporting that let 56 rows pass for 28,522
mayoalexander Aug 24, 2026
5d7c127
fix(hive): completed-task field name, doctor --json on local path, ta…
mayoalexander Aug 24, 2026
9346941
feat(vault): sovereign device-owned storage — encrypted, replicated a…
mayoalexander Aug 24, 2026
cbd1982
chore(cli): reindex capabilities — vault commands were undiscoverable
mayoalexander Aug 24, 2026
fd27e7a
fix(cli): mint group rm accepted --json and ignored it; argv ratchet …
mayoalexander Aug 24, 2026
a2aee82
feat(revops): KPI/OKR tracking layer — iris okr + iris kpi
mayoalexander Aug 24, 2026
65764da
feat(cli): iris playbook doctor + verify — diagnose and confirm publi…
mayoalexander Aug 24, 2026
ea5ed53
test(revops): cover fmtPct edge cases for the OKR/KPI CLI
mayoalexander Aug 24, 2026
8bb88c2
fix(vault): restore the hive registration and the self-node fix, reindex
mayoalexander Aug 24, 2026
133f0b1
feat(mcp,share,howto): recover stranded work — mcp call/tools, PHI sh…
mayoalexander Aug 24, 2026
81cfa76
fix(revops): a decrease KR at its worst value reported as 100% complete
mayoalexander Aug 24, 2026
2dfcc6e
chore(cli): reindex capabilities — okr, kpi and mcp call/tools were u…
mayoalexander Aug 24, 2026
b70fae7
refactor(revops): retire the duplicate KPI store; key results now rea…
mayoalexander Aug 24, 2026
c3453aa
chore(cli): reindex capabilities after retiring iris kpi
mayoalexander Aug 24, 2026
bcda1b3
fix(capabilities): index option descriptions — a command's real capab…
mayoalexander Aug 24, 2026
1c40f13
docs(playbook): make the SOP+skills container discoverable
mayoalexander Aug 24, 2026
5045a2b
feat(revops): revenue model as a config value — one KPI engine, N pro…
mayoalexander Aug 24, 2026
d307ad1
docs(playbook): make playbook chaining discoverable
mayoalexander Aug 25, 2026
d879fc6
feat(scripts): send a content digest with every dispatch, so a node c…
mayoalexander Aug 25, 2026
5fb3f0d
fix(playbook): detect the version-coercion trap in validatePlan, not …
mayoalexander Aug 25, 2026
a8ff424
feat(cli): iris genesis library — browse, inspect and trace the compo…
mayoalexander Aug 25, 2026
7d99b4c
feat(boards): iris boards update --bloq-id — move an item between pro…
mayoalexander Aug 25, 2026
c39de68
feat(bloqs): move an item between bloqs/lists without recreating it
mayoalexander Aug 25, 2026
35f434c
feat(selftest): assert the task ran on the node it was addressed to
mayoalexander Aug 25, 2026
25dff2e
fix(hive): prefer the separated stdout over the merged output field
mayoalexander Aug 25, 2026
7427e64
feat(data-sources): iris data-sources survey — what you have, before …
mayoalexander Aug 25, 2026
7f87e67
fix(hive): print the FULL selftest task id, not the first 8 characters
mayoalexander Aug 25, 2026
9f83d16
feat(record): iris record alias + --draft chains capture straight to …
mayoalexander Aug 25, 2026
7a10267
chore(capabilities): reindex — data-sources survey, playbook-composit…
mayoalexander Aug 25, 2026
eb3d162
feat(exposure): one gate for every verb that widens who can reach som…
mayoalexander Aug 25, 2026
81272d4
feat(playbook): check-private — measure the privacy claim instead of …
mayoalexander Aug 25, 2026
51dbece
feat(exposure): iris exposure — one verb for "who can reach this", ac…
mayoalexander Aug 25, 2026
be644f9
fix(leads): search project content for people, not just the CRM table…
mayoalexander Aug 26, 2026
5474ada
chore(capabilities): reindex — exposure, check-private, hive/playbook…
mayoalexander Aug 26, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
126 changes: 126 additions & 0 deletions .github/workflows/desktop-test-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,126 @@
name: Desktop test build (IRIS rebrand)

# Manual, one-off build for testing the rebranded packages/desktop app on a machine
# without local disk headroom to compile it. Not wired into the release process --
# unsigned, ad-hoc output for local testing only. Safe to delete once the real
# release.yml wiring (tracked in bloq #503 item #182113) lands.
on:
workflow_dispatch:

permissions:
contents: read

jobs:
build:
runs-on: macos-latest
timeout-minutes: 40
steps:
- uses: actions/checkout@v4

- name: Setup Bun
uses: oven-sh/setup-bun@v2
with:
bun-version-file: package.json

- name: Install dependencies
run: bun install

- name: Install Rust stable
uses: dtolnay/rust-toolchain@stable
with:
targets: aarch64-apple-darwin

- name: Build the iris CLI (sidecar binary)
run: |
cd packages/opencode
bun run script/build.ts --single
env:
OPENCODE_VERSION: 0.0.0-test
OPENCODE_CHANNEL: latest

- name: Stage sidecar binary
run: |
set -euo pipefail
BIN=$(ls packages/opencode/dist/opencode-darwin-arm64/bin/iris)
mkdir -p packages/desktop/src-tauri/sidecars
cp "$BIN" packages/desktop/src-tauri/sidecars/iris-cli-aarch64-apple-darwin
chmod +x packages/desktop/src-tauri/sidecars/iris-cli-aarch64-apple-darwin

- name: Build IRIS desktop app
run: |
cd packages/desktop
./node_modules/.bin/tauri build --debug --config ./src-tauri/tauri.prod.conf.json --config '{"bundle":{"createUpdaterArtifacts":false}}' --target aarch64-apple-darwin --bundles app,dmg

- name: Zip the .app bundle
run: |
cd packages/desktop/src-tauri/target/aarch64-apple-darwin/debug/bundle/macos
ditto -c -k --sequesterRsrc --keepParent IRIS.app IRIS-darwin-arm64.zip

- name: Upload .app
uses: actions/upload-artifact@v4
with:
name: IRIS-darwin-arm64-app
path: packages/desktop/src-tauri/target/aarch64-apple-darwin/debug/bundle/macos/IRIS-darwin-arm64.zip

- name: Upload .dmg
uses: actions/upload-artifact@v4
with:
name: IRIS-darwin-arm64-dmg
path: packages/desktop/src-tauri/target/aarch64-apple-darwin/debug/bundle/dmg/*.dmg
if-no-files-found: ignore

build-windows:
runs-on: windows-latest
timeout-minutes: 40
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v4

- name: Setup Bun
uses: oven-sh/setup-bun@v2
with:
bun-version-file: package.json

- name: Install dependencies
run: bun install

- name: Install Rust stable
uses: dtolnay/rust-toolchain@stable
with:
targets: x86_64-pc-windows-msvc

- name: Build the iris CLI (sidecar binary)
run: |
cd packages/opencode
bun run script/build.ts --single
env:
OPENCODE_VERSION: 0.0.0-test
OPENCODE_CHANNEL: latest

- name: List CLI build output (debug aid -- first Windows build, verifying real filenames)
run: find packages/opencode/dist -maxdepth 3 | sort

- name: Stage sidecar binary
run: |
set -euo pipefail
BIN=$(ls packages/opencode/dist/opencode-windows-x64/bin/iris* | head -1)
echo "found CLI binary: $BIN"
mkdir -p packages/desktop/src-tauri/sidecars
cp "$BIN" packages/desktop/src-tauri/sidecars/iris-cli-x86_64-pc-windows-msvc.exe

- name: Build IRIS desktop app
run: |
cd packages/desktop
./node_modules/.bin/tauri build --debug --config ./src-tauri/tauri.prod.conf.json --config '{"bundle":{"createUpdaterArtifacts":false}}' --target x86_64-pc-windows-msvc --bundles nsis

- name: List bundle output (debug aid)
run: find packages/desktop/src-tauri/target/x86_64-pc-windows-msvc/debug/bundle -maxdepth 2 | sort

- name: Upload installer
uses: actions/upload-artifact@v4
with:
name: IRIS-windows-x64-installer
path: packages/desktop/src-tauri/target/x86_64-pc-windows-msvc/debug/bundle/nsis/*.exe
if-no-files-found: warn
Loading
Loading