@sema-agent/core
Version:
Stateless, task-oriented AI agent core
17 lines (16 loc) • 443 B
JavaScript
export function defaultSequentialRunner(_name, fn) {
return fn();
}
export function beginContract(runAssertion = defaultSequentialRunner) {
const pending = [];
return {
run: (name, fn) => {
const result = runAssertion(name, fn);
if (result instanceof Promise)
pending.push(result);
},
settle: async () => {
await Promise.all(pending);
},
};
}