github-issue-tower-defence-management 1.146.5 → 1.146.7

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 (54) hide show
  1. package/.github/dependabot.yml +2 -0
  2. package/.github/workflows/commit-lint.yml +20 -0
  3. package/.github/workflows/umino-project.yml +0 -1
  4. package/CHANGELOG.md +14 -0
  5. package/bin/adapter/entry-points/cli/index.js +2 -2
  6. package/bin/adapter/entry-points/cli/index.js.map +1 -1
  7. package/bin/adapter/entry-points/handlers/LiveSessionOauthTokenSelectHandler.js +4 -3
  8. package/bin/adapter/entry-points/handlers/LiveSessionOauthTokenSelectHandler.js.map +1 -1
  9. package/bin/adapter/entry-points/handlers/OauthTokenSelectHandler.js +4 -3
  10. package/bin/adapter/entry-points/handlers/OauthTokenSelectHandler.js.map +1 -1
  11. package/bin/adapter/entry-points/handlers/notifySilentTmuxSessions.js +3 -2
  12. package/bin/adapter/entry-points/handlers/notifySilentTmuxSessions.js.map +1 -1
  13. package/bin/adapter/entry-points/handlers/resetDegeneratedTmuxSessions.js +1 -1
  14. package/bin/adapter/entry-points/handlers/resetDegeneratedTmuxSessions.js.map +1 -1
  15. package/bin/adapter/repositories/FileSystemSubAgentLivenessResolver.js +19 -1
  16. package/bin/adapter/repositories/FileSystemSubAgentLivenessResolver.js.map +1 -1
  17. package/bin/adapter/repositories/TmuxSilentSessionNotificationRepository.js +73 -2
  18. package/bin/adapter/repositories/TmuxSilentSessionNotificationRepository.js.map +1 -1
  19. package/bin/domain/usecases/LiveSessionOauthTokenSelectUseCase.js +3 -1
  20. package/bin/domain/usecases/LiveSessionOauthTokenSelectUseCase.js.map +1 -1
  21. package/bin/domain/usecases/OauthTokenSelectUseCase.js +13 -4
  22. package/bin/domain/usecases/OauthTokenSelectUseCase.js.map +1 -1
  23. package/package.json +1 -1
  24. package/renovate.json +5 -0
  25. package/src/adapter/entry-points/cli/index.ts +2 -2
  26. package/src/adapter/entry-points/handlers/LiveSessionOauthTokenSelectHandler.test.ts +7 -4
  27. package/src/adapter/entry-points/handlers/LiveSessionOauthTokenSelectHandler.ts +4 -1
  28. package/src/adapter/entry-points/handlers/OauthTokenSelectHandler.test.ts +6 -2
  29. package/src/adapter/entry-points/handlers/OauthTokenSelectHandler.ts +8 -2
  30. package/src/adapter/entry-points/handlers/notifySilentTmuxSessions.test.ts +1 -0
  31. package/src/adapter/entry-points/handlers/notifySilentTmuxSessions.ts +14 -2
  32. package/src/adapter/entry-points/handlers/resetDegeneratedTmuxSessions.ts +4 -1
  33. package/src/adapter/repositories/FileSystemSubAgentLivenessResolver.test.ts +49 -1
  34. package/src/adapter/repositories/FileSystemSubAgentLivenessResolver.ts +21 -1
  35. package/src/adapter/repositories/TmuxSilentSessionNotificationRepository.test.ts +157 -15
  36. package/src/adapter/repositories/TmuxSilentSessionNotificationRepository.ts +115 -1
  37. package/src/domain/usecases/LiveSessionOauthTokenSelectUseCase.test.ts +77 -5
  38. package/src/domain/usecases/LiveSessionOauthTokenSelectUseCase.ts +10 -1
  39. package/src/domain/usecases/OauthTokenSelectUseCase.test.ts +39 -8
  40. package/src/domain/usecases/OauthTokenSelectUseCase.ts +25 -5
  41. package/types/adapter/entry-points/handlers/LiveSessionOauthTokenSelectHandler.d.ts +3 -1
  42. package/types/adapter/entry-points/handlers/LiveSessionOauthTokenSelectHandler.d.ts.map +1 -1
  43. package/types/adapter/entry-points/handlers/OauthTokenSelectHandler.d.ts +3 -2
  44. package/types/adapter/entry-points/handlers/OauthTokenSelectHandler.d.ts.map +1 -1
  45. package/types/adapter/entry-points/handlers/notifySilentTmuxSessions.d.ts +1 -0
  46. package/types/adapter/entry-points/handlers/notifySilentTmuxSessions.d.ts.map +1 -1
  47. package/types/adapter/entry-points/handlers/resetDegeneratedTmuxSessions.d.ts.map +1 -1
  48. package/types/adapter/repositories/FileSystemSubAgentLivenessResolver.d.ts +1 -0
  49. package/types/adapter/repositories/FileSystemSubAgentLivenessResolver.d.ts.map +1 -1
  50. package/types/adapter/repositories/TmuxSilentSessionNotificationRepository.d.ts +14 -1
  51. package/types/adapter/repositories/TmuxSilentSessionNotificationRepository.d.ts.map +1 -1
  52. package/types/domain/usecases/LiveSessionOauthTokenSelectUseCase.d.ts.map +1 -1
  53. package/types/domain/usecases/OauthTokenSelectUseCase.d.ts +4 -1
  54. package/types/domain/usecases/OauthTokenSelectUseCase.d.ts.map +1 -1
@@ -10,8 +10,10 @@ updates:
10
10
  schedule:
11
11
  interval: weekly
12
12
  day: saturday
13
+ open-pull-requests-limit: 0
13
14
  - package-ecosystem: github-actions
14
15
  directory: /
15
16
  schedule:
16
17
  interval: weekly
17
18
  day: saturday
19
+ open-pull-requests-limit: 0
@@ -52,6 +52,26 @@ jobs:
52
52
  with:
53
53
  exclude-branches: 'release/**, dependabot/**, project-common/**'
54
54
  loose-matching: true
55
+ - name: Check PR title follows conventional commit format
56
+ uses: amannn/action-semantic-pull-request@v5
57
+ env:
58
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
59
+ with:
60
+ types: |
61
+ build
62
+ chore
63
+ ci
64
+ docs
65
+ feat
66
+ fix
67
+ perf
68
+ refactor
69
+ revert
70
+ style
71
+ test
72
+ autogen
73
+ prep
74
+ adapt
55
75
  - name: Install commitlint
56
76
  run: |
57
77
  mkdir -p /tmp/commitlint-run
@@ -41,7 +41,6 @@ env:
41
41
  project_id: 48
42
42
  project_v2_id: PVT_kwHOAGJHa84AFWnr
