Skip to content

Commit 48c1c4f

Browse files
authored
Merge pull request #6 from Multiplier-Labs/fix/remove-local-scripts
Remove local scripts, fix workflow loader path resolution
2 parents 3162dc5 + 6a8659a commit 48c1c4f

File tree

2 files changed

+27
-7
lines changed

2 files changed

+27
-7
lines changed

server/workflow-loader.ts

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,15 @@ function parseMdWorkflow(content: string, sourcePath: string): WorkflowDef {
8787
// File discovery
8888
// ---------------------------------------------------------------------------
8989

90-
const WORKFLOWS_DIR = join(dirname(fileURLToPath(import.meta.url)), 'workflows')
90+
/**
91+
* Resolve the workflows directory. When running from dist/ (compiled JS),
92+
* the MD files live one level up in server/workflows/. When running from
93+
* source (ts-node / tsx), they're a sibling directory.
94+
*/
95+
const __ownDir = dirname(fileURLToPath(import.meta.url))
96+
const WORKFLOWS_DIR = existsSync(join(__ownDir, 'workflows'))
97+
? join(__ownDir, 'workflows')
98+
: join(__ownDir, '..', 'workflows')
9199

92100
/** Load all *.md files from the built-in server/workflows/ directory. */
93101
function loadBuiltinWorkflows(): WorkflowDef[] {

src/hooks/useWorkflows.ts

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -82,18 +82,30 @@ export function useWorkflows(token: string): UseWorkflowsResult {
8282
}, [refresh, intervalMs])
8383

8484
const triggerRun = useCallback(async (kind: string, input?: Record<string, unknown>) => {
85-
await apiTriggerRun(token, kind, input)
86-
await refresh()
85+
try {
86+
await apiTriggerRun(token, kind, input)
87+
await refresh()
88+
} catch (err) {
89+
setError(err instanceof Error ? err.message : 'Failed to trigger run')
90+
}
8791
}, [token, refresh])
8892

8993
const cancelRun = useCallback(async (runId: string) => {
90-
await apiCancelRun(token, runId)
91-
await refresh()
94+
try {
95+
await apiCancelRun(token, runId)
96+
await refresh()
97+
} catch (err) {
98+
setError(err instanceof Error ? err.message : 'Failed to cancel run')
99+
}
92100
}, [token, refresh])
93101

94102
const triggerSchedule = useCallback(async (id: string) => {
95-
await apiTriggerSchedule(token, id)
96-
await refresh()
103+
try {
104+
await apiTriggerSchedule(token, id)
105+
await refresh()
106+
} catch (err) {
107+
setError(err instanceof Error ? err.message : 'Failed to trigger schedule')
108+
}
97109
}, [token, refresh])
98110

99111
const addRepo = useCallback(async (repo: ReviewRepoConfig) => {

0 commit comments

Comments
 (0)