@sema-agent/core 1.316.0 → 1.317.0

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.
Files changed (32) hide show
  1. package/dist/agents/subagent.d.ts +1 -0
  2. package/dist/agents/subagent.d.ts.map +1 -1
  3. package/dist/agents/subagent.js +16 -3
  4. package/dist/agents/subagent.js.map +1 -1
  5. package/dist/core/runner/prepare-task.d.ts +2 -0
  6. package/dist/core/runner/prepare-task.d.ts.map +1 -1
  7. package/dist/core/runner/prepare-task.js +16 -13
  8. package/dist/core/runner/prepare-task.js.map +1 -1
  9. package/dist/core/runner/runtask.d.ts.map +1 -1
  10. package/dist/core/runner/runtask.js +53 -14
  11. package/dist/core/runner/runtask.js.map +1 -1
  12. package/dist/core/runner/turn-attachments.d.ts +8 -0
  13. package/dist/core/runner/turn-attachments.d.ts.map +1 -1
  14. package/dist/core/runner/turn-attachments.js +60 -2
  15. package/dist/core/runner/turn-attachments.js.map +1 -1
  16. package/dist/index.d.ts +3 -1
  17. package/dist/index.d.ts.map +1 -1
  18. package/dist/index.js +2 -0
  19. package/dist/index.js.map +1 -1
  20. package/dist/prompt-assembly/epoch.d.ts.map +1 -1
  21. package/dist/prompt-assembly/epoch.js +0 -0
  22. package/dist/prompt-assembly/epoch.js.map +1 -1
  23. package/dist/prompt-assembly/packs/sema-default.d.ts.map +1 -1
  24. package/dist/prompt-assembly/packs/sema-default.js +2 -0
  25. package/dist/prompt-assembly/packs/sema-default.js.map +1 -1
  26. package/dist/prompt-assembly/types.d.ts +1 -0
  27. package/dist/prompt-assembly/types.d.ts.map +1 -1
  28. package/dist/prompts/coordinator.d.ts +3 -0
  29. package/dist/prompts/coordinator.d.ts.map +1 -0
  30. package/dist/prompts/coordinator.js +200 -0
  31. package/dist/prompts/coordinator.js.map +1 -0
  32. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"runtask.d.ts","sourceRoot":"","sources":["../../../src/core/runner/runtask.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtask.d.ts","sourceRoot":"","sources":["../../../src/core/runner/runtask.ts"],"names":[],"mappings":"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"}
@@ -24,7 +24,7 @@ import { toImageContent } from "./image.js";
24
24
  import { OUTPUT_TOOL_NAME, SKILLS_LISTING_PROBE_HEADER, resolveOutputRetries } from "./synthetic-tools.js";
25
25
  import { cacheFamilyOf, usageCostMicroUsd } from "./usage-accounting.js";
26
26
  import { assembleResult, errorCodeOf } from "./assemble-result.js";
27
- import { ATTACHMENT_BYTE_CAP, CHANGED_FILES_MAX, SKILLS_LISTING_DELTA_HEADER, advanceCadenceClock, agentListingDeltaHeader, agentListingInitialHeader, collectDateChange, collectDueAttachments, collectInstructionsChange, commitAgentListing, commitInstructionsChange, commitSkillsListing, createAttachmentState, rebaseCadenceWindows, reduceToolEnd, renderAgentListingDelta, renderMcpInstructionsDelta, renderOrphanedBackgroundTasks, renderSkillsListingDelta, renderToolsDelta, stampWriteAnchor } from "./turn-attachments.js";
27
+ import { ATTACHMENT_BYTE_CAP, CHANGED_FILES_MAX, AGENT_LISTING_REMOVED_HEADER, SKILLS_LISTING_DELTA_HEADER, SKILLS_LISTING_REMOVED_HEADER, advanceCadenceClock, agentListingDeltaHeader, agentListingInitialHeader, replayAnnouncedListing, replayAnnouncedModels, collectDateChange, collectDueAttachments, collectInstructionsChange, commitAgentListing, commitInstructionsChange, commitSkillsListing, createAttachmentState, rebaseCadenceWindows, reduceToolEnd, renderAgentListingDelta, renderMcpInstructionsDelta, renderOrphanedBackgroundTasks, renderSkillsListingDelta, renderToolsDelta, stampWriteAnchor } from "./turn-attachments.js";
28
28
  import { prepareTask } from "./prepare-task.js";
29
29
  import { hasVerifiableStructureSignal } from "./grounding-signal.js";
30
30
  import { hasDestroy, isIsolated } from "../remote-env.js";
@@ -863,16 +863,34 @@ export class Runner {
863
863
  return "";
864
864
  };
865
865
  let branchTexts = null;
866
- const branchIncludes = async (headers) => {
866
+ const branchLoad = async () => {
867
+ if (branchTexts === null) {
868
+ const branch = await prepared.session.getBranch();
869
+ branchTexts = branch.flatMap((e) => {
870
+ if (e.type !== "message")
871
+ return [];
872
+ const m = e.message;
873
+ if (m.role !== "user")
874
+ return [];
875
+ const full = textOf(e.message);
876
+ if (m.engineMinted === true)
877
+ return [full];
878
+ if (Array.isArray(m.engineSegments) && m.engineSegments.length > 0) {
879
+ return m.engineSegments.map((s) => full.slice(Math.max(0, s.start), Math.max(0, s.end)));
880
+ }
881
+ if (typeof m.enginePrefixChars === "number" && m.enginePrefixChars > 0)
882
+ return [full.slice(0, m.enginePrefixChars)];
883
+ return [];
884
+ });
885
+ }
886
+ return branchTexts;
887
+ };
888
+ const branchReplay = async (headers) => {
867
889
  try {
868
- if (branchTexts === null) {
869
- const branch = await prepared.session.getBranch();
870
- branchTexts = branch.flatMap((e) => (e.type === "message" ? [textOf(e.message)] : []));
871
- }
872
- return branchTexts.some((text) => headers.some((h) => text.includes(h)));
890
+ return replayAnnouncedListing(await branchLoad(), headers);
873
891
  }
874
892
  catch {
875
- return false;
893
+ return undefined;
876
894
  }
877
895
  };
878
896
  if (agentListingOn && prepared.agentListing?.seedAnnounced === true) {
@@ -886,9 +904,22 @@ export class Runner {
886
904
  prepared.announcedListingsRef.models = [...cpListings.models];
887
905
  }
888
906
  }
889
- else if (await branchIncludes([agentListingInitialHeader(listing.toolName), agentListingDeltaHeader(listing.toolName)])) {
890
- attachState.announcedAgentTypes = new Map(listing.entries.map((e) => [e.name, e.description]));
891
- prepared.announcedListingsRef.agents = listing.entries.map((e) => e.name);
907
+ else {
908
+ const replayed = await branchReplay({
909
+ initial: agentListingInitialHeader(listing.toolName),
910
+ delta: agentListingDeltaHeader(listing.toolName),
911
+ removed: AGENT_LISTING_REMOVED_HEADER,
912
+ });
913
+ if (replayed !== undefined) {
914
+ const descOf = new Map(listing.entries.map((e) => [e.name, e.description]));
915
+ attachState.announcedAgentTypes = new Map([...replayed].map((n) => [n, descOf.get(n) ?? ""]));
916
+ prepared.announcedListingsRef.agents = [...replayed];
917
+ const replayedModels = replayAnnouncedModels(await branchLoad());
918
+ if (replayedModels !== undefined) {
919
+ attachState.announcedModels = [...replayedModels];
920
+ prepared.announcedListingsRef.models = [...replayedModels];
921
+ }
922
+ }
892
923
  }
893
924
  }
894
925
  if (skillsListingOn && prepared.skillsListing?.seedAnnounced === true) {
@@ -898,9 +929,17 @@ export class Runner {
898
929
  attachState.announcedSkills = new Map(cpListings.skills.map((n) => [n, descOf.get(n) ?? ""]));
899
930
  prepared.announcedListingsRef.skills = [...cpListings.skills];
900
931
  }
901
- else if (await branchIncludes([SKILLS_LISTING_PROBE_HEADER, SKILLS_LISTING_DELTA_HEADER])) {
902
- attachState.announcedSkills = new Map(listing.entries.map((e) => [e.name, e.description]));
903
- prepared.announcedListingsRef.skills = listing.entries.map((e) => e.name);
932
+ else {
933
+ const replayed = await branchReplay({
934
+ initial: SKILLS_LISTING_PROBE_HEADER,
935
+ delta: SKILLS_LISTING_DELTA_HEADER,
936
+ removed: SKILLS_LISTING_REMOVED_HEADER,
937
+ });
938
+ if (replayed !== undefined) {
939
+ const descOf = new Map(listing.entries.map((e) => [e.name, e.description]));
940
+ attachState.announcedSkills = new Map([...replayed].map((n) => [n, descOf.get(n) ?? ""]));
941
+ prepared.announcedListingsRef.skills = [...replayed];
942
+ }
904
943
  }
905
944
  }
906
945
  }