@agent-relay/factory 0.1.1 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +146 -205
- package/dist/cli/fleet.d.ts +5 -1
- package/dist/cli/fleet.d.ts.map +1 -1
- package/dist/cli/fleet.js +86 -15
- package/dist/cli/fleet.js.map +1 -1
- package/dist/config/schema.d.ts +4 -4
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js +13 -2
- package/dist/config/schema.js.map +1 -1
- package/dist/constants/linear.d.ts +2 -0
- package/dist/constants/linear.d.ts.map +1 -1
- package/dist/constants/linear.js +6 -0
- package/dist/constants/linear.js.map +1 -1
- package/dist/dispatch/templates.d.ts +18 -2
- package/dist/dispatch/templates.d.ts.map +1 -1
- package/dist/dispatch/templates.js +18 -10
- package/dist/dispatch/templates.js.map +1 -1
- package/dist/fleet/create-fleet.d.ts +3 -2
- package/dist/fleet/create-fleet.d.ts.map +1 -1
- package/dist/fleet/create-fleet.js +3 -2
- package/dist/fleet/create-fleet.js.map +1 -1
- package/dist/fleet/ensure-relay-broker.d.ts +24 -0
- package/dist/fleet/ensure-relay-broker.d.ts.map +1 -0
- package/dist/fleet/ensure-relay-broker.js +56 -0
- package/dist/fleet/ensure-relay-broker.js.map +1 -0
- package/dist/fleet/internal-fleet-client.d.ts +8 -3
- package/dist/fleet/internal-fleet-client.d.ts.map +1 -1
- package/dist/fleet/internal-fleet-client.js +32 -5
- package/dist/fleet/internal-fleet-client.js.map +1 -1
- package/dist/fleet/relay-fleet-client.d.ts +90 -13
- package/dist/fleet/relay-fleet-client.d.ts.map +1 -1
- package/dist/fleet/relay-fleet-client.js +496 -20
- package/dist/fleet/relay-fleet-client.js.map +1 -1
- package/dist/github/index.d.ts +4 -4
- package/dist/github/index.js +2 -2
- package/dist/github/probe-closer.d.ts +1 -1
- package/dist/github/probe-closer.js +1 -1
- package/dist/index.d.ts +33 -29
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +17 -15
- package/dist/index.js.map +1 -1
- package/dist/linear/state-resolver.d.ts +3 -2
- package/dist/linear/state-resolver.d.ts.map +1 -1
- package/dist/linear/state-resolver.js +74 -10
- package/dist/linear/state-resolver.js.map +1 -1
- package/dist/mount/local-mount-preflight.d.ts +1 -0
- package/dist/mount/local-mount-preflight.d.ts.map +1 -1
- package/dist/mount/local-mount-preflight.js +64 -12
- package/dist/mount/local-mount-preflight.js.map +1 -1
- package/dist/mount/relayfile-binary.d.ts +2 -0
- package/dist/mount/relayfile-binary.d.ts.map +1 -1
- package/dist/mount/relayfile-binary.js +39 -5
- package/dist/mount/relayfile-binary.js.map +1 -1
- package/dist/mount/relayfile-cloud-mount-client.d.ts +2 -2
- package/dist/mount/relayfile-cloud-mount-client.js +1 -1
- package/dist/node/factory-node.d.ts +59 -0
- package/dist/node/factory-node.d.ts.map +1 -0
- package/dist/node/factory-node.js +351 -0
- package/dist/node/factory-node.js.map +1 -0
- package/dist/node/factory.node.d.ts +3 -0
- package/dist/node/factory.node.d.ts.map +1 -0
- package/dist/node/factory.node.js +5 -0
- package/dist/node/factory.node.js.map +1 -0
- package/dist/orchestrator/batch-tracker.d.ts +2 -2
- package/dist/orchestrator/factory.d.ts +5 -2
- package/dist/orchestrator/factory.d.ts.map +1 -1
- package/dist/orchestrator/factory.js +413 -59
- package/dist/orchestrator/factory.js.map +1 -1
- package/dist/orchestrator/index.d.ts +4 -4
- package/dist/orchestrator/index.d.ts.map +1 -1
- package/dist/orchestrator/index.js +3 -3
- package/dist/orchestrator/index.js.map +1 -1
- package/dist/orchestrator/process-identity.d.ts +1 -1
- package/dist/orchestrator/reaper.d.ts +3 -3
- package/dist/orchestrator/reaper.js +3 -3
- package/dist/ports/fleet.d.ts +8 -2
- package/dist/ports/fleet.d.ts.map +1 -1
- package/dist/ports/index.d.ts +4 -4
- package/dist/ports/state.d.ts +3 -3
- package/dist/ports/writeback.d.ts +1 -1
- package/dist/safety/factory-scope.d.ts +2 -2
- package/dist/state/in-memory-state-store.d.ts +1 -1
- package/dist/state/in-memory-state-store.js +1 -1
- package/dist/subscriptions/event-client.d.ts +1 -1
- package/dist/subscriptions/event-client.js +2 -2
- package/dist/subscriptions/globs.js +1 -1
- package/dist/subscriptions/index.d.ts +7 -7
- package/dist/subscriptions/index.js +4 -4
- package/dist/subscriptions/linear-filter.d.ts +1 -1
- package/dist/subscriptions/linear-filter.js +1 -1
- package/dist/subscriptions/specs.d.ts +1 -1
- package/dist/subscriptions/specs.js +2 -2
- package/dist/testing/fakes.d.ts +1 -1
- package/dist/testing/fakes.js +1 -1
- package/dist/testing/fakes.js.map +1 -1
- package/dist/testing/index.d.ts +1 -1
- package/dist/testing/index.js +1 -1
- package/dist/triage/heuristic.d.ts +8 -4
- package/dist/triage/heuristic.d.ts.map +1 -1
- package/dist/triage/heuristic.js +70 -6
- package/dist/triage/heuristic.js.map +1 -1
- package/dist/triage/index.d.ts +6 -6
- package/dist/triage/index.d.ts.map +1 -1
- package/dist/triage/index.js +4 -4
- package/dist/triage/index.js.map +1 -1
- package/dist/triage/llm.d.ts +1 -1
- package/dist/triage/llm.d.ts.map +1 -1
- package/dist/triage/llm.js +5 -3
- package/dist/triage/llm.js.map +1 -1
- package/dist/triage/schema.d.ts +133 -29
- package/dist/triage/schema.d.ts.map +1 -1
- package/dist/triage/schema.js +6 -3
- package/dist/triage/schema.js.map +1 -1
- package/dist/triage/tiered.d.ts +1 -1
- package/dist/triage/tiered.d.ts.map +1 -1
- package/dist/triage/tiered.js +9 -2
- package/dist/triage/tiered.js.map +1 -1
- package/dist/types.d.ts +10 -9
- package/dist/types.d.ts.map +1 -1
- package/dist/writeback/github.d.ts +2 -2
- package/dist/writeback/github.js +1 -1
- package/dist/writeback/index.d.ts +5 -5
- package/dist/writeback/index.js +3 -3
- package/dist/writeback/linear.d.ts +3 -3
- package/dist/writeback/linear.d.ts.map +1 -1
- package/dist/writeback/linear.js +57 -14
- package/dist/writeback/linear.js.map +1 -1
- package/dist/writeback/slack.d.ts +1 -1
- package/dist/writeback/slack.js +2 -2
- package/package.json +10 -2
- package/scripts/com.agentrelay.factory-canary.plist.example +53 -0
- package/scripts/factory-canary.sh +89 -0
package/dist/index.d.ts
CHANGED
|
@@ -1,32 +1,36 @@
|
|
|
1
1
|
export * from './webhook/index.js';
|
|
2
2
|
export * from './state/index.js';
|
|
3
|
-
export type { FactoryConfig, FactoryStateRole } from './config/schema';
|
|
4
|
-
export { FactoryConfigSchema, FACTORY_STATE_ROLES } from './config/schema';
|
|
5
|
-
export { resolveFactoryStates, stateResolutionFromIds, } from './linear/state-resolver';
|
|
6
|
-
export type { FactoryStateResolution, LinearStateReader, ResolveFactoryStatesInput, } from './linear/state-resolver';
|
|
7
|
-
export { linearByStatePath, linearCommentPath, linearIssuePath, } from './constants/linear';
|
|
8
|
-
export { slackMessagePath, slackReplyPath, } from './constants/slack';
|
|
9
|
-
export { agentSpecWithRenderedTask, mergePolicyLine, renderAgentTask, } from './dispatch/templates';
|
|
10
|
-
export type { RenderAgentTaskInput, TemplateIssue, TemplateRoute, } from './dispatch/templates';
|
|
11
|
-
export { createFleet } from './fleet/create-fleet';
|
|
12
|
-
export type { CreateFleetDeps, CreateFleetOptions, FleetBackend, } from './fleet/create-fleet';
|
|
13
|
-
export {
|
|
14
|
-
export type {
|
|
15
|
-
export {
|
|
16
|
-
export {
|
|
17
|
-
export
|
|
18
|
-
export {
|
|
19
|
-
export type {
|
|
20
|
-
export {
|
|
21
|
-
export type {
|
|
22
|
-
export {
|
|
23
|
-
export type {
|
|
24
|
-
export {
|
|
25
|
-
export type {
|
|
26
|
-
export {
|
|
27
|
-
export type {
|
|
28
|
-
export {
|
|
29
|
-
export type {
|
|
30
|
-
export
|
|
31
|
-
export type {
|
|
3
|
+
export type { FactoryConfig, FactoryStateRole } from './config/schema.js';
|
|
4
|
+
export { FactoryConfigSchema, FACTORY_STATE_ROLES } from './config/schema.js';
|
|
5
|
+
export { resolveFactoryStates, stateResolutionFromIds, } from './linear/state-resolver.js';
|
|
6
|
+
export type { FactoryStateResolution, LinearStateReader, ResolveFactoryStatesInput, } from './linear/state-resolver.js';
|
|
7
|
+
export { linearByStatePath, linearCommentPath, linearIssuePath, } from './constants/linear.js';
|
|
8
|
+
export { slackMessagePath, slackReplyPath, } from './constants/slack.js';
|
|
9
|
+
export { agentSpecWithRenderedTask, mergePolicyLine, renderAgentTask, } from './dispatch/templates.js';
|
|
10
|
+
export type { RenderAgentTaskInput, TemplateIssue, TemplateRoute, } from './dispatch/templates.js';
|
|
11
|
+
export { createFleet } from './fleet/create-fleet.js';
|
|
12
|
+
export type { CreateFleetDeps, CreateFleetOptions, FleetBackend, } from './fleet/create-fleet.js';
|
|
13
|
+
export { ensureRelayBroker } from './fleet/ensure-relay-broker.js';
|
|
14
|
+
export type { EnsureRelayBrokerOptions } from './fleet/ensure-relay-broker.js';
|
|
15
|
+
export { InternalFleetClient } from './fleet/internal-fleet-client.js';
|
|
16
|
+
export type { HarnessDriverClientLike, InternalFleetClientOptions, } from './fleet/internal-fleet-client.js';
|
|
17
|
+
export { RelayFleetClient } from './fleet/relay-fleet-client.js';
|
|
18
|
+
export { RelayfileCloudMountClient, resolveFactoryWorkspace, } from './mount/relayfile-cloud-mount-client.js';
|
|
19
|
+
export type { ActiveWorkspaceResolver, RelayFileClientLike, RelayfileCloudMountClientConfig, ResolvedFactoryWorkspace, } from './mount/relayfile-cloud-mount-client.js';
|
|
20
|
+
export { GhCliGithubMergeGate, GithubMergeGate, closeProbePr, defaultGhRunner, evaluateGithubMergeGate, } from './github/index.js';
|
|
21
|
+
export type { CloseProbePrInput, CloseProbePrResult, GhRunner, GhRunResult, GithubMergeInput, GithubMergeGateInput, GithubMergeGatePort, GithubMergeResult, GithubMergeGateVerdict, } from './github/index.js';
|
|
22
|
+
export { BatchTracker, DEFAULT_FACTORY_LOOP_HEARTBEAT_PATH, DEFAULT_FACTORY_LOOP_REGISTRY_PATH, FactoryReaper, checkFactoryLoopLiveness, createFactory, FactoryLoop, issueKey, isRealLinearIssue, parseLinearIssue, readLinearIssueWithCanonicalFallback, readFactoryInFlightRegistry, readFactoryLoopHeartbeat, reapFactoryOrphansOnce, } from './orchestrator/index.js';
|
|
23
|
+
export type { InFlightIssue, QueuedIssue, TrackedAgent } from './orchestrator/index.js';
|
|
24
|
+
export { HeuristicTriage, LlmTriage, TieredTriage, TriageDecisionSchema, } from './triage/index.js';
|
|
25
|
+
export type { HeuristicTriageOptions, LlmTriageOptions, } from './triage/index.js';
|
|
26
|
+
export { linearCommentName, MountGithubRead, MountLinearWriteback, MountSlackWriteback, } from './writeback/index.js';
|
|
27
|
+
export type { LinearCommentPayload, LinearCreateIssuePayload, LinearStateIds, MountLinearWritebackConfig, MountSlackWritebackConfig, } from './writeback/index.js';
|
|
28
|
+
export { AGENT_RELAY_FACTORY_NODE_CONFIG_ENV, createFactoryNodeDefinition, DEFAULT_FACTORY_NODE_CONFIG_PATH, FACTORY_NODE_CONFIG_ENV, factoryNodeInventorySync, parseFactoryNodeConfig, readFactoryNodeConfigSync, resolveFactoryNodeConfigPath, runRelayflowsWorkflow, } from './node/factory-node.js';
|
|
29
|
+
export type { FactoryNodeDefinitionOptions, FactoryNodeInventoryAgent, FactoryNodeInventorySync, WorkflowRunner, WorkflowRunnerInput, WorkflowRunnerResult, } from './node/factory-node.js';
|
|
30
|
+
export { assertInFactoryScope, factoryScopeSafety, isInFactoryScope, } from './safety/factory-scope.js';
|
|
31
|
+
export type { FactoryScopeSafety, NormalizedFactoryScopeSafety, } from './safety/factory-scope.js';
|
|
32
|
+
export { canonicalMountPaths, createWorkspaceScopedEventClient, deliveryTargetsFor, eventPathGlobsForIntegration, filesystemEventToChangeEvent, filterLinearPredicateSpecs, globMatchesPath, globSegmentMatches, hasLinearPredicates, integrationRelayFileSyncOptions, isLinearIssueEventPath, linearIssueMatchesPredicates, linearRecordCandidates, linearScopePredicates, normalizeChangePath, relayfileSdkPathFiltersFor, slackListenDms, subscriptionSpecsFor, } from './subscriptions/index.js';
|
|
33
|
+
export type { ConnectedIntegrationLike, DeliveryTargets, FilesystemEventLike, IntegrationRelayFileSyncOptionsInput, LinearPredicateSubscriptionSpec, LinearScopePredicates, LocalMountRoot, RelayfileEventClient, RelayFileSyncFactory, RelayFileSyncLike, SubscriptionSpec, TokenProvider, WatchRegistration, WorkspaceEventClientSource, WorkspaceScopedEventClientOptions, WorkspaceScopedSubscribeOptions, ChangeEvent as SubscriptionChangeEvent, } from './subscriptions/index.js';
|
|
34
|
+
export type { Capability, ChangeEvent, Clock, EventPage, MountClient, ProviderSyncStatus, SubscribeOptions, Subscription, AgentSpec, FleetClient, RestartPolicy, RosterEntry, SendInput, SpawnInput, SpawnResult, GithubRead, LinearWriteback, Logger, SlackWriteback, TelemetrySink, } from './ports/index.js';
|
|
35
|
+
export type { DispatchResult, Factory, FactoryEventPayload, FactoryInFlightRegistry, FactoryInFlightRegistryAgent, FactoryInFlightRegistryProcess, FactoryLoopHeartbeat, FactoryLoopLiveness, FactoryLoopRunOptions, FactoryLiveSubscriptionOptions, FactoryPorts, FactoryStartOptions, FactoryStatus, IssueRef, IterationReport, LinearIssue, ProbeCloser, ProbePrRef, ProbePrResolver, PrSummary, RepoMapEntry, TriageContext, TriageDecision, TriageEngine, } from './types.js';
|
|
32
36
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,18 +1,20 @@
|
|
|
1
1
|
export * from './webhook/index.js';
|
|
2
2
|
export * from './state/index.js';
|
|
3
|
-
export { FactoryConfigSchema, FACTORY_STATE_ROLES } from './config/schema';
|
|
4
|
-
export { resolveFactoryStates, stateResolutionFromIds, } from './linear/state-resolver';
|
|
5
|
-
export { linearByStatePath, linearCommentPath, linearIssuePath, } from './constants/linear';
|
|
6
|
-
export { slackMessagePath, slackReplyPath, } from './constants/slack';
|
|
7
|
-
export { agentSpecWithRenderedTask, mergePolicyLine, renderAgentTask, } from './dispatch/templates';
|
|
8
|
-
export { createFleet } from './fleet/create-fleet';
|
|
9
|
-
export {
|
|
10
|
-
export {
|
|
11
|
-
export {
|
|
12
|
-
export {
|
|
13
|
-
export {
|
|
14
|
-
export {
|
|
15
|
-
export {
|
|
16
|
-
export {
|
|
17
|
-
export {
|
|
3
|
+
export { FactoryConfigSchema, FACTORY_STATE_ROLES } from './config/schema.js';
|
|
4
|
+
export { resolveFactoryStates, stateResolutionFromIds, } from './linear/state-resolver.js';
|
|
5
|
+
export { linearByStatePath, linearCommentPath, linearIssuePath, } from './constants/linear.js';
|
|
6
|
+
export { slackMessagePath, slackReplyPath, } from './constants/slack.js';
|
|
7
|
+
export { agentSpecWithRenderedTask, mergePolicyLine, renderAgentTask, } from './dispatch/templates.js';
|
|
8
|
+
export { createFleet } from './fleet/create-fleet.js';
|
|
9
|
+
export { ensureRelayBroker } from './fleet/ensure-relay-broker.js';
|
|
10
|
+
export { InternalFleetClient } from './fleet/internal-fleet-client.js';
|
|
11
|
+
export { RelayFleetClient } from './fleet/relay-fleet-client.js';
|
|
12
|
+
export { RelayfileCloudMountClient, resolveFactoryWorkspace, } from './mount/relayfile-cloud-mount-client.js';
|
|
13
|
+
export { GhCliGithubMergeGate, GithubMergeGate, closeProbePr, defaultGhRunner, evaluateGithubMergeGate, } from './github/index.js';
|
|
14
|
+
export { BatchTracker, DEFAULT_FACTORY_LOOP_HEARTBEAT_PATH, DEFAULT_FACTORY_LOOP_REGISTRY_PATH, FactoryReaper, checkFactoryLoopLiveness, createFactory, FactoryLoop, issueKey, isRealLinearIssue, parseLinearIssue, readLinearIssueWithCanonicalFallback, readFactoryInFlightRegistry, readFactoryLoopHeartbeat, reapFactoryOrphansOnce, } from './orchestrator/index.js';
|
|
15
|
+
export { HeuristicTriage, LlmTriage, TieredTriage, TriageDecisionSchema, } from './triage/index.js';
|
|
16
|
+
export { linearCommentName, MountGithubRead, MountLinearWriteback, MountSlackWriteback, } from './writeback/index.js';
|
|
17
|
+
export { AGENT_RELAY_FACTORY_NODE_CONFIG_ENV, createFactoryNodeDefinition, DEFAULT_FACTORY_NODE_CONFIG_PATH, FACTORY_NODE_CONFIG_ENV, factoryNodeInventorySync, parseFactoryNodeConfig, readFactoryNodeConfigSync, resolveFactoryNodeConfigPath, runRelayflowsWorkflow, } from './node/factory-node.js';
|
|
18
|
+
export { assertInFactoryScope, factoryScopeSafety, isInFactoryScope, } from './safety/factory-scope.js';
|
|
19
|
+
export { canonicalMountPaths, createWorkspaceScopedEventClient, deliveryTargetsFor, eventPathGlobsForIntegration, filesystemEventToChangeEvent, filterLinearPredicateSpecs, globMatchesPath, globSegmentMatches, hasLinearPredicates, integrationRelayFileSyncOptions, isLinearIssueEventPath, linearIssueMatchesPredicates, linearRecordCandidates, linearScopePredicates, normalizeChangePath, relayfileSdkPathFiltersFor, slackListenDms, subscriptionSpecsFor, } from './subscriptions/index.js';
|
|
18
20
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,cAAc,oBAAoB,CAAA;AAClC,cAAc,kBAAkB,CAAA;AAEhC,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAC1E,OAAO,EACL,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,yBAAyB,CAAA;AAMhC,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,GAChB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EACL,gBAAgB,EAChB,cAAc,GACf,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,yBAAyB,EACzB,eAAe,EACf,eAAe,GAChB,MAAM,sBAAsB,CAAA;AAM7B,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAMlD,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAA;AAKnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAC7D,OAAO,EACL,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,sCAAsC,CAAA;AAO7C,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,YAAY,EACZ,eAAe,EACf,uBAAuB,GACxB,MAAM,UAAU,CAAA;AAYjB,OAAO,EACL,YAAY,EACZ,mCAAmC,EACnC,kCAAkC,EAClC,aAAa,EACb,wBAAwB,EACxB,aAAa,EACb,WAAW,EACX,QAAQ,EACR,iBAAiB,EACjB,gBAAgB,EAChB,2BAA2B,EAC3B,wBAAwB,EACxB,sBAAsB,GACvB,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EACL,eAAe,EACf,SAAS,EACT,YAAY,EACZ,oBAAoB,GACrB,MAAM,UAAU,CAAA;AAKjB,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,aAAa,CAAA;AAQpB,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,wBAAwB,CAAA;AAK/B,OAAO,EACL,mBAAmB,EACnB,gCAAgC,EAChC,kBAAkB,EAClB,4BAA4B,EAC5B,4BAA4B,EAC5B,0BAA0B,EAC1B,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,+BAA+B,EAC/B,sBAAsB,EACtB,4BAA4B,EAC5B,sBAAsB,EACtB,qBAAqB,EACrB,mBAAmB,EACnB,0BAA0B,EAC1B,cAAc,EACd,oBAAoB,GACrB,MAAM,iBAAiB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,cAAc,oBAAoB,CAAA;AAClC,cAAc,kBAAkB,CAAA;AAEhC,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAC1E,OAAO,EACL,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,yBAAyB,CAAA;AAMhC,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,GAChB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EACL,gBAAgB,EAChB,cAAc,GACf,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,yBAAyB,EACzB,eAAe,EACf,eAAe,GAChB,MAAM,sBAAsB,CAAA;AAM7B,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAMlD,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AAE/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAA;AAKnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAC7D,OAAO,EACL,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,sCAAsC,CAAA;AAO7C,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,YAAY,EACZ,eAAe,EACf,uBAAuB,GACxB,MAAM,UAAU,CAAA;AAYjB,OAAO,EACL,YAAY,EACZ,mCAAmC,EACnC,kCAAkC,EAClC,aAAa,EACb,wBAAwB,EACxB,aAAa,EACb,WAAW,EACX,QAAQ,EACR,iBAAiB,EACjB,gBAAgB,EAChB,oCAAoC,EACpC,2BAA2B,EAC3B,wBAAwB,EACxB,sBAAsB,GACvB,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EACL,eAAe,EACf,SAAS,EACT,YAAY,EACZ,oBAAoB,GACrB,MAAM,UAAU,CAAA;AAKjB,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,aAAa,CAAA;AAQpB,OAAO,EACL,mCAAmC,EACnC,2BAA2B,EAC3B,gCAAgC,EAChC,uBAAuB,EACvB,wBAAwB,EACxB,sBAAsB,EACtB,yBAAyB,EACzB,4BAA4B,EAC5B,qBAAqB,GACtB,MAAM,qBAAqB,CAAA;AAS5B,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,wBAAwB,CAAA;AAK/B,OAAO,EACL,mBAAmB,EACnB,gCAAgC,EAChC,kBAAkB,EAClB,4BAA4B,EAC5B,4BAA4B,EAC5B,0BAA0B,EAC1B,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,+BAA+B,EAC/B,sBAAsB,EACtB,4BAA4B,EAC5B,sBAAsB,EACtB,qBAAqB,EACrB,mBAAmB,EACnB,0BAA0B,EAC1B,cAAc,EACd,oBAAoB,GACrB,MAAM,iBAAiB,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type FactoryStateRole } from '../config/schema';
|
|
1
|
+
import { type FactoryStateRole } from '../config/schema.js';
|
|
2
2
|
export interface LinearStateReader {
|
|
3
3
|
readFile(path: string): Promise<{
|
|
4
4
|
content: unknown;
|
|
@@ -17,9 +17,10 @@ export interface FactoryStateResolution {
|
|
|
17
17
|
optionalIdFor(teamToken: string | undefined, role: FactoryStateRole): string | undefined;
|
|
18
18
|
roleOf(stateId: string | undefined): FactoryStateRole | undefined;
|
|
19
19
|
isRole(stateId: string | undefined, role: FactoryStateRole): boolean;
|
|
20
|
+
idForName(stateName: string | undefined, teamToken?: string): string | undefined;
|
|
20
21
|
hasHumanReview(teamToken?: string): boolean;
|
|
21
22
|
}
|
|
22
|
-
export declare function stateResolutionFromIds(stateIds: RoleIds): FactoryStateResolution;
|
|
23
|
+
export declare function stateResolutionFromIds(stateIds: RoleIds, stateNames?: RoleNames): FactoryStateResolution;
|
|
23
24
|
export declare function resolveFactoryStates(reader: LinearStateReader, input: ResolveFactoryStatesInput): Promise<FactoryStateResolution>;
|
|
24
25
|
export {};
|
|
25
26
|
//# sourceMappingURL=state-resolver.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state-resolver.d.ts","sourceRoot":"","sources":["../../src/linear/state-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAoB7E,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;CACtD;AAED,KAAK,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAA;AAC1D,KAAK,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAA;AAExD,MAAM,WAAW,yBAAyB;IAExC,MAAM,CAAC,EAAE,SAAS,CAAA;IAElB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;IAExC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAGlB,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;CAC1B;AAED,MAAM,WAAW,sBAAsB;IAIrC,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,gBAAgB,GAAG,MAAM,CAAA;IACpE,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,gBAAgB,GAAG,MAAM,GAAG,SAAS,CAAA;IAGxF,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,gBAAgB,GAAG,SAAS,CAAA;IACjE,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"state-resolver.d.ts","sourceRoot":"","sources":["../../src/linear/state-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAoB7E,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;CACtD;AAED,KAAK,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAA;AAC1D,KAAK,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAA;AAExD,MAAM,WAAW,yBAAyB;IAExC,MAAM,CAAC,EAAE,SAAS,CAAA;IAElB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;IAExC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAGlB,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;CAC1B;AAED,MAAM,WAAW,sBAAsB;IAIrC,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,gBAAgB,GAAG,MAAM,CAAA;IACpE,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,gBAAgB,GAAG,MAAM,GAAG,SAAS,CAAA;IAGxF,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,gBAAgB,GAAG,SAAS,CAAA;IACjE,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAA;IAIpE,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;IAEhF,cAAc,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;CAC5C;AAKD,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,OAAO,EAAE,UAAU,GAAE,SAAc,GAAG,sBAAsB,CA+B5G;AAgHD,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,iBAAiB,EACzB,KAAK,EAAE,yBAAyB,GAC/B,OAAO,CAAC,sBAAsB,CAAC,CA8IjC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FACTORY_STATE_ROLES } from '../config/schema';
|
|
1
|
+
import { FACTORY_STATE_ROLES } from '../config/schema.js';
|
|
2
2
|
// Roles the factory cannot operate without; humanReview is optional (the
|
|
3
3
|
// terminalState falls back to `done` when it is unset).
|
|
4
4
|
const REQUIRED_ROLES = [
|
|
@@ -15,12 +15,16 @@ const CATALOG_READ_CONCURRENCY = 10;
|
|
|
15
15
|
// Build a resolution from explicit, already-known UUIDs (no mount reads). Used
|
|
16
16
|
// as the back-compat / test path when names aren't configured: the global ids
|
|
17
17
|
// apply to every team. Lenient — unresolved roles only throw when used.
|
|
18
|
-
export function stateResolutionFromIds(stateIds) {
|
|
18
|
+
export function stateResolutionFromIds(stateIds, stateNames = {}) {
|
|
19
19
|
const roleById = new Map();
|
|
20
|
+
const idByName = new Map();
|
|
20
21
|
for (const role of FACTORY_STATE_ROLES) {
|
|
21
22
|
const id = stateIds[role];
|
|
22
23
|
if (id)
|
|
23
24
|
roleById.set(id, role);
|
|
25
|
+
const name = stateNames[role];
|
|
26
|
+
if (id && name)
|
|
27
|
+
idByName.set(norm(name), id);
|
|
24
28
|
}
|
|
25
29
|
return {
|
|
26
30
|
idFor(_teamToken, role) {
|
|
@@ -38,6 +42,9 @@ export function stateResolutionFromIds(stateIds) {
|
|
|
38
42
|
isRole(stateId, role) {
|
|
39
43
|
return Boolean(stateId) && roleById.get(stateId) === role;
|
|
40
44
|
},
|
|
45
|
+
idForName(stateName) {
|
|
46
|
+
return stateName ? idByName.get(norm(stateName)) : undefined;
|
|
47
|
+
},
|
|
41
48
|
hasHumanReview() {
|
|
42
49
|
return Boolean(stateIds.humanReview);
|
|
43
50
|
},
|
|
@@ -67,6 +74,13 @@ const unwrap = (value) => {
|
|
|
67
74
|
const str = (value) => (typeof value === 'string' && value ? value : undefined);
|
|
68
75
|
// Lazily load and cache the /linear/states catalog. Only invoked when at least
|
|
69
76
|
// one role is configured by name, so explicit-UUID setups never read it.
|
|
77
|
+
// The states catalog could not be read at all (e.g. /linear/states unreadable
|
|
78
|
+
// under the mount token). Distinct from a *resolution* failure (ambiguous name,
|
|
79
|
+
// cross-team, no match) so optional roles can tolerate an absent catalog without
|
|
80
|
+
// also swallowing genuine misconfiguration.
|
|
81
|
+
class CatalogUnavailableError extends Error {
|
|
82
|
+
}
|
|
83
|
+
const isCatalogUnavailable = (error) => error instanceof CatalogUnavailableError;
|
|
70
84
|
class StateCatalog {
|
|
71
85
|
reader;
|
|
72
86
|
#records;
|
|
@@ -81,7 +95,7 @@ class StateCatalog {
|
|
|
81
95
|
index = (await this.reader.readFile(STATES_INDEX_PATH)).content;
|
|
82
96
|
}
|
|
83
97
|
catch (error) {
|
|
84
|
-
throw new
|
|
98
|
+
throw new CatalogUnavailableError(`Cannot resolve Linear state names: ${STATES_INDEX_PATH} is unavailable ` +
|
|
85
99
|
`(${error instanceof Error ? error.message : String(error)}). ` +
|
|
86
100
|
`Deploy the workflow-states resource or pin stateIds (UUIDs) in config.`);
|
|
87
101
|
}
|
|
@@ -147,12 +161,36 @@ export async function resolveFactoryStates(reader, input) {
|
|
|
147
161
|
byTeamNames[norm(team)] = names;
|
|
148
162
|
}
|
|
149
163
|
// Resolve one role for one team token, applying precedence:
|
|
150
|
-
// per-team name > global name > explicit UUID.
|
|
151
|
-
|
|
164
|
+
// per-team name > global name > explicit UUID. When a name is configured but
|
|
165
|
+
// the states catalog is unavailable (e.g. /linear/states unreadable under the
|
|
166
|
+
// mount token), fall back to the pinned UUID rather than failing startup — the
|
|
167
|
+
// name still feeds the reverse name->id map below for read-side backfill.
|
|
168
|
+
// `tolerant` is for the team-less default pass when subscribed teams exist:
|
|
169
|
+
// each team is resolved authoritatively below, so a team-less ambiguity must
|
|
170
|
+
// not abort startup (addresses the global-default-forces-teamless-lookup P1).
|
|
171
|
+
const resolveRole = async (teamToken, role, tolerant) => {
|
|
152
172
|
const perTeamName = teamToken ? byTeamNames[norm(teamToken)]?.[role] : undefined;
|
|
153
173
|
const name = perTeamName ?? globalNames[role];
|
|
154
|
-
if (name)
|
|
155
|
-
|
|
174
|
+
if (name) {
|
|
175
|
+
try {
|
|
176
|
+
return await catalog.resolve(name, teamToken);
|
|
177
|
+
}
|
|
178
|
+
catch (error) {
|
|
179
|
+
// Fall back to the pinned UUID when the catalog can't resolve the name.
|
|
180
|
+
if (explicitIds[role])
|
|
181
|
+
return explicitIds[role];
|
|
182
|
+
// Best-effort team-less default pass: another team will fill this role.
|
|
183
|
+
if (tolerant)
|
|
184
|
+
return undefined;
|
|
185
|
+
// An OPTIONAL role (e.g. humanReview) tolerates an *absent* catalog
|
|
186
|
+
// (no /linear/states under the mount token) — but a real resolution
|
|
187
|
+
// failure (ambiguous name, cross-team, no match) must still surface, even
|
|
188
|
+
// for optional roles, rather than silently disabling the role.
|
|
189
|
+
if (!REQUIRED_ROLES.includes(role) && isCatalogUnavailable(error))
|
|
190
|
+
return undefined;
|
|
191
|
+
throw error;
|
|
192
|
+
}
|
|
193
|
+
}
|
|
156
194
|
return explicitIds[role];
|
|
157
195
|
};
|
|
158
196
|
// Dedupe team tokens by normalized form while keeping the first original
|
|
@@ -164,10 +202,10 @@ export async function resolveFactoryStates(reader, input) {
|
|
|
164
202
|
teamTokenByNorm.set(key, team);
|
|
165
203
|
}
|
|
166
204
|
const byTeam = new Map();
|
|
167
|
-
const resolveAllRoles = async (teamToken, enforce) => {
|
|
205
|
+
const resolveAllRoles = async (teamToken, enforce, tolerant = false) => {
|
|
168
206
|
const resolved = {};
|
|
169
207
|
for (const role of FACTORY_STATE_ROLES) {
|
|
170
|
-
const id = await resolveRole(teamToken, role);
|
|
208
|
+
const id = await resolveRole(teamToken, role, tolerant);
|
|
171
209
|
if (id)
|
|
172
210
|
resolved[role] = id;
|
|
173
211
|
}
|
|
@@ -182,8 +220,15 @@ export async function resolveFactoryStates(reader, input) {
|
|
|
182
220
|
// global config meant to fill it; a per-team-only setup leaves it best-effort
|
|
183
221
|
// (each subscribed team is enforced below, and idFor() throws at use if an
|
|
184
222
|
// unconfigured team's issue ever appears).
|
|
223
|
+
//
|
|
224
|
+
// When teams ARE configured, the team-less default pass is tolerant: the
|
|
225
|
+
// factory's default `linear.states` names are global, so resolving them
|
|
226
|
+
// team-lessly would be ambiguous in a multi-team workspace and wrongly fail
|
|
227
|
+
// startup — even though each subscribed team resolves cleanly. Per-team passes
|
|
228
|
+
// (below) are authoritative; the team-less default is only a fallback.
|
|
185
229
|
const hasGlobalConfig = Object.keys(globalNames).length > 0 || Object.keys(explicitIds).length > 0;
|
|
186
|
-
const
|
|
230
|
+
const hasTeamScopes = teamTokenByNorm.size > 0;
|
|
231
|
+
const defaultIds = await resolveAllRoles(undefined, hasGlobalConfig && !hasTeamScopes, hasTeamScopes);
|
|
187
232
|
for (const [key, team] of teamTokenByNorm) {
|
|
188
233
|
byTeam.set(key, await resolveAllRoles(team, true));
|
|
189
234
|
}
|
|
@@ -197,6 +242,22 @@ export async function resolveFactoryStates(reader, input) {
|
|
|
197
242
|
roleById.set(id, role);
|
|
198
243
|
}
|
|
199
244
|
}
|
|
245
|
+
// Reverse name->id map: lets a read path backfill the state UUID for issues
|
|
246
|
+
// whose synced payload only carries `state.name` (relayfile-adapters#205).
|
|
247
|
+
// Built from configured names paired with their resolved UUID (global + team).
|
|
248
|
+
const idByName = new Map();
|
|
249
|
+
const recordNames = (names, ids) => {
|
|
250
|
+
for (const role of FACTORY_STATE_ROLES) {
|
|
251
|
+
const name = names[role];
|
|
252
|
+
const id = ids[role];
|
|
253
|
+
if (name && id)
|
|
254
|
+
idByName.set(norm(name), id);
|
|
255
|
+
}
|
|
256
|
+
};
|
|
257
|
+
recordNames(globalNames, defaultIds);
|
|
258
|
+
for (const [key, team] of teamTokenByNorm) {
|
|
259
|
+
recordNames(byTeamNames[key] ?? {}, byTeam.get(key) ?? {});
|
|
260
|
+
}
|
|
200
261
|
return {
|
|
201
262
|
idFor(teamToken, role) {
|
|
202
263
|
const id = idsFor(teamToken)[role];
|
|
@@ -213,6 +274,9 @@ export async function resolveFactoryStates(reader, input) {
|
|
|
213
274
|
isRole(stateId, role) {
|
|
214
275
|
return Boolean(stateId) && roleById.get(stateId) === role;
|
|
215
276
|
},
|
|
277
|
+
idForName(stateName) {
|
|
278
|
+
return stateName ? idByName.get(norm(stateName)) : undefined;
|
|
279
|
+
},
|
|
216
280
|
hasHumanReview(teamToken) {
|
|
217
281
|
return Boolean(idsFor(teamToken).humanReview);
|
|
218
282
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state-resolver.js","sourceRoot":"","sources":["../../src/linear/state-resolver.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"state-resolver.js","sourceRoot":"","sources":["../../src/linear/state-resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@ interface EnsureLocalMountOptions {
|
|
|
2
2
|
stateWaitTimeoutMs?: number;
|
|
3
3
|
stateWaitPollMs?: number;
|
|
4
4
|
acceptableWorkspaceIds?: readonly string[];
|
|
5
|
+
refreshStaleMount?: boolean;
|
|
5
6
|
}
|
|
6
7
|
export declare function ensureLocalMount(workspaceId: string, startDir: string, options?: EnsureLocalMountOptions): Promise<void>;
|
|
7
8
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local-mount-preflight.d.ts","sourceRoot":"","sources":["../../src/mount/local-mount-preflight.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"local-mount-preflight.d.ts","sourceRoot":"","sources":["../../src/mount/local-mount-preflight.ts"],"names":[],"mappings":"AAiBA,UAAU,uBAAuB;IAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAA;IAIxB,sBAAsB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IAM1C,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAC5B;AAED,wBAAsB,gBAAgB,CACpC,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,IAAI,CAAC,CA4Cf"}
|
|
@@ -1,8 +1,16 @@
|
|
|
1
1
|
import { readFile } from 'node:fs/promises';
|
|
2
2
|
import { join } from 'node:path';
|
|
3
3
|
import { spawn } from 'node:child_process';
|
|
4
|
-
import { checkMountStaleness, resolveRelayfileMountBinary } from './relayfile-binary';
|
|
4
|
+
import { checkMountStaleness, coercePid, resolveRelayfileCli, resolveRelayfileMountBinary } from './relayfile-binary.js';
|
|
5
5
|
const STATE_FILE = '.integrations/.relay/state.json';
|
|
6
|
+
// How long to wait for a freshly-spawned mount to write a valid state.json
|
|
7
|
+
// (workspace match + a live pid). A CLI mount over a large `.integrations` tree
|
|
8
|
+
// can take well over 10s to complete its FIRST reconcile (early cycles hit
|
|
9
|
+
// `context deadline exceeded` while it materializes the tree), so a 10s wait
|
|
10
|
+
// reported a spurious "did not become ready" on a mount that was simply still
|
|
11
|
+
// bootstrapping. 60s covers that without blocking startup indefinitely. Callers
|
|
12
|
+
// can still override via `stateWaitTimeoutMs`.
|
|
13
|
+
const DEFAULT_STATE_READY_TIMEOUT_MS = 60_000;
|
|
6
14
|
export async function ensureLocalMount(workspaceId, startDir, options = {}) {
|
|
7
15
|
const stateFilePath = join(startDir, STATE_FILE);
|
|
8
16
|
if (!(await isMountStatePresent(stateFilePath))) {
|
|
@@ -11,9 +19,26 @@ export async function ensureLocalMount(workspaceId, startDir, options = {}) {
|
|
|
11
19
|
return;
|
|
12
20
|
}
|
|
13
21
|
const staleness = checkMountStaleness(stateFilePath, workspaceId, options.acceptableWorkspaceIds);
|
|
14
|
-
if (staleness.stale)
|
|
15
|
-
|
|
16
|
-
|
|
22
|
+
if (!staleness.stale)
|
|
23
|
+
return;
|
|
24
|
+
const suffix = staleness.reason !== undefined ? ` (${staleness.reason})` : '';
|
|
25
|
+
const manualHint = `Run: relayfile stop && relayfile start ${workspaceId} .integrations --background`;
|
|
26
|
+
if (options.refreshStaleMount === false) {
|
|
27
|
+
process.stderr.write(`[factory] local mount is stale${suffix}; writeback may not propagate. ${manualHint}\n`);
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
// Self-heal: re-spawn the mount so writebacks propagate, rather than silently
|
|
31
|
+
// shipping them into a stale mirror. spawnMount runs the relayfile-mount
|
|
32
|
+
// binary with --rehome, which re-establishes the mount in place.
|
|
33
|
+
process.stderr.write(`[factory] local mount is stale${suffix}; refreshing\n`);
|
|
34
|
+
try {
|
|
35
|
+
await spawnMount(workspaceId, startDir);
|
|
36
|
+
await waitForStateFile(stateFilePath, workspaceId, options.stateWaitTimeoutMs, options.stateWaitPollMs, options.acceptableWorkspaceIds);
|
|
37
|
+
process.stderr.write('[factory] local mount refreshed\n');
|
|
38
|
+
}
|
|
39
|
+
catch (error) {
|
|
40
|
+
const reason = error instanceof Error ? error.message : String(error);
|
|
41
|
+
process.stderr.write(`[factory] local mount is stale${suffix} and auto-refresh failed (${reason}); writeback may not propagate. ${manualHint}\n`);
|
|
17
42
|
}
|
|
18
43
|
}
|
|
19
44
|
async function isMountStatePresent(stateFilePath) {
|
|
@@ -27,9 +52,34 @@ async function isMountStatePresent(stateFilePath) {
|
|
|
27
52
|
}
|
|
28
53
|
}
|
|
29
54
|
async function spawnMount(workspaceId, startDir) {
|
|
30
|
-
|
|
55
|
+
// Prefer the relayfile CLI: it resolves workspace credentials itself (the raw
|
|
56
|
+
// relayfile-mount binary requires a --token the factory has no clean way to
|
|
57
|
+
// supply) and bundles an up-to-date mount, so the factory can self-start the
|
|
58
|
+
// writeback mount unattended. Fall back to the raw binary only when no CLI is
|
|
59
|
+
// available.
|
|
60
|
+
const cli = resolveRelayfileCli();
|
|
61
|
+
if (cli) {
|
|
62
|
+
await spawnMountViaCli(cli, workspaceId, startDir);
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
await spawnMountViaRawBinary(workspaceId, startDir);
|
|
66
|
+
}
|
|
67
|
+
async function spawnMountViaCli(cli, workspaceId, startDir) {
|
|
68
|
+
// Best-effort stop first so a stale/dead mount registration does not make
|
|
69
|
+
// `start` reject (matches the documented `relayfile stop && relayfile start`
|
|
70
|
+
// recovery). A no-op when nothing is mounted here.
|
|
71
|
+
await runRelayfile(cli, ['stop'], startDir, workspaceId).catch(() => { });
|
|
72
|
+
await runRelayfile(cli, ['start', workspaceId, '.integrations', '--background'], startDir, workspaceId);
|
|
73
|
+
}
|
|
74
|
+
async function spawnMountViaRawBinary(workspaceId, startDir) {
|
|
75
|
+
// Search from the deployment dir (where factory.config.json + the bundled
|
|
76
|
+
// @relayfile/mount live), not this module's install location.
|
|
77
|
+
const binaryPath = resolveRelayfileMountBinary(startDir);
|
|
78
|
+
await runRelayfile(binaryPath, ['start', workspaceId, '.integrations', '--background', '--rehome'], startDir, workspaceId);
|
|
79
|
+
}
|
|
80
|
+
function runRelayfile(command, args, startDir, workspaceId) {
|
|
31
81
|
return new Promise((resolve, reject) => {
|
|
32
|
-
const child = spawn(
|
|
82
|
+
const child = spawn(command, args, {
|
|
33
83
|
cwd: startDir,
|
|
34
84
|
stdio: ['ignore', 'ignore', 'pipe'],
|
|
35
85
|
});
|
|
@@ -44,17 +94,17 @@ async function spawnMount(workspaceId, startDir) {
|
|
|
44
94
|
return;
|
|
45
95
|
}
|
|
46
96
|
if (code !== 0) {
|
|
47
|
-
reject(new Error(`[factory] relayfile mount
|
|
97
|
+
reject(new Error(`[factory] relayfile mount ${args[0]} failed (exit ${code ?? 'null'}): ${stderr.trim()}`));
|
|
48
98
|
return;
|
|
49
99
|
}
|
|
50
100
|
resolve();
|
|
51
101
|
});
|
|
52
102
|
child.on('error', (err) => {
|
|
53
|
-
reject(new Error(`[factory] relayfile mount
|
|
103
|
+
reject(new Error(`[factory] relayfile mount ${args[0]} error: ${err.message}`));
|
|
54
104
|
});
|
|
55
105
|
});
|
|
56
106
|
}
|
|
57
|
-
async function waitForStateFile(stateFilePath, workspaceId, timeoutMs =
|
|
107
|
+
async function waitForStateFile(stateFilePath, workspaceId, timeoutMs = DEFAULT_STATE_READY_TIMEOUT_MS, pollMs = 200, acceptableWorkspaceIds = []) {
|
|
58
108
|
const deadline = Date.now() + timeoutMs;
|
|
59
109
|
let lastInvalidReason = 'state file was not created';
|
|
60
110
|
while (Date.now() < deadline) {
|
|
@@ -83,12 +133,14 @@ function isValidMountState(value, workspaceId, acceptableWorkspaceIds = []) {
|
|
|
83
133
|
return false;
|
|
84
134
|
const state = value;
|
|
85
135
|
const accepted = new Set([workspaceId, ...acceptableWorkspaceIds]);
|
|
136
|
+
// A CLI-daemonized mount (`relayfile start --background`) records its pid under
|
|
137
|
+
// `daemon.pid`, not the top-level `pid` — accept either, matching
|
|
138
|
+
// checkMountStaleness (else a freshly-started CLI mount is never confirmed ready).
|
|
139
|
+
const pid = coercePid(state.pid) ?? coercePid(state.daemon?.pid);
|
|
86
140
|
return typeof state.workspaceId === 'string' && accepted.has(state.workspaceId) &&
|
|
87
141
|
typeof state.lastReconcileAt === 'string' &&
|
|
88
142
|
Number.isFinite(Date.parse(state.lastReconcileAt)) &&
|
|
89
|
-
|
|
90
|
-
Number.isInteger(state.pid) &&
|
|
91
|
-
state.pid > 0;
|
|
143
|
+
pid !== undefined;
|
|
92
144
|
}
|
|
93
145
|
const isAuthError = (stderr) => stderr.includes('workspace join') ||
|
|
94
146
|
stderr.includes('unauthorized') ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local-mount-preflight.js","sourceRoot":"","sources":["../../src/mount/local-mount-preflight.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAE1C,OAAO,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"local-mount-preflight.js","sourceRoot":"","sources":["../../src/mount/local-mount-preflight.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
+
export declare function coercePid(value: unknown): number | undefined;
|
|
1
2
|
export declare function resolveRelayfileMountBinary(startDir?: string): string;
|
|
3
|
+
export declare function resolveRelayfileCli(): string | undefined;
|
|
2
4
|
export declare function checkMountStaleness(stateFilePath: string, workspaceId: string, acceptableWorkspaceIds?: readonly string[]): {
|
|
3
5
|
stale: boolean;
|
|
4
6
|
reason?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relayfile-binary.d.ts","sourceRoot":"","sources":["../../src/mount/relayfile-binary.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"relayfile-binary.d.ts","sourceRoot":"","sources":["../../src/mount/relayfile-binary.ts"],"names":[],"mappings":"AAqBA,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAE5D;AAgED,wBAAgB,2BAA2B,CAAC,QAAQ,SAAa,GAAG,MAAM,CAqBzE;AAWD,wBAAgB,mBAAmB,IAAI,MAAM,GAAG,SAAS,CAYxD;AAED,wBAAgB,mBAAmB,CACjC,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,EAKnB,sBAAsB,GAAE,SAAS,MAAM,EAAO,GAC7C;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,CA8DnD"}
|