From 5bbac3e4f7524b3604ad5c2c87c666a8a2a67b5c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=8F=E6=A9=98?= Date: Sat, 16 May 2026 09:58:56 +0000 Subject: [PATCH] chore: internalize unused exports across all packages MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Audit public API surfaces using reachability analysis from application entry points (Worker, CLI, Dashboard). Symbols not reachable from any application's customization tree are removed from package index.ts files. Source files and internal usage are untouched — only the public export surface is narrowed. Changes by package: - workflow-util: -7 exports (base32 internals, logger config types) - workflow-cas: -12 exports (merkle internals, serialization details) - workflow-execute: -24 exports (engine internals, LLM extract details) - workflow-reactor: -4 exports (reactor config/invocation internals) - workflow-register: -8 exports (redundant protocol re-exports, internal YAML fns) - workflow-runtime: curated re-export subset (stop full protocol re-export) - workflow-util-agent: -5 exports (internal agent helpers) - workflow-agent-cursor: -1 export (validateCursorAgentConfig) - workflow-agent-hermes: -1 export (validateHermesAgentConfig) Note: workflow-protocol index.ts unchanged — downstream packages still import removed symbols via internal paths. Protocol cleanup requires updating workflow-runtime/src/types.ts first (separate PR). Refs #273, #274, #275, #276, #277, #278, #279, #280, #281, #282 --- packages/workflow-agent-cursor/src/index.ts | 1 - packages/workflow-agent-hermes/src/index.ts | 1 - packages/workflow-cas/src/index.ts | 17 ++--------- packages/workflow-execute/src/index.ts | 30 ++----------------- packages/workflow-reactor/src/index.ts | 4 --- .../workflow-register/src/bundle/index.ts | 5 ---- packages/workflow-register/src/index.ts | 8 ----- packages/workflow-runtime/src/index.ts | 12 ++------ packages/workflow-util-agent/src/index.ts | 7 ++--- packages/workflow-util/src/index.ts | 12 ++------ 10 files changed, 12 insertions(+), 85 deletions(-) diff --git a/packages/workflow-agent-cursor/src/index.ts b/packages/workflow-agent-cursor/src/index.ts index b3a7fec..35fe017 100644 --- a/packages/workflow-agent-cursor/src/index.ts +++ b/packages/workflow-agent-cursor/src/index.ts @@ -12,7 +12,6 @@ import type { CursorAgentConfig } from "./types.js"; import { validateCursorAgentConfig } from "./validate-config.js"; export type { CursorAgentConfig } from "./types.js"; -export { validateCursorAgentConfig } from "./validate-config.js"; function throwCursorSpawnError(error: SpawnCliError): never { if (error.kind === "non_zero_exit") { diff --git a/packages/workflow-agent-hermes/src/index.ts b/packages/workflow-agent-hermes/src/index.ts index 2ab9273..0027c81 100644 --- a/packages/workflow-agent-hermes/src/index.ts +++ b/packages/workflow-agent-hermes/src/index.ts @@ -14,7 +14,6 @@ const HERMES_DEFAULT_MAX_TURNS = 90; type HermesAgentOpt = { prompt: string }; export type { HermesAgentConfig } from "./types.js"; -export { validateHermesAgentConfig } from "./validate-config.js"; function throwHermesSpawnError(error: SpawnCliError): never { if (error.kind === "non_zero_exit") { diff --git a/packages/workflow-cas/src/index.ts b/packages/workflow-cas/src/index.ts index a388e03..3686f59 100644 --- a/packages/workflow-cas/src/index.ts +++ b/packages/workflow-cas/src/index.ts @@ -1,29 +1,16 @@ export { createCasStore } from "./cas.js"; -export { collectRefs } from "./collect-refs.js"; -export { hashString, hashWorkflowBundleBytes } from "./hash.js"; +export { hashWorkflowBundleBytes } from "./hash.js"; export { createContentMerkleNode, getContentMerklePayload, - parseMerkleNode, putContentMerkleNode, - putStepMerkleNode, - putThreadMerkleNode, serializeMerkleNode, } from "./merkle.js"; -export type { ParsedCasThreadNode } from "./nodes.js"; export { - isCasNodeYaml, parseCasThreadNode, putContentNodeWithRefs, putStartNode, putStateNode, - serializeCasNode, } from "./nodes.js"; export { findReachableHashes } from "./reachable.js"; -export type { - CasStore, - MerkleNode, - MerkleNodeType, - StepMerklePayload, - ThreadMerklePayload, -} from "./types.js"; +export type { CasStore } from "./types.js"; diff --git a/packages/workflow-execute/src/index.ts b/packages/workflow-execute/src/index.ts index 682477d..92b477f 100644 --- a/packages/workflow-execute/src/index.ts +++ b/packages/workflow-execute/src/index.ts @@ -1,48 +1,22 @@ -export { createWorkflow } from "./engine/create-workflow.js"; -export { executeThread } from "./engine/engine.js"; export { FORK_BRANCH_ROLE, prepareCasFork, - tryParseWorkflowResultRecord, walkStateFramesNewestFirst, } from "./engine/fork-thread.js"; export { garbageCollectCas } from "./engine/gc.js"; -export { createThreadPauseGate } from "./engine/thread-pause-gate.js"; export type { ThreadHistoryEntry, ThreadIndex, ThreadIndexEntry, } from "./engine/threads-index.js"; export { - appendThreadHistoryEntry, getBundleDir, readThreadsIndex, removeThreadEntry, removeThreadHistoryEntries, upsertThreadEntry, - writeThreadsIndex, } from "./engine/threads-index.js"; -export type { - CasForkPlan, - ChainState, - ExecuteThreadIo, - ExecuteThreadOptions, - ForkContinuationOptions, - GcResult, - PrefilledDiskStep, - SupervisorDecision, - ThreadPauseGate, -} from "./engine/types.js"; -export { EMPTY_CHAIN_STATE } from "./engine/types.js"; +export type { GcResult } from "./engine/types.js"; export { getWorkerHostScriptPath } from "./engine/worker-entry-path.js"; -export type { ExtractFn, LlmError, LlmExtractArgs } from "./extract/index.js"; -export { - createExtract, - extractFunctionToolFromZodSchema, - llmErrorToCause, - llmExtract, -} from "./extract/index.js"; +export { createExtract } from "./extract/index.js"; export { type WorkflowAdapterOptions, workflowAdapter } from "./workflow-adapter.js"; - -/** @deprecated Use {@link workflowAdapter} instead. */ -export { type WorkflowAsAgentOptions, workflowAsAgent } from "./workflow-as-agent.js"; diff --git a/packages/workflow-reactor/src/index.ts b/packages/workflow-reactor/src/index.ts index 80f2ab2..af4cadc 100644 --- a/packages/workflow-reactor/src/index.ts +++ b/packages/workflow-reactor/src/index.ts @@ -3,10 +3,6 @@ export { createThreadReactor } from "./thread-reactor.js"; export type { ChatMessage, LlmFn, - StructuredToolSpec, - ThreadReactorConfig, ThreadReactorFn, - ThreadReactorInvokeArgs, - ToolCall, ToolDefinition, } from "./types.js"; diff --git a/packages/workflow-register/src/bundle/index.ts b/packages/workflow-register/src/bundle/index.ts index 7c0f318..fe0f548 100644 --- a/packages/workflow-register/src/bundle/index.ts +++ b/packages/workflow-register/src/bundle/index.ts @@ -6,10 +6,5 @@ export { stringifyWorkflowDescriptor } from "./generate-descriptor.js"; export type { ExtractedBundleExports, WorkflowBundleValidationInput, - WorkflowDescriptor, - WorkflowGraph, - WorkflowGraphEdge, - WorkflowRoleDescriptor, - WorkflowRoleSchema, } from "./types.js"; export { validateWorkflowDescriptor } from "./workflow-descriptor.js"; diff --git a/packages/workflow-register/src/index.ts b/packages/workflow-register/src/index.ts index 930662d..26b974f 100644 --- a/packages/workflow-register/src/index.ts +++ b/packages/workflow-register/src/index.ts @@ -1,11 +1,6 @@ export type { ExtractedBundleExports, WorkflowBundleValidationInput, - WorkflowDescriptor, - WorkflowGraph, - WorkflowGraphEdge, - WorkflowRoleDescriptor, - WorkflowRoleSchema, } from "./bundle/index.js"; export { buildDescriptor, @@ -19,18 +14,15 @@ export type { ProviderConfig, ResolvedModel } from "./config/index.js"; export { resolveModel, splitProviderModelRef } from "./config/index.js"; export type { WorkflowConfig, - WorkflowHistoryEntry, WorkflowRegistryEntry, WorkflowRegistryFile, } from "./registry/index.js"; export { getRegisteredWorkflow, listRegisteredWorkflowNames, - parseWorkflowRegistryYaml, readWorkflowRegistry, registerWorkflowVersion, rollbackWorkflowToHistoryHash, - stringifyWorkflowRegistryYaml, unregisterWorkflow, workflowRegistryPath, writeWorkflowRegistry, diff --git a/packages/workflow-runtime/src/index.ts b/packages/workflow-runtime/src/index.ts index 3a751f1..db8e94d 100644 --- a/packages/workflow-runtime/src/index.ts +++ b/packages/workflow-runtime/src/index.ts @@ -2,7 +2,6 @@ export { buildThreadContext } from "./build-context.js"; export { createWorkflow } from "./create-workflow.js"; export { err, ok } from "./result.js"; export type { - AdapterBinding, AdapterFn, AgentContext, AgentFn, @@ -14,7 +13,6 @@ export type { ModeratorCondition, ModeratorContext, ModeratorTable, - ModeratorTransition, Result, RoleDefinition, RoleFn, @@ -22,17 +20,11 @@ export type { RoleOutput, RoleResult, RoleStep, - StartStep, ThreadContext, WorkflowCompletion, WorkflowDefinition, - WorkflowDescriptor, WorkflowFn, - WorkflowGraph, - WorkflowGraphEdge, WorkflowResult, - WorkflowRoleDescriptor, - WorkflowRoleSchema, WorkflowRuntime, -} from "./types.js"; -export { END, START } from "./types.js"; +} from "@uncaged/workflow-protocol"; +export { END, START } from "@uncaged/workflow-protocol"; diff --git a/packages/workflow-util-agent/src/index.ts b/packages/workflow-util-agent/src/index.ts index 88d0daf..8a8c621 100644 --- a/packages/workflow-util-agent/src/index.ts +++ b/packages/workflow-util-agent/src/index.ts @@ -1,5 +1,4 @@ -export { buildAgentPrompt, buildThreadInput } from "./build-agent-prompt.js"; -export type { ExtractOptionsFn } from "./create-agent-adapter.js"; -export { createAgentAdapter, createSimpleAgentAdapter } from "./create-agent-adapter.js"; -export type { SpawnCliConfig, SpawnCliError, SpawnCliResult } from "./spawn-cli.js"; +export { buildThreadInput } from "./build-agent-prompt.js"; +export { createAgentAdapter } from "./create-agent-adapter.js"; +export type { SpawnCliError } from "./spawn-cli.js"; export { spawnCli } from "./spawn-cli.js"; diff --git a/packages/workflow-util/src/index.ts b/packages/workflow-util/src/index.ts index ea30c37..bd8a3de 100644 --- a/packages/workflow-util/src/index.ts +++ b/packages/workflow-util/src/index.ts @@ -1,14 +1,8 @@ export { err, ok } from "@uncaged/workflow-protocol"; -export { - CROCKFORD_BASE32_ALPHABET, - decodeCrockfordBase32Bits, - decodeCrockfordToUint64, - encodeCrockfordBase32Bits, - encodeUint64AsCrockford, -} from "./base32.js"; +export { encodeUint64AsCrockford } from "./base32.js"; export { env } from "./env.js"; export { createLogger } from "./logger.js"; -export { mergeRefsWithContentHash, normalizeRefsField } from "./refs-field.js"; +export { normalizeRefsField } from "./refs-field.js"; export { getDefaultWorkflowStorageRoot, getGlobalCasDir } from "./storage-root.js"; -export type { CreateLoggerOptions, LogFn, LoggerSink, Result } from "./types.js"; +export type { LogFn, Result } from "./types.js"; export { generateUlid } from "./ulid.js";