xiaoju
f74b482cc0
chore: version 0.5.0-alpha.3, add publish-all script
...
- scripts/publish-all.mjs: pins workspace:^ before npm publish, restores after
- Workaround for bun publish workspace:^ resolution bug in pre mode
小橘 🍊
2026-05-15 01:37:27 +00:00
xiaoju
77e395b913
chore: version 0.5.0-alpha.1
...
小橘 🍊
2026-05-15 01:27:54 +00:00
xiaoju
9576d69032
chore: enter changeset pre mode (alpha), version 0.5.0-alpha.0
...
小橘 🍊
2026-05-15 01:22:44 +00:00
xiaoju
4582274ba4
feat(protocol): AgentFn<Opt> type + createAgentAdapter bridge
...
Add AgentFn<Opt = void> as the formal agent boundary type:
- Input: ThreadContext (fixed), Output: string (fixed)
- Opt: agent-specific structured options (e.g. { workspace } for Cursor)
Add createAgentAdapter<Opt>(agent, extract) → AdapterFn bridge in
workflow-util-agent, plus createSimpleAgentAdapter for Opt = void.
Also fixes: workflow-cas composite flag + cursor tsconfig reference.
Refs #252
2026-05-14 08:41:22 +00:00
xingyue
9276689cb6
chore: switch to npmjs registry, publish v0.4.5
...
- Remove Gitea npm registry, use npmjs.org
- changeset publish works natively with npmjs
- release script: build + test + changeset publish
- Remove custom release.sh, all via changesets
2026-05-13 21:20:18 +08:00
xingyue
b4584cbaa6
chore: publish v0.4.3 — include src/ in published packages
...
bun runtime resolves the 'bun' exports condition to ./src/index.ts,
but src/ was not in the files array so consumers got ENOENT.
2026-05-13 21:11:17 +08:00
xingyue
1cf963a1fb
chore: publish v0.4.2 — fix workspace deps, remove publish.sh
...
- workspace:* → workspace:^ (resolves to ^x.y.z instead of exact)
- Remove publish.sh, use changesets workflow
- changeset config: access public (Gitea compat)
- release script: build + test + changeset publish
2026-05-13 21:07:29 +08:00
xingyue
ce5bc50210
chore: publish v0.4.1
...
小橘 <xiaoju@shazhou.work >
2026-05-13 20:59:59 +08:00
xingyue
522afdd4bd
feat: adopt changesets + fix exports, bump to 0.4.0
...
- Install @changesets/cli with fixed mode (all @uncaged/* packages sync version)
- Fix package exports: add bun condition, point import to dist/
- Bump all packages to 0.4.0 via changeset version
- Auto-generated CHANGELOG.md for each package
- Ignore workflow-dashboard (private)
- Add npm scripts: changeset, version, release
- publish.sh: support workspace:^ prefix matching
Closes #241 , Closes #242
2026-05-13 20:56:21 +08:00
xingyue
ca644dabaa
chore: bump all packages to 0.4.0, fix exports for publish
...
- All @uncaged/* packages → 0.4.0
- Internal deps: workspace:* → workspace:^ (resolves to ^0.4.0 on publish)
- Fix exports: add 'bun' condition for local dev (src), 'import' for consumers (dist)
- Remove stale 'main: src/index.ts' from 6 packages
- Fix publish.sh topo sort to match workspace:^ prefix
星月 <xingyue@shazhou.work >
2026-05-13 20:46:00 +08:00
xingyue
aede8f7613
chore: publish v0.3.21
...
小橘 <xiaoju@shazhou.work >
2026-05-13 17:10:39 +08:00
xingyue
6cce5e2593
chore: publish v0.3.20
...
小橘 <xiaoju@shazhou.work >
2026-05-13 17:00:43 +08:00
xingyue
d3a7ed9062
chore: publish v0.3.19
...
小橘 <xiaoju@shazhou.work >
2026-05-13 16:56:55 +08:00
xiaoju
bb1293f6b9
fix: add exports field to 6 packages for proper type resolution
...
Packages without exports.types pointed main/types to src/ which
doesn't exist in published tarballs. Now all packages have:
exports."." = { types: dist/index.d.ts, import: src/index.ts }
Bump to 0.3.18.
2026-05-13 08:29:36 +00:00
xiaoju
497f03c747
chore: bump all packages to 0.3.17
2026-05-13 08:04:32 +00:00
xiaoju
061926b86a
chore: fix all biome lint errors
...
- Auto-fix string concatenation → template literals
- Remove unused imports
- Prefix unused function with underscore
- Format fixes across multiple files
2026-05-13 07:26:11 +00:00
xiaoju
d5d7be6100
chore: add files field to all packages, bump to 0.3.16
...
Excludes tsconfig.json and source files from published packages.
Fixes TypeScript errors when consuming packages via bun.
2026-05-13 07:19:49 +00:00
xiaoju
1566a43395
chore: bump all packages to 0.3.15
2026-05-13 07:04:12 +00:00
xiaoju
f0d1bb9ae8
chore: bump all to 0.3.11
...
小橘 🍊
2026-05-13 03:28:33 +00:00
xiaoju
04cfd33f99
chore: bump all to 0.3.10 (regenerate lockfile)
...
小橘 🍊
2026-05-13 03:27:05 +00:00
xiaoju
a8c00f169b
chore: bump all packages to 0.3.9 (fix workspace:* dep resolution)
...
小橘 🍊
2026-05-13 03:25:50 +00:00
xiaoju
8e63f99eb6
chore: bump all public packages to 0.3.6
...
小橘 🍊
2026-05-13 03:18:25 +00:00
xingyue
0c02cb7574
chore: publish v0.3.5
...
小橘 <xiaoju@shazhou.work >
2026-05-13 09:34:41 +08:00
xingyue
4493fd8979
chore: publish v0.3.4
...
小橘 <xiaoju@shazhou.work >
2026-05-12 20:35:02 +08:00
xingyue
3846dc12a9
chore: bump all public packages to 0.3.3
2026-05-12 12:58:17 +08:00
xingyue
4c4dabb7a3
chore: bump all public packages to 0.3.2
2026-05-12 12:55:21 +08:00
xiaoju
1e9900bed3
feat( #194 ): Phase 2 — Engine layer Merkle call stack wiring
...
- Protocol: AgentFnResult = string | { output, childThread }, RoleOutput.childThread,
ThreadContext.bundleHash for parent state lookup
- Runtime: create-workflow normalizes AgentFnResult, propagates childThread in RoleOutput
- Engine: ExecuteThreadOptions.parentStateHash, appendStateForStep writes childThread,
putStartNode uses parentStateHash
- workflowAsAgent: reads parent head state from threads.json, passes parentStateHash
to child, returns { output, childThread: rootHash }
- Integration test: 4 cases verifying bidirectional Merkle links (306 lines)
Phase 2 of #194 (Merkle Call Stack). Closes #196 .
小橘 <xiaoju@shazhou.work >
2026-05-12 02:10:06 +00:00
xiaoju
a98431a12a
feat( #194 ): Phase 1 — parentState / childThread in CAS nodes
...
- Protocol: StartNodePayload.parentState, StateNodePayload.childThread
- CAS: putStartNode refs include parentState, collectRefs includes childThread
- Parsing: legacy nodes without new fields default to null
- Engine + fork: all callers pass parentState: null / childThread: null
- Tests: 8 new cases for refs, parsing, collect-refs (+208 lines)
Phase 1 of #194 (Merkle Call Stack). Closes #195 .
小橘 <xiaoju@shazhou.work >
2026-05-12 01:42:10 +00:00
xiaoju
e37dbc3f35
wip: Phase 1 protocol + CAS types for Merkle call stack
...
小橘 <xiaoju@shazhou.work >
2026-05-12 01:35:45 +00:00
xiaoju
376dd87b6b
chore: bump to v0.3.1, fix workspace:* in published packages
...
v0.3.0 was published with workspace:* deps (npm doesn't resolve them).
Re-published as v0.3.1 with concrete version refs.
Local monorepo deps restored to workspace:*.
小橘 <xiaoju@shazhou.work >
2026-05-11 11:00:49 +00:00
xiaoju
4d8469a649
chore: bump all packages to v0.3.0
...
Published to Gitea npm registry (git.shazhou.work).
小橘 <xiaoju@shazhou.work >
2026-05-11 10:52:35 +00:00
xiaoju
ec13c19505
Merge pull request 'refactor: replace maxRounds with supervisor check interval' ( #186 ) from refactor/185-remove-max-rounds into main
2026-05-11 09:01:24 +00:00
xiaoju
2b587612d5
refactor: replace maxRounds with supervisor check interval
...
Removes maxRounds as a hard stop limit from the entire stack. The supervisor
(already configured via workflow.yaml supervisorInterval) is now the sole
termination authority.
Changes across 27 files in 11 packages:
- workflow-protocol: StartStep.meta is now empty, StartNodePayload drops maxRounds
- workflow-cas: isStartPayload no longer checks maxRounds
- workflow-execute: engine, worker, fork-thread all stripped of maxRounds plumbing
- cli-workflow: --max-rounds flag removed from CLI and HTTP API
- workflow-runtime: build-context and create-workflow no longer reference maxRounds
- workflow-dashboard: UI no longer sends maxRounds
- workflow-template-develop/solve-issue: moderator no longer checks rounds remaining
- All tests updated
Fixes #185
2026-05-11 08:51:35 +00:00
xingyue
2342a6e3bd
fix: login.tsx use new gateway endpoint path
2026-05-11 16:46:38 +08:00
xiaoju
ca0403c8ab
fix: content node refs field + thread head update
...
Fixes #161
Fixes #162
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-09 08:53:02 +00:00
xiaoju
26cf51366f
feat: Phase 3 — engine read path + runtime context builder
...
- Add buildThreadContext(headHash, cas) to workflow-runtime
- Expand extract phase to return { meta, contentPayload, refs[] }
- Add parseCasThreadNode() to workflow-cas for node type parsing
- Update createWorkflow to write ContentMerkleNode with artifact refs
- Tests: 4 pass (build-context + extract-refs)
- Biome format pass on all files
Refs #155 , closes #158
小橘 <xiaoju@shazhou.work >
2026-05-09 08:00:24 +00:00
xiaoju
81c582ae0e
feat: Phase 2 — engine write path (CAS nodes + threads.json)
...
- Engine writes StartNode, StateNode, ContentMerkleNode as CAS blobs
- threads.json tracks active threads, completed → history/{date}.jsonl
- No more .data.jsonl writes
- ancestors skip-list: [parent, ...parentAncestors] capped at 11
- Tests: 4 pass (engine write path)
Refs #155 , closes #157
小橘 <xiaoju@shazhou.work >
2026-05-09 07:53:44 +00:00
xiaoju
6f000512d2
feat: Phase 1 — CAS thread storage types + helpers
...
- Add StartNode, StateNode, ContentMerkleNode types to workflow-protocol
- Add collectRefs() to workflow-cas — extracts CAS hashes from StateNode payload
- Add findReachableHashes() to workflow-cas — recursive mark traversal via refs[]
- Tests: 7 pass (collect-refs + reachable)
Refs #155 , closes #156
小橘 <xiaoju@shazhou.work >
2026-05-09 07:30:47 +00:00
xiaoju
064696c558
docs: update architecture docs and package READMEs for post-split structure
...
- Rewrite docs/architecture.md with 15-package map, dependency graph, updated engine paths
- Update CLAUDE.md monorepo structure section
- Add READMEs for: workflow-protocol, workflow-runtime, workflow-util, workflow-cas, workflow-register, workflow-execute, workflow-reactor
- Fix agent READMEs: update deps from @uncaged/workflow to actual packages
- Mark workflow-as-agent plan as outdated
Fixes #153
小橘 <xiaoju@shazhou.work >
2026-05-09 04:39:57 +00:00
xingyue
727b4bb3ed
refactor(workflow): fix tsconfig references, template imports, delete old packages/workflow
...
- Update root tsconfig.json references: replace packages/workflow with 6 new packages
- Update cli-workflow tsconfig references to new packages
- Add tsconfig references to workflow-util, workflow-runtime, workflow-execute
- Fix workflow-agent-llm, workflow-agent-cursor, workflow-agent-hermes, workflow-util-agent
tsconfig references (../workflow -> ../workflow-runtime)
- Remove stale @uncaged/workflow deps from agent package.json files
- Change template packages to import buildDescriptor from @uncaged/workflow-register
- Normalize package.json exports field across all new packages
- Delete old packages/workflow/ directory
2026-05-09 11:46:57 +08:00
xingyue
1a1e8b3398
feat(cas,reactor): create @uncaged/workflow-cas and @uncaged/workflow-reactor
...
Phase 4: CAS module extracted with Merkle types, hash functions,
and fs-backed store. Imports CasStore type from protocol.
Phase 5: Reactor (ReAct loop) extracted as independent package.
Only depends on protocol — no cas or engine dependency.
Ref: #143 , closes #147 , closes #148
2026-05-09 11:11:33 +08:00