43
43
  field_id: PVTF_lAHOAGJHa84AFWnrzgIk_H0
44
- team_repo: '7sea.world, blog-tech, media-pinpoint-research, instagram-beauty-aesthetics-review, umino-corporait-operation, instagram-14LBaggageTraveler, hashigoya-project'
45
44
 
46
45
  jobs:
47
46
  umino-job:
package/CHANGELOG.md CHANGED
@@ -1,3 +1,17 @@
1
+ ## [1.146.7](https://github.com/HiromiShikata/npm-cli-github-issue-tower-defence-management/compare/v1.146.6...v1.146.7) (2026-08-07)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * **silent-monitor:** treat a missing running-subagents record under an existing runtime root as no live sub-agents ([#1421](https://github.com/HiromiShikata/npm-cli-github-issue-tower-defence-management/issues/1421)) ([759ef91](https://github.com/HiromiShikata/npm-cli-github-issue-tower-defence-management/commit/759ef91e4afe5cdbdb4e5c6e125c84b35f5489a0))
7
+
8
+ ## [1.146.6](https://github.com/HiromiShikata/npm-cli-github-issue-tower-defence-management/compare/v1.146.5...v1.146.6) (2026-08-07)
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * push out a self-check reminder left unsubmitted in the tmux input box ([#1419](https://github.com/HiromiShikata/npm-cli-github-issue-tower-defence-management/issues/1419)) ([605c500](https://github.com/HiromiShikata/npm-cli-github-issue-tower-defence-management/commit/605c500cc71e2ff1c458c741c8f3231dfc161c46))
14
+
1
15
  ## [1.146.5](https://github.com/HiromiShikata/npm-cli-github-issue-tower-defence-management/compare/v1.146.4...v1.146.5) (2026-08-07)
2
16
 
3
17
 
@@ -511,7 +511,7 @@ addServeWebOptions(exports.program.command('serveConsole'))
511
511
  });
512
512
  exports.program
513
513
  .command('selectOauthToken')
514
- .description('Print exactly one Claude Code OAuth token chosen by a rate-limit-aware filter. When tokens carry differing per-token selectionWeight values, the choice among rate-limit-eligible tokens is weighted-random by that weight (default 1), so a lower-weight token is chosen proportionally less often; uniform weights preserve the deterministic soonest-7d-reset choice. The token string is written to stdout (pipeable); the per-candidate decision trace is written to stderr. Exits non-zero when no token passes the filter.')
514
+ .description('Print exactly one Claude Code OAuth token chosen by a rate-limit-aware filter. Among rate-limit-eligible tokens the choice is weighted-random, with each token weighted by its per-token selectionWeight (default 1) multiplied by how urgent its 7d window is (the free share of that window times 168 divided by the hours left before it resets, with those hours floored at 1), so a token holding unused allowance that resets soon is chosen more often. When every eligible weight is identical, the choice stays deterministic and no random draw is made. The token string is written to stdout (pipeable); the per-candidate decision trace is written to stderr. Exits non-zero when no token passes the filter.')
515
515
  .option('--tokenListJsonPath <path>', 'Path to the JSON array of { name, token, selectionWeight? } records. selectionWeight is an optional positive number (default 1) that biases how often this token is chosen among rate-limit-eligible candidates; a smaller weight is chosen proportionally less often and never bypasses eligibility filtering or starves a sole eligible token. Falls back to the CLAUDE_CODE_OAUTH_TOKEN_LIST_JSON_PATH environment variable.')
516
516
  .option('--cacheDir <path>', 'Directory holding per-token rate-limit cache files. Falls back to the TDPM_RATELIMIT_CACHE_DIR environment variable, then to ${XDG_CACHE_HOME:-~/.cache}/tdpm/ratelimit.')
517
517
  .action((options) => {
@@ -531,7 +531,7 @@ exports.program
531
531
  });
532
532
  exports.program
533
533
  .command('selectLiveSessionOauthToken')
534
- .description('Print exactly one Claude Code OAuth token chosen for a new live interactive session. Among rate-limit-eligible tokens it prefers the one with the fewest current live sessions (by distinct CLAUDE_CODE_SESSION_ID found in running Claude Code processes), tiebreaking on the soonest 7d reset. When tokens carry differing per-token selectionWeight values, the choice among eligible tokens is weighted-random by that weight (default 1), so a lower-weight token is chosen proportionally less often; uniform weights preserve the fewest-live-sessions-then-soonest-7d-reset choice. The token string is written to stdout (pipeable); the per-candidate decision trace is written to stderr. Exits non-zero when no token passes the filter.')
534
+ .description('Print exactly one Claude Code OAuth token chosen for a new live interactive session. Among rate-limit-eligible tokens the choice is weighted-random, with each token weighted by its per-token selectionWeight (default 1), multiplied by how urgent its 7d window is (the free share of that window times 168 divided by the hours left before it resets, with those hours floored at 1), and divided by one plus its current live session count (by distinct CLAUDE_CODE_SESSION_ID found in running Claude Code processes). A token whose 7d window still holds unused allowance and resets soon is therefore chosen more often, while occupancy keeps sessions spread across tokens. When every eligible weight is identical, the choice stays deterministic and no random draw is made. The token string is written to stdout (pipeable); the per-candidate decision trace is written to stderr. Exits non-zero when no token passes the filter.')
535
535
  .option('--tokenListJsonPath <path>', 'Path to the JSON array of { name, token, selectionWeight? } records. selectionWeight is an optional positive number (default 1) that biases how often this token is chosen among rate-limit-eligible candidates; a smaller weight is chosen proportionally less often and never bypasses eligibility filtering or starves a sole eligible token. Falls back to the CLAUDE_CODE_OAUTH_TOKEN_LIST_JSON_PATH environment variable.')
536
536
  .option('--cacheDir <path>', 'Directory holding per-token rate-limit cache files. Falls back to the TDPM_RATELIMIT_CACHE_DIR environment variable, then to ${XDG_CACHE_HOME:-~/.cache}/tdpm/ratelimit.')
537
537
  .action((options) => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/adapter/entry-points/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/adapter/entry-points/cli/index.ts"],"names":[],"mappings":"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"}
@@ -8,9 +8,10 @@ const RateLimitCache_1 = require("../../proxy/RateLimitCache");
8
8
  const TokenListLoader_1 = require("../../proxy/TokenListLoader");
9
9
  const OauthTokenSelectHandler_1 = require("./OauthTokenSelectHandler");
10
10
  class LiveSessionOauthTokenSelectHandler {
11
- constructor(useCase = new LiveSessionOauthTokenSelectUseCase_1.LiveSessionOauthTokenSelectUseCase(), liveSessionRepository = new ProcClaudeLiveSessionRepository_1.ProcClaudeLiveSessionRepository()) {
11
+ constructor(useCase = new LiveSessionOauthTokenSelectUseCase_1.LiveSessionOauthTokenSelectUseCase(), liveSessionRepository = new ProcClaudeLiveSessionRepository_1.ProcClaudeLiveSessionRepository(), random = Math.random) {
12
12
  this.useCase = useCase;
13
13
  this.liveSessionRepository = liveSessionRepository;
14
+ this.random = random;
14
15
  this.handle = (input) => {
15
16
  const tokenListJsonPath = (0, OauthTokenSelectHandler_1.resolveTokenListJsonPath)(input.tokenListJsonPath);
16
17
  if (tokenListJsonPath === null) {
@@ -57,7 +58,7 @@ class LiveSessionOauthTokenSelectHandler {
57
58
  };
58
59
  });
59
60
  const liveSessions = this.liveSessionRepository.listLiveSessions();
60
- const result = this.useCase.run(candidates, liveSessions, input.nowEpochSeconds);
61
+ const result = this.useCase.run(candidates, liveSessions, input.nowEpochSeconds, this.random);
61
62
  return {
62
63
  selectedToken: result.selected?.token ?? null,
63
64
  selectedName: result.selected?.name ?? null,
@@ -76,7 +77,7 @@ class LiveSessionOauthTokenSelectHandler {
76
77
  lines.push(`No eligible token: every token is below the 5h >= ${Math.round(OauthTokenSelectUseCase_1.FIVE_HOUR_MIN_FREE_RATIO * 100)}% free and 7d >= ${Math.round(OauthTokenSelectUseCase_1.SEVEN_DAY_MIN_FREE_RATIO * 100)}% free thresholds required to start a live session.`);
77
78
  }
78
79
  else {
79
- lines.push(`Selected ${result.selected.name} (fewest live sessions, then soonest 7d reset among eligible tokens).`);
80
+ lines.push(`Selected ${result.selected.name} (weighted by how soon the 7d window resets, how much of it is free, and how few live sessions the token carries).`);
80
81
  }
81
82
  return lines;
82
83
  };
@@ -1 +1 @@
1
- {"version":3,"file":"LiveSessionOauthTokenSelectHandler.js","sourceRoot":"","sources":["../../../../src/adapter/entry-points/handlers/LiveSessionOauthTokenSelectHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LiveSessionOauthTokenSelectHandler.js","sourceRoot":"","sources":["../../../../src/adapter/entry-points/handlers/LiveSessionOauthTokenSelectHandler.ts"],"names":[],"mappings":"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"}
@@ -29,8 +29,9 @@ const resolveCacheDirectory = (explicitDirectory) => {
29
29
  };
30
30
  exports.resolveCacheDirectory = resolveCacheDirectory;
31
31
  class OauthTokenSelectHandler {
32
- constructor(useCase = new OauthTokenSelectUseCase_1.OauthTokenSelectUseCase()) {
32
+ constructor(useCase = new OauthTokenSelectUseCase_1.OauthTokenSelectUseCase(), random = Math.random) {
33
33
  this.useCase = useCase;
34
+ this.random = random;
34
35
  this.handle = (input) => {
35
36
  const tokenListJsonPath = (0, exports.resolveTokenListJsonPath)(input.tokenListJsonPath);
36
37
  if (tokenListJsonPath === null) {
@@ -76,7 +77,7 @@ class OauthTokenSelectHandler {
76
77
  selectionWeight: selectionWeight ?? OauthTokenSelectUseCase_1.DEFAULT_SELECTION_WEIGHT,
77
78
  };
78
79
  });
79
- const result = this.useCase.run(candidates, input.nowEpochSeconds);
80
+ const result = this.useCase.run(candidates, input.nowEpochSeconds, this.random);
80
81
  return {
81
82
  selectedToken: result.selected?.token ?? null,
82
83
  selectedName: result.selected?.name ?? null,
@@ -95,7 +96,7 @@ class OauthTokenSelectHandler {
95
96
  lines.push('No eligible token passed the rate-limit filter.');
96
97
  }
97
98
  else {
98
- lines.push(`Selected ${result.selected.name} (soonest 7d reset among eligible tokens).`);
99
+ lines.push(`Selected ${result.selected.name} (weighted by how soon the 7d window resets and how much of it is free among eligible tokens).`);
99
100
  }
100
101
  return lines;
101
102
  };
@@ -1 +1 @@
1
- {"version":3,"file":"OauthTokenSelectHandler.js","sourceRoot":"","sources":["../../../../src/adapter/entry-points/handlers/OauthTokenSelectHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OauthTokenSelectHandler.js","sourceRoot":"","sources":["../../../../src/adapter/entry-points/handlers/OauthTokenSelectHandler.ts"],"names":[],"mappings":"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"}
@@ -34,13 +34,14 @@ const createSubAgentActivityRepository = (subAgentTranscriptRootDirectory, subAg
34
34
  return new ProcessListSessionSubAgentActivityRepository_1.ProcessListSessionSubAgentActivityRepository(subAgentProcessMatchPattern, new NodeSubAgentProcessLister_1.NodeSubAgentProcessLister(localCommandRunner), new FileSystemSubAgentSilentSecondsResolver_1.FileSystemSubAgentSilentSecondsResolver(subAgentOutputRootDirectory, now));
35
35
  };
36
36
  const notifySilentTmuxSessions = async (params) => {
37
- const { enabled, localCommandRunner, processEnvironReader, ownerCallMarker, subAgentOutputRootDirectory, subAgentProcessMatchPattern, subAgentTranscriptRootDirectory, subAgentRuntimeRootDirectory, mainSilentThresholdSeconds, unansweredOwnerCallGraceSeconds, subAgentSilentThresholdSeconds, subAgentRunningThresholdSeconds, staggerSeconds, candidateDebounceRecencyWindowSeconds, candidateDebounceStateFilePath, activeHubTaskStatus, hubTaskStatusResolver, hubTaskStatusCacheStateFilePath, hubTaskStatusCacheTtlSeconds, messageTemplates, now, } = params;
37
+ const { enabled, localCommandRunner, processEnvironReader, ownerCallMarker, subAgentOutputRootDirectory, subAgentProcessMatchPattern, subAgentTranscriptRootDirectory, subAgentRuntimeRootDirectory, mainSilentThresholdSeconds, unansweredOwnerCallGraceSeconds, subAgentSilentThresholdSeconds, subAgentRunningThresholdSeconds, staggerSeconds, candidateDebounceRecencyWindowSeconds, candidateDebounceStateFilePath, activeHubTaskStatus, hubTaskStatusResolver, hubTaskStatusCacheStateFilePath, hubTaskStatusCacheTtlSeconds, messageTemplates, submitPushOutWaitMilliseconds, now, } = params;
38
38
  if (!enabled) {
39
39
  console.log('Silent live session notification skipped: not enabled (set silentNotificationEnabled or TDPM_SILENT_NOTIFICATION_ENABLED=true to enable).');
40
40
  return;
41
41
  }
42
42
  const messageComposer = new ConfigurableSilentSessionMessageComposer_1.ConfigurableSilentSessionMessageComposer(messageTemplates, new DefaultSilentSessionMessageComposer_1.DefaultSilentSessionMessageComposer());
43
- const useCase = new NotifySilentLiveSessionsUseCase_1.NotifySilentLiveSessionsUseCase(new LocalProcessLiveSessionProcessSnapshotProvider_1.LocalProcessLiveSessionProcessSnapshotProvider(localCommandRunner, processEnvironReader ?? new ProcFsProcessEnvironReader_1.ProcFsProcessEnvironReader()), new FileSystemInteractiveLiveSessionTranscriptResolver_1.FileSystemInteractiveLiveSessionTranscriptResolver(), new FileSystemSessionOutputActivityRepository_1.FileSystemSessionOutputActivityRepository(), createSubAgentActivityRepository(subAgentTranscriptRootDirectory, subAgentRuntimeRootDirectory, subAgentProcessMatchPattern, subAgentOutputRootDirectory, localCommandRunner, now), createOwnerCallStatusProvider(ownerCallMarker), new TmuxSilentSessionNotificationRepository_1.TmuxSilentSessionNotificationRepository(localCommandRunner), candidateDebounceStateFilePath !== null
43
+ const useCase = new NotifySilentLiveSessionsUseCase_1.NotifySilentLiveSessionsUseCase(new LocalProcessLiveSessionProcessSnapshotProvider_1.LocalProcessLiveSessionProcessSnapshotProvider(localCommandRunner, processEnvironReader ?? new ProcFsProcessEnvironReader_1.ProcFsProcessEnvironReader()), new FileSystemInteractiveLiveSessionTranscriptResolver_1.FileSystemInteractiveLiveSessionTranscriptResolver(), new FileSystemSessionOutputActivityRepository_1.FileSystemSessionOutputActivityRepository(), createSubAgentActivityRepository(subAgentTranscriptRootDirectory, subAgentRuntimeRootDirectory, subAgentProcessMatchPattern, subAgentOutputRootDirectory, localCommandRunner, now), createOwnerCallStatusProvider(ownerCallMarker), new TmuxSilentSessionNotificationRepository_1.TmuxSilentSessionNotificationRepository(localCommandRunner, new RealSleeper_1.RealSleeper(), TmuxSilentSessionNotificationRepository_1.DEFAULT_SUBMIT_PUSH_OUT_ATTEMPT_LIMIT, submitPushOutWaitMilliseconds ??
44
+ TmuxSilentSessionNotificationRepository_1.DEFAULT_SUBMIT_PUSH_OUT_WAIT_MILLISECONDS), candidateDebounceStateFilePath !== null
44
45
  ? new FileSystemSilentSessionCandidateStateRepository_1.FileSystemSilentSessionCandidateStateRepository(candidateDebounceStateFilePath)
45
46
  : new FileSystemSilentSessionCandidateStateRepository_1.FileSystemSilentSessionCandidateStateRepository(), messageComposer, new RealSleeper_1.RealSleeper(), hubTaskStatusResolver, hubTaskStatusCacheStateFilePath !== null
46
47
  ? new FileSystemSilentSessionHubTaskStatusCacheRepository_1.FileSystemSilentSessionHubTaskStatusCacheRepository(hubTaskStatusCacheStateFilePath)
@@ -1 +1 @@
1
- {"version":3,"file":"notifySilentTmuxSessions.js","sourceRoot":"","sources":["../../../../src/adapter/entry-points/handlers/notifySilentTmuxSessions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"notifySilentTmuxSessions.js","sourceRoot":"","sources":["../../../../src/adapter/entry-points/handlers/notifySilentTmuxSessions.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,7 @@ const NodeTmuxSessionRepository_1 = require("../../repositories/NodeTmuxSessionR
12
12
  const RealSleeper_1 = require("../../repositories/RealSleeper");
13
13
  const resetDegeneratedTmuxSessions = async (params) => {
14
14
  const { enabled, localCommandRunner, processEnvironReader, warningMessage, graceSeconds, cooldownSeconds, cooldownStateFilePath, now, } = params;
15
- const useCase = new SessionOutputDegenerationRecoveryUseCase_1.SessionOutputDegenerationRecoveryUseCase(new LocalProcessLiveSessionProcessSnapshotProvider_1.LocalProcessLiveSessionProcessSnapshotProvider(localCommandRunner, processEnvironReader ?? new ProcFsProcessEnvironReader_1.ProcFsProcessEnvironReader()), new FileSystemInteractiveLiveSessionTranscriptResolver_1.FileSystemInteractiveLiveSessionTranscriptResolver(), new FileSystemSessionAssistantTurnsRepository_1.FileSystemSessionAssistantTurnsRepository(), new TmuxSilentSessionNotificationRepository_1.TmuxSilentSessionNotificationRepository(localCommandRunner), new NodeTmuxSessionRepository_1.NodeTmuxSessionRepository(localCommandRunner), cooldownStateFilePath !== null
15
+ const useCase = new SessionOutputDegenerationRecoveryUseCase_1.SessionOutputDegenerationRecoveryUseCase(new LocalProcessLiveSessionProcessSnapshotProvider_1.LocalProcessLiveSessionProcessSnapshotProvider(localCommandRunner, processEnvironReader ?? new ProcFsProcessEnvironReader_1.ProcFsProcessEnvironReader()), new FileSystemInteractiveLiveSessionTranscriptResolver_1.FileSystemInteractiveLiveSessionTranscriptResolver(), new FileSystemSessionAssistantTurnsRepository_1.FileSystemSessionAssistantTurnsRepository(), new TmuxSilentSessionNotificationRepository_1.TmuxSilentSessionNotificationRepository(localCommandRunner, new RealSleeper_1.RealSleeper()), new NodeTmuxSessionRepository_1.NodeTmuxSessionRepository(localCommandRunner), cooldownStateFilePath !== null
16
16
  ? new FileSystemSessionDegenerationCooldownStateRepository_1.FileSystemSessionDegenerationCooldownStateRepository(cooldownStateFilePath)
17
17
  : new FileSystemSessionDegenerationCooldownStateRepository_1.FileSystemSessionDegenerationCooldownStateRepository(), new RealSleeper_1.RealSleeper());
18
18
  await useCase.run({
@@ -1 +1 @@
1
- {"version":3,"file":"resetDegeneratedTmuxSessions.js","sourceRoot":"","sources":["../../../../src/adapter/entry-points/handlers/resetDegeneratedTmuxSessions.ts"],"names":[],"mappings":";;;AAEA,gIAK2E;AAC3E,sIAAmI;AACnI,8FAA2F;AAC3F,8IAA2I;AAC3I,4HAAyH;AACzH,kJAA+I;AAC/I,wHAAqH;AACrH,4FAAyF;AACzF,gEAA6D;AAatD,MAAM,4BAA4B,GAAG,KAAK,EAC/C,MAA0C,EAC3B,EAAE;IACjB,MAAM,EACJ,OAAO,EACP,kBAAkB,EAClB,oBAAoB,EACpB,cAAc,EACd,YAAY,EACZ,eAAe,EACf,qBAAqB,EACrB,GAAG,GACJ,GAAG,MAAM,CAAC;IACX,MAAM,OAAO,GAAG,IAAI,mFAAwC,CAC1D,IAAI,+FAA8C,CAChD,kBAAkB,EAClB,oBAAoB,IAAI,IAAI,uDAA0B,EAAE,CACzD,EACD,IAAI,uGAAkD,EAAE,EACxD,IAAI,qFAAyC,EAAE,EAC/C,IAAI,iFAAuC,CAAC,kBAAkB,CAAC,EAC/D,IAAI,qDAAyB,CAAC,kBAAkB,CAAC,EACjD,qBAAqB,KAAK,IAAI;QAC5B,CAAC,CAAC,IAAI,2GAAoD,CACtD,qBAAqB,CACtB;QACH,CAAC,CAAC,IAAI,2GAAoD,EAAE,EAC9D,IAAI,yBAAW,EAAE,CAClB,CAAC;IACF,MAAM,OAAO,CAAC,GAAG,CAAC;QAChB,OAAO;QACP,cAAc;QACd,YAAY;QACZ,eAAe;QACf,GAAG;KACJ,CAAC,CAAC;AACL,CAAC,CAAC;AApCW,QAAA,4BAA4B,gCAoCvC;AAEW,QAAA,8CAA8C,GAAG;IAC5D,cAAc,EAAE,sFAA2C;IAC3D,YAAY,EAAE,oFAAyC;IACvD,eAAe,EAAE,uFAA4C;CACrD,CAAC"}
1
+ {"version":3,"file":"resetDegeneratedTmuxSessions.js","sourceRoot":"","sources":["../../../../src/adapter/entry-points/handlers/resetDegeneratedTmuxSessions.ts"],"names":[],"mappings":";;;AAEA,gIAK2E;AAC3E,sIAAmI;AACnI,8FAA2F;AAC3F,8IAA2I;AAC3I,4HAAyH;AACzH,kJAA+I;AAC/I,wHAAqH;AACrH,4FAAyF;AACzF,gEAA6D;AAatD,MAAM,4BAA4B,GAAG,KAAK,EAC/C,MAA0C,EAC3B,EAAE;IACjB,MAAM,EACJ,OAAO,EACP,kBAAkB,EAClB,oBAAoB,EACpB,cAAc,EACd,YAAY,EACZ,eAAe,EACf,qBAAqB,EACrB,GAAG,GACJ,GAAG,MAAM,CAAC;IACX,MAAM,OAAO,GAAG,IAAI,mFAAwC,CAC1D,IAAI,+FAA8C,CAChD,kBAAkB,EAClB,oBAAoB,IAAI,IAAI,uDAA0B,EAAE,CACzD,EACD,IAAI,uGAAkD,EAAE,EACxD,IAAI,qFAAyC,EAAE,EAC/C,IAAI,iFAAuC,CACzC,kBAAkB,EAClB,IAAI,yBAAW,EAAE,CAClB,EACD,IAAI,qDAAyB,CAAC,kBAAkB,CAAC,EACjD,qBAAqB,KAAK,IAAI;QAC5B,CAAC,CAAC,IAAI,2GAAoD,CACtD,qBAAqB,CACtB;QACH,CAAC,CAAC,IAAI,2GAAoD,EAAE,EAC9D,IAAI,yBAAW,EAAE,CAClB,CAAC;IACF,MAAM,OAAO,CAAC,GAAG,CAAC;QAChB,OAAO;QACP,cAAc;QACd,YAAY;QACZ,eAAe;QACf,GAAG;KACJ,CAAC,CAAC;AACL,CAAC,CAAC;AAvCW,QAAA,4BAA4B,gCAuCvC;AAEW,QAAA,8CAA8C,GAAG;IAC5D,cAAc,EAAE,sFAA2C;IAC3D,YAAY,EAAE,oFAAyC;IACvD,eAAe,EAAE,uFAA4C;CACrD,CAAC"}
@@ -37,6 +37,10 @@ exports.FileSystemSubAgentLivenessResolver = void 0;
37
37
  const fs = __importStar(require("fs"));
38
38
  const path = __importStar(require("path"));
39
39
  const RUNNING_SUBAGENTS_FILE_NAME = 'running-subagents.txt';
40
+ const isMissingFileError = (error) => typeof error === 'object' &&
41
+ error !== null &&
42
+ 'code' in error &&
43
+ error.code === 'ENOENT';
40
44
  class FileSystemSubAgentLivenessResolver {
41
45
  constructor(runtimeRootDirectory) {
42
46
  this.runtimeRootDirectory = runtimeRootDirectory;
@@ -49,7 +53,10 @@ class FileSystemSubAgentLivenessResolver {
49
53
  try {
50
54
  content = fs.readFileSync(runningFilePath, 'utf8');
51
55
  }
52
- catch {
56
+ catch (error) {
57
+ if (isMissingFileError(error) && this.hasReadableRuntimeRootDirectory()) {
58
+ return new Set();
59
+ }
53
60
  return null;
54
61
  }
55
62
  const liveIds = new Set();
@@ -61,6 +68,17 @@ class FileSystemSubAgentLivenessResolver {
61
68
  }
62
69
  return liveIds;
63
70
  };
71
+ this.hasReadableRuntimeRootDirectory = () => {
72
+ if (this.runtimeRootDirectory === null) {
73
+ return false;
74
+ }
75
+ try {
76
+ return fs.statSync(this.runtimeRootDirectory).isDirectory();
77
+ }
78
+ catch {
79
+ return false;
80
+ }
81
+ };
64
82
  this.resolveRunningSubAgentsFilePath = (mainTranscriptPath) => {
65
83
  if (this.runtimeRootDirectory === null || mainTranscriptPath === null) {
66
84
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"FileSystemSubAgentLivenessResolver.js","sourceRoot":"","sources":["../../../src/adapter/repositories/FileSystemSubAgentLivenessResolver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AACzB,2CAA6B;AAG7B,MAAM,2BAA2B,GAAG,uBAAuB,CAAC;AAE5D,MAAa,kCAAkC;IAC7C,YAA6B,oBAAmC;QAAnC,yBAAoB,GAApB,oBAAoB,CAAe;QAEhE,2BAAsB,GAAG,KAAK,EAAE,MAG/B,EAA+B,EAAE;YAChC,MAAM,eAAe,GAAG,IAAI,CAAC,+BAA+B,CAC1D,MAAM,CAAC,kBAAkB,CAC1B,CAAC;YACF,IAAI,eAAe,KAAK,IAAI,EAAE,CAAC;gBAC7B,OAAO,IAAI,CAAC;YACd,CAAC;YACD,IAAI,OAAe,CAAC;YACpB,IAAI,CAAC;gBACH,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;YACrD,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,IAAI,CAAC;YACd,CAAC;YACD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;YAClC,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5C,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACvB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACvB,CAAC;YACH,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC,CAAC;QAEM,oCAA+B,GAAG,CACxC,kBAAiC,EAClB,EAAE;YACjB,IAAI,IAAI,CAAC,oBAAoB,KAAK,IAAI,IAAI,kBAAkB,KAAK,IAAI,EAAE,CAAC;gBACtE,OAAO,IAAI,CAAC;YACd,CAAC;YACD,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;YAChE,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC/D,OAAO,IAAI,CAAC;YACd,CAAC;YACD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC;YAChE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC;gBAC5C,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,IAAI,CAAC,IAAI,CACd,IAAI,CAAC,oBAAoB,EACzB,OAAO,EACP,WAAW,EACX,2BAA2B,CAC5B,CAAC;QACJ,CAAC,CAAC;IAhDiE,CAAC;CAiDrE;AAlDD,gFAkDC"}
1
+ {"version":3,"file":"FileSystemSubAgentLivenessResolver.js","sourceRoot":"","sources":["../../../src/adapter/repositories/FileSystemSubAgentLivenessResolver.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,50 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TmuxSilentSessionNotificationRepository = void 0;
3
+ exports.TmuxSilentSessionNotificationRepository = exports.resolveInputBoxStateFromPane = exports.extractTmuxInputBoxContent = exports.DEFAULT_SUBMIT_PUSH_OUT_WAIT_MILLISECONDS = exports.DEFAULT_SUBMIT_PUSH_OUT_ATTEMPT_LIMIT = void 0;
4
4
  const BRACKETED_PASTE_START = '\x1b[200~';
5
5
  const BRACKETED_PASTE_END = '\x1b[201~';
6
+ exports.DEFAULT_SUBMIT_PUSH_OUT_ATTEMPT_LIMIT = 3;
7
+ exports.DEFAULT_SUBMIT_PUSH_OUT_WAIT_MILLISECONDS = 2500;
8
+ const INPUT_BOX_BORDER_LINE_PATTERN = /^[\s─━╌┄┈│╭╮╰╯]+$/u;
9
+ const INPUT_PROMPT_PREFIX_PATTERN = /^[\s>❯│]+/u;
10
+ const INPUT_BOX_MESSAGE_PROBE_LENGTH = 24;
11
+ const withoutWhitespace = (value) => value.replace(/\s+/gu, '');
12
+ const extractTmuxInputBoxContent = (paneText) => {
13
+ const lines = paneText.split('\n');
14
+ const borderLineIndexes = lines.flatMap((line, index) => line.trim().length > 0 && INPUT_BOX_BORDER_LINE_PATTERN.test(line)
15
+ ? [index]
16
+ : []);
17
+ if (borderLineIndexes.length < 2) {
18
+ return null;
19
+ }
20
+ const closingBorderIndex = borderLineIndexes[borderLineIndexes.length - 1];
21
+ const openingBorderIndex = borderLineIndexes[borderLineIndexes.length - 2];
22
+ return lines
23
+ .slice(openingBorderIndex + 1, closingBorderIndex)
24
+ .map((line) => line.replace(INPUT_PROMPT_PREFIX_PATTERN, ''))
25
+ .join('');
26
+ };
27
+ exports.extractTmuxInputBoxContent = extractTmuxInputBoxContent;
28
+ const resolveInputBoxStateFromPane = (paneText, singleLineMessage) => {
29
+ const inputBoxContent = (0, exports.extractTmuxInputBoxContent)(paneText);
30
+ if (inputBoxContent === null) {
31
+ return 'unreadable';
32
+ }
33
+ const messageProbe = withoutWhitespace(singleLineMessage).slice(0, INPUT_BOX_MESSAGE_PROBE_LENGTH);
34
+ if (messageProbe.length === 0) {
35
+ return 'clearedMessage';
36
+ }
37
+ return withoutWhitespace(inputBoxContent).includes(messageProbe)
38
+ ? 'holdsMessage'
39
+ : 'clearedMessage';
40
+ };
41
+ exports.resolveInputBoxStateFromPane = resolveInputBoxStateFromPane;
6
42
  class TmuxSilentSessionNotificationRepository {
7
- constructor(localCommandRunner) {
43
+ constructor(localCommandRunner, sleeper, submitPushOutAttemptLimit = exports.DEFAULT_SUBMIT_PUSH_OUT_ATTEMPT_LIMIT, submitPushOutWaitMilliseconds = exports.DEFAULT_SUBMIT_PUSH_OUT_WAIT_MILLISECONDS) {
8
44
  this.localCommandRunner = localCommandRunner;
45
+ this.sleeper = sleeper;
46
+ this.submitPushOutAttemptLimit = submitPushOutAttemptLimit;
47
+ this.submitPushOutWaitMilliseconds = submitPushOutWaitMilliseconds;
9
48
  this.sendSelfCheckNotification = async (sessionName, message) => {
10
49
  const singleLineMessage = message.replace(/\s*[\r\n]+\s*/g, ' ').trim();
11
50
  const framedMessage = `${BRACKETED_PASTE_START}${singleLineMessage}${BRACKETED_PASTE_END}`;
@@ -19,6 +58,10 @@ class TmuxSilentSessionNotificationRepository {
19
58
  if (literalResult.exitCode !== 0) {
20
59
  throw new Error(`Failed to send notification to tmux session "${sessionName}": exit code ${literalResult.exitCode}${literalResult.stderr ? `: ${literalResult.stderr}` : ''}`);
21
60
  }
61
+ await this.submitInputBox(sessionName);
62
+ await this.pushOutUnsubmittedMessage(sessionName, singleLineMessage);
63
+ };
64
+ this.submitInputBox = async (sessionName) => {
22
65
  const submitResult = await this.localCommandRunner.runCommand('tmux', [
23
66
  'send-keys',
24
67
  '-t',
@@ -29,6 +72,34 @@ class TmuxSilentSessionNotificationRepository {
29
72
  throw new Error(`Failed to send notification to tmux session "${sessionName}": exit code ${submitResult.exitCode}${submitResult.stderr ? `: ${submitResult.stderr}` : ''}`);
30
73
  }
31
74
  };
75
+ this.pushOutUnsubmittedMessage = async (sessionName, singleLineMessage) => {
76
+ for (let attempt = 0; attempt < this.submitPushOutAttemptLimit; attempt += 1) {
77
+ await this.sleeper.sleep(this.submitPushOutWaitMilliseconds);
78
+ const inputBoxState = await this.readInputBoxState(sessionName, singleLineMessage);
79
+ if (inputBoxState === 'clearedMessage') {
80
+ return;
81
+ }
82
+ if (inputBoxState === 'unreadable') {
83
+ console.log(`Could not read back the input box of tmux session "${sessionName}"; leaving the notification as sent without pushing it out.`);
84
+ return;
85
+ }
86
+ await this.submitInputBox(sessionName);
87
+ }
88
+ console.log(`Notification to tmux session "${sessionName}" was still held in the input box after ${this.submitPushOutAttemptLimit} push-out attempt(s).`);
89
+ };
90
+ this.readInputBoxState = async (sessionName, singleLineMessage) => {
91
+ const captureResult = await this.localCommandRunner.runCommand('tmux', [
92
+ 'capture-pane',
93
+ '-p',
94
+ '-t',
95
+ sessionName,
96
+ ]);
97
+ if (captureResult.exitCode !== 0) {
98
+ console.log(`Failed to capture the pane of tmux session "${sessionName}": exit code ${captureResult.exitCode}${captureResult.stderr ? `: ${captureResult.stderr}` : ''}`);
99
+ return 'unreadable';
100
+ }
101
+ return (0, exports.resolveInputBoxStateFromPane)(captureResult.stdout, singleLineMessage);
102
+ };
32
103
  }
33
104
  }
34
105
  exports.TmuxSilentSessionNotificationRepository = TmuxSilentSessionNotificationRepository;
@@ -1 +1 @@
1
- {"version":3,"file":"TmuxSilentSessionNotificationRepository.js","sourceRoot":"","sources":["../../../src/adapter/repositories/TmuxSilentSessionNotificationRepository.ts"],"names":[],"mappings":";;;AAGA,MAAM,qBAAqB,GAAG,WAAW,CAAC;AAC1C,MAAM,mBAAmB,GAAG,WAAW,CAAC;AAExC,MAAa,uCAAuC;IAClD,YAA6B,kBAAsC;QAAtC,uBAAkB,GAAlB,kBAAkB,CAAoB;QAEnE,8BAAyB,GAAG,KAAK,EAC/B,WAAmB,EACnB,OAAe,EACA,EAAE;YACjB,MAAM,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;YACxE,MAAM,aAAa,GAAG,GAAG,qBAAqB,GAAG,iBAAiB,GAAG,mBAAmB,EAAE,CAAC;YAC3F,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,MAAM,EAAE;gBACrE,WAAW;gBACX,IAAI;gBACJ,WAAW;gBACX,IAAI;gBACJ,aAAa;aACd,CAAC,CAAC;YACH,IAAI,aAAa,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;gBACjC,MAAM,IAAI,KAAK,CACb,gDAAgD,WAAW,gBAAgB,aAAa,CAAC,QAAQ,GAC/F,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EACvD,EAAE,CACH,CAAC;YACJ,CAAC;YACD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,MAAM,EAAE;gBACpE,WAAW;gBACX,IAAI;gBACJ,WAAW;gBACX,OAAO;aACR,CAAC,CAAC;YACH,IAAI,YAAY,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;gBAChC,MAAM,IAAI,KAAK,CACb,gDAAgD,WAAW,gBAAgB,YAAY,CAAC,QAAQ,GAC9F,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EACrD,EAAE,CACH,CAAC;YACJ,CAAC;QACH,CAAC,CAAC;IAnCoE,CAAC;CAoCxE;AArCD,0FAqCC"}
1
+ {"version":3,"file":"TmuxSilentSessionNotificationRepository.js","sourceRoot":"","sources":["../../../src/adapter/repositories/TmuxSilentSessionNotificationRepository.ts"],"names":[],"mappings":"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"}
@@ -32,7 +32,9 @@ class LiveSessionOauthTokenSelectUseCase {
32
32
  const deterministicBest = eligible.reduce((bestEntry, currentEntry) => this.preferred(currentEntry.metric, bestEntry.metric)
33
33
  ? currentEntry
34
34
  : bestEntry);
35
- const selected = (0, OauthTokenSelectUseCase_1.selectWeightedCandidate)(eligible, (entry) => entry.candidate, deterministicBest, random);
35
+ const selected = (0, OauthTokenSelectUseCase_1.selectWeightedCandidate)(eligible, (entry) => ((0, OauthTokenSelectUseCase_1.selectionWeightOf)(entry.candidate) *
36
+ (0, OauthTokenSelectUseCase_1.sevenDayUrgencyFactor)(entry.metric.sevenDayFreeRatio, entry.metric.sevenDayEndEpoch, nowEpochSeconds)) /
37
+ (1 + entry.metric.liveSessionCount), deterministicBest, random);
36
38
  return { selected: selected.candidate, metrics };
37
39
  };
38
40
  this.preferred = (candidateMetric, incumbentMetric) => {
@@ -1 +1 @@
1
- {"version":3,"file":"LiveSessionOauthTokenSelectUseCase.js","sourceRoot":"","sources":["../../../src/domain/usecases/LiveSessionOauthTokenSelectUseCase.ts"],"names":[],"mappings":";;;AACA,uEAKmC;AAiBnC,MAAa,kCAAkC;IAC7C,YACmB,yBAAkD,IAAI,iDAAuB,EAAE;QAA/E,2BAAsB,GAAtB,sBAAsB,CAAyD;QAGlG,QAAG,GAAG,CACJ,UAAiC,EACjC,YAAiC,EACjC,eAAuB,EACvB,SAA0B,IAAI,CAAC,MAAM,EACF,EAAE;YACrC,MAAM,eAAe,GAAG,IAAI,CAAC,sBAAsB,CAAC,GAAG,CACrD,UAAU,EACV,eAAe,EACf,GAAG,EAAE,CAAC,CAAC,CACR,CAAC;YACF,MAAM,uBAAuB,GAAG,IAAI,CAAC,uBAAuB,CAAC,YAAY,CAAC,CAAC;YAE3E,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE;gBACpD,MAAM,eAAe,GAAG,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBACvD,MAAM,gBAAgB,GACpB,uBAAuB,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACpD,OAAO;oBACL,SAAS;oBACT,MAAM,EAAE;wBACN,IAAI,EAAE,eAAe,CAAC,IAAI;wBAC1B,iBAAiB,EAAE,eAAe,CAAC,iBAAiB;wBACpD,iBAAiB,EAAE,eAAe,CAAC,iBAAiB;wBACpD,gBAAgB,EAAE,eAAe,CAAC,gBAAgB;wBAClD,gBAAgB;wBAChB,QAAQ,EAAE,eAAe,CAAC,QAAQ;wBAClC,eAAe,EAAE,eAAe,CAAC,eAAe;qBACjD;iBACF,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACvD,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAEpE,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC1B,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;YACrC,CAAC;YAED,MAAM,iBAAiB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,YAAY,EAAE,EAAE,CACpE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC;gBACnD,CAAC,CAAC,YAAY;gBACd,CAAC,CAAC,SAAS,CACd,CAAC;YAEF,MAAM,QAAQ,GAAG,IAAA,iDAAuB,EACtC,QAAQ,EACR,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,EAC1B,iBAAiB,EACjB,MAAM,CACP,CAAC;YAEF,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC;QACnD,CAAC,CAAC;QAEM,cAAS,GAAG,CAClB,eAAsD,EACtD,eAAsD,EAC7C,EAAE;YACX,IAAI,eAAe,CAAC,gBAAgB,KAAK,eAAe,CAAC,gBAAgB,EAAE,CAAC;gBAC1E,OAAO,CACL,eAAe,CAAC,gBAAgB,GAAG,eAAe,CAAC,gBAAgB,CACpE,CAAC;YACJ,CAAC;YACD,OAAO,eAAe,CAAC,gBAAgB,GAAG,eAAe,CAAC,gBAAgB,CAAC;QAC7E,CAAC,CAAC;QAEM,4BAAuB,GAAG,CAChC,YAAiC,EACZ,EAAE;YACvB,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAuB,CAAC;YAC1D,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;gBACvC,MAAM,WAAW,GACf,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,IAAI,GAAG,EAAU,CAAC;gBACjE,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;gBACxC,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;YACzD,CAAC;YACD,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAC;YAC/C,KAAK,MAAM,CAAC,KAAK,EAAE,WAAW,CAAC,IAAI,kBAAkB,CAAC,OAAO,EAAE,EAAE,CAAC;gBAChE,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;YAC5C,CAAC;YACD,OAAO,YAAY,CAAC;QACtB,CAAC,CAAC;IAnFC,CAAC;CAoFL;AAvFD,gFAuFC"}
1
+ {"version":3,"file":"LiveSessionOauthTokenSelectUseCase.js","sourceRoot":"","sources":["../../../src/domain/usecases/LiveSessionOauthTokenSelectUseCase.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.OauthTokenSelectUseCase = exports.selectWeightedCandidate = exports.SEVEN_DAY_MIN_FREE_RATIO = exports.FIVE_HOUR_MIN_FREE_RATIO = exports.selectionWeightOf = exports.DEFAULT_SELECTION_WEIGHT = void 0;
3
+ exports.OauthTokenSelectUseCase = exports.selectWeightedCandidate = exports.sevenDayUrgencyFactor = exports.MIN_HOURS_TO_RESET = exports.SEVEN_DAY_WINDOW_HOURS = exports.SEVEN_DAY_MIN_FREE_RATIO = exports.FIVE_HOUR_MIN_FREE_RATIO = exports.selectionWeightOf = exports.DEFAULT_SELECTION_WEIGHT = void 0;
4
4
  exports.DEFAULT_SELECTION_WEIGHT = 1;
5
5
  const selectionWeightOf = (candidate) => {
6
6
  const weight = candidate.selectionWeight ?? exports.DEFAULT_SELECTION_WEIGHT;
@@ -11,11 +11,19 @@ const SECONDS_PER_DAY = 86400;
11
11
  const SEVEN_DAYS_IN_SECONDS = 7 * SECONDS_PER_DAY;
12
12
  exports.FIVE_HOUR_MIN_FREE_RATIO = 0.25;
13
13
  exports.SEVEN_DAY_MIN_FREE_RATIO = 0.03;
14
- const selectWeightedCandidate = (eligible, candidateOf, deterministicBest, random) => {
14
+ exports.SEVEN_DAY_WINDOW_HOURS = 168;
15
+ exports.MIN_HOURS_TO_RESET = 1;
16
+ const SECONDS_PER_HOUR = 3600;
17
+ const sevenDayUrgencyFactor = (sevenDayFreeRatio, sevenDayEndEpoch, nowEpochSeconds) => {
18
+ const hoursToReset = Math.max((sevenDayEndEpoch - nowEpochSeconds) / SECONDS_PER_HOUR, exports.MIN_HOURS_TO_RESET);
19
+ return sevenDayFreeRatio * (exports.SEVEN_DAY_WINDOW_HOURS / hoursToReset);
20
+ };
21
+ exports.sevenDayUrgencyFactor = sevenDayUrgencyFactor;
22
+ const selectWeightedCandidate = (eligible, weightOf, deterministicBest, random) => {
15
23
  if (eligible.length <= 1) {
16
24
  return deterministicBest;
17
25
  }
18
- const weights = eligible.map((entry) => (0, exports.selectionWeightOf)(candidateOf(entry)));
26
+ const weights = eligible.map((entry) => Math.max(weightOf(entry), 0));
19
27
  const totalWeight = weights.reduce((sum, weight) => sum + weight, 0);
20
28
  const uniform = weights.every((weight) => weight === weights[0]);
21
29
  if (uniform || totalWeight <= 0) {
@@ -46,7 +54,8 @@ class OauthTokenSelectUseCase {
46
54
  const deterministicBest = eligible.reduce((bestEntry, currentEntry) => currentEntry.metric.sevenDayEndEpoch < bestEntry.metric.sevenDayEndEpoch
47
55
  ? currentEntry
48
56
  : bestEntry);
49
- const selected = (0, exports.selectWeightedCandidate)(eligible, (entry) => entry.candidate, deterministicBest, random);
57
+ const selected = (0, exports.selectWeightedCandidate)(eligible, (entry) => (0, exports.selectionWeightOf)(entry.candidate) *
58
+ (0, exports.sevenDayUrgencyFactor)(entry.metric.sevenDayFreeRatio, entry.metric.sevenDayEndEpoch, nowEpochSeconds), deterministicBest, random);
50
59
  return { selected: selected.candidate, metrics };
51
60
  };
52
61
  this.evaluate = (candidate, nowEpochSeconds) => {