chore(release): lock runtime 0.0.35

This commit is contained in:
777genius 2026-05-18 02:08:36 +03:00
parent 7742c528ad
commit 0800f8a06e
2 changed files with 75 additions and 12 deletions

View file

@ -1,27 +1,27 @@
{ {
"version": "0.0.34", "version": "0.0.35",
"sourceRef": "v0.0.34", "sourceRef": "v0.0.35",
"sourceRepository": "777genius/agent_teams_orchestrator", "sourceRepository": "777genius/agent_teams_orchestrator",
"releaseRepository": "777genius/agent-teams-ai", "releaseRepository": "777genius/agent-teams-ai",
"releaseTag": "v2.0.0", "releaseTag": "v2.0.0",
"assets": { "assets": {
"darwin-arm64": { "darwin-arm64": {
"file": "agent-teams-runtime-darwin-arm64-v0.0.34.tar.gz", "file": "agent-teams-runtime-darwin-arm64-v0.0.35.tar.gz",
"archiveKind": "tar.gz", "archiveKind": "tar.gz",
"binaryName": "claude-multimodel" "binaryName": "claude-multimodel"
}, },
"darwin-x64": { "darwin-x64": {
"file": "agent-teams-runtime-darwin-x64-v0.0.34.tar.gz", "file": "agent-teams-runtime-darwin-x64-v0.0.35.tar.gz",
"archiveKind": "tar.gz", "archiveKind": "tar.gz",
"binaryName": "claude-multimodel" "binaryName": "claude-multimodel"
}, },
"linux-x64": { "linux-x64": {
"file": "agent-teams-runtime-linux-x64-v0.0.34.tar.gz", "file": "agent-teams-runtime-linux-x64-v0.0.35.tar.gz",
"archiveKind": "tar.gz", "archiveKind": "tar.gz",
"binaryName": "claude-multimodel" "binaryName": "claude-multimodel"
}, },
"win32-x64": { "win32-x64": {
"file": "agent-teams-runtime-win32-x64-v0.0.34.zip", "file": "agent-teams-runtime-win32-x64-v0.0.35.zip",
"archiveKind": "zip", "archiveKind": "zip",
"binaryName": "claude-multimodel.exe" "binaryName": "claude-multimodel.exe"
} }

View file

@ -101,6 +101,26 @@ interface MemberCardProps {
} }
const MEMBER_ROW_SURFACE_BLEED_CLASS = '-mx-[calc(1rem-5px)] px-[calc(1rem-5px)]'; const MEMBER_ROW_SURFACE_BLEED_CLASS = '-mx-[calc(1rem-5px)] px-[calc(1rem-5px)]';
const RUNTIME_TELEMETRY_TOOLTIP_DELAY_MS = 1000;
const RUNTIME_TELEMETRY_TOOLTIP_OPEN_EVENT = 'member-runtime-telemetry-tooltip-open';
let runtimeTelemetryTooltipIdSequence = 0;
function createRuntimeTelemetryTooltipId(): string {
runtimeTelemetryTooltipIdSequence += 1;
return `runtime-telemetry-tooltip-${runtimeTelemetryTooltipIdSequence}`;
}
function notifyRuntimeTelemetryTooltipOpen(id: string): void {
if (typeof window === 'undefined') {
return;
}
window.dispatchEvent(
new CustomEvent<{ id: string }>(RUNTIME_TELEMETRY_TOOLTIP_OPEN_EVENT, {
detail: { id },
})
);
}
function splitRuntimeSummaryMemory(runtimeSummary: string | undefined): { function splitRuntimeSummaryMemory(runtimeSummary: string | undefined): {
summary: string | undefined; summary: string | undefined;
@ -691,6 +711,11 @@ export const MemberCard = memo(function MemberCard({
const runtimeTelemetryTitle = buildRuntimeTelemetryTitle(runtimeEntry); const runtimeTelemetryTitle = buildRuntimeTelemetryTitle(runtimeEntry);
const showRuntimeTelemetryTooltip = Boolean(runtimeTelemetryTitle); const showRuntimeTelemetryTooltip = Boolean(runtimeTelemetryTitle);
const rowTitle = showRuntimeTelemetryTooltip ? undefined : activityTitle; const rowTitle = showRuntimeTelemetryTooltip ? undefined : activityTitle;
const runtimeTelemetryTooltipIdRef = useRef<string | null>(null);
if (runtimeTelemetryTooltipIdRef.current == null) {
runtimeTelemetryTooltipIdRef.current = createRuntimeTelemetryTooltipId();
}
const runtimeTelemetryTooltipId = runtimeTelemetryTooltipIdRef.current;
const runtimeTelemetryTooltipTimerRef = useRef<ReturnType<typeof setTimeout> | null>(null); const runtimeTelemetryTooltipTimerRef = useRef<ReturnType<typeof setTimeout> | null>(null);
const [runtimeTelemetryTooltipOpen, setRuntimeTelemetryTooltipOpen] = useState(false); const [runtimeTelemetryTooltipOpen, setRuntimeTelemetryTooltipOpen] = useState(false);
const clearRuntimeTelemetryTooltipTimer = useCallback(() => { const clearRuntimeTelemetryTooltipTimer = useCallback(() => {
@ -700,11 +725,15 @@ export const MemberCard = memo(function MemberCard({
clearTimeout(runtimeTelemetryTooltipTimerRef.current); clearTimeout(runtimeTelemetryTooltipTimerRef.current);
runtimeTelemetryTooltipTimerRef.current = null; runtimeTelemetryTooltipTimerRef.current = null;
}, []); }, []);
const closeRuntimeTelemetryTooltip = useCallback(() => {
clearRuntimeTelemetryTooltipTimer();
setRuntimeTelemetryTooltipOpen(false);
}, [clearRuntimeTelemetryTooltipTimer]);
const handleRuntimeTelemetryTooltipOpenChange = useCallback( const handleRuntimeTelemetryTooltipOpenChange = useCallback(
(nextOpen: boolean) => { (nextOpen: boolean) => {
clearRuntimeTelemetryTooltipTimer(); clearRuntimeTelemetryTooltipTimer();
if (!nextOpen) { if (!nextOpen) {
setRuntimeTelemetryTooltipOpen(false); closeRuntimeTelemetryTooltip();
return; return;
} }
if (runtimeTelemetryTooltipOpen) { if (runtimeTelemetryTooltipOpen) {
@ -712,10 +741,16 @@ export const MemberCard = memo(function MemberCard({
} }
runtimeTelemetryTooltipTimerRef.current = setTimeout(() => { runtimeTelemetryTooltipTimerRef.current = setTimeout(() => {
runtimeTelemetryTooltipTimerRef.current = null; runtimeTelemetryTooltipTimerRef.current = null;
notifyRuntimeTelemetryTooltipOpen(runtimeTelemetryTooltipId);
setRuntimeTelemetryTooltipOpen(true); setRuntimeTelemetryTooltipOpen(true);
}, 1000); }, RUNTIME_TELEMETRY_TOOLTIP_DELAY_MS);
}, },
[clearRuntimeTelemetryTooltipTimer, runtimeTelemetryTooltipOpen] [
clearRuntimeTelemetryTooltipTimer,
closeRuntimeTelemetryTooltip,
runtimeTelemetryTooltipId,
runtimeTelemetryTooltipOpen,
]
); );
useEffect( useEffect(
() => () => { () => () => {
@ -725,10 +760,37 @@ export const MemberCard = memo(function MemberCard({
); );
useEffect(() => { useEffect(() => {
if (!showRuntimeTelemetryTooltip) { if (!showRuntimeTelemetryTooltip) {
clearRuntimeTelemetryTooltipTimer(); closeRuntimeTelemetryTooltip();
setRuntimeTelemetryTooltipOpen(false);
} }
}, [clearRuntimeTelemetryTooltipTimer, showRuntimeTelemetryTooltip]); }, [closeRuntimeTelemetryTooltip, showRuntimeTelemetryTooltip]);
useEffect(() => {
if (!showRuntimeTelemetryTooltip || typeof window === 'undefined') {
return;
}
const closeWhenAnotherRuntimeTooltipOpens = (event: Event): void => {
const nextId = (event as CustomEvent<{ id?: string }>).detail?.id;
if (nextId && nextId !== runtimeTelemetryTooltipId) {
closeRuntimeTelemetryTooltip();
}
};
window.addEventListener(
RUNTIME_TELEMETRY_TOOLTIP_OPEN_EVENT,
closeWhenAnotherRuntimeTooltipOpens
);
return () => {
window.removeEventListener(
RUNTIME_TELEMETRY_TOOLTIP_OPEN_EVENT,
closeWhenAnotherRuntimeTooltipOpens
);
};
}, [closeRuntimeTelemetryTooltip, runtimeTelemetryTooltipId, showRuntimeTelemetryTooltip]);
const handleRuntimeTelemetryPointerLeave = useCallback(() => {
if (showRuntimeTelemetryTooltip) {
closeRuntimeTelemetryTooltip();
}
}, [closeRuntimeTelemetryTooltip, showRuntimeTelemetryTooltip]);
const showStartingSkeleton = const showStartingSkeleton =
!isRemoved && !isRemoved &&
presenceLabel === 'starting' && presenceLabel === 'starting' &&
@ -894,6 +956,7 @@ export const MemberCard = memo(function MemberCard({
isRemoved && 'opacity-50', isRemoved && 'opacity-50',
spawnCardClass spawnCardClass
)} )}
onPointerLeave={handleRuntimeTelemetryPointerLeave}
> >
<div <div
className={cn( className={cn(