@pratik7368patil/anchor-core 0.1.24 → 0.1.25

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.
package/dist/index.d.ts CHANGED
@@ -404,6 +404,33 @@ type OrgStatus = {
404
404
  lastError?: string;
405
405
  }>;
406
406
  };
407
+ type OrgRunTimelineStepStatus = "active" | "done" | "skipped" | "warn" | "fail" | "wait";
408
+ type OrgRunTimelineStep = {
409
+ id: string;
410
+ label: string;
411
+ status: OrgRunTimelineStepStatus;
412
+ startedAt: string;
413
+ updatedAt: string;
414
+ completedAt?: string;
415
+ durationMs?: number;
416
+ current?: number;
417
+ total?: number;
418
+ detail?: string;
419
+ };
420
+ type OrgRunTimelineRepoSummary = {
421
+ repo: string;
422
+ status: OrgRunTimelineStepStatus;
423
+ durationMs: number;
424
+ detail?: string;
425
+ };
426
+ type OrgRunTimelineSnapshot = {
427
+ repo?: string;
428
+ repoIndex?: number;
429
+ repoTotal?: number;
430
+ activeStepId?: string;
431
+ steps: OrgRunTimelineStep[];
432
+ recentRepos: OrgRunTimelineRepoSummary[];
433
+ };
407
434
  type OrgRunHeartbeat = {
408
435
  pid: number;
409
436
  command: string;
@@ -412,6 +439,7 @@ type OrgRunHeartbeat = {
412
439
  repoIndex?: number;
413
440
  repoTotal?: number;
414
441
  phase: string;
442
+ timeline?: OrgRunTimelineSnapshot;
415
443
  startedAt: string;
416
444
  updatedAt: string;
417
445
  };
@@ -703,12 +731,80 @@ type CodeIndexProgress = {
703
731
  total: number;
704
732
  filePath: string;
705
733
  chunks: number;
734
+ } | {
735
+ stage: "building_architecture_imports";
736
+ repo: string;
737
+ current: number;
738
+ total: number;
739
+ filePath?: string;
740
+ imports: number;
741
+ } | {
742
+ stage: "building_architecture_components";
743
+ repo: string;
744
+ current: number;
745
+ total: number;
746
+ filePath?: string;
747
+ components: number;
748
+ } | {
749
+ stage: "building_architecture_patterns";
750
+ repo: string;
751
+ current: number;
752
+ total: number;
753
+ area?: ArchitectureArea;
754
+ patterns: number;
706
755
  } | {
707
756
  stage: "indexed_architecture";
708
757
  repo: string;
709
758
  components: number;
710
759
  patterns: number;
711
760
  imports: number;
761
+ } | {
762
+ stage: "writing_code_index";
763
+ repo: string;
764
+ phase: string;
765
+ } | {
766
+ stage: "deleting_existing_code_index";
767
+ repo: string;
768
+ chunks: number;
769
+ patterns: number;
770
+ } | {
771
+ stage: "writing_code_files";
772
+ repo: string;
773
+ current: number;
774
+ total: number;
775
+ filePath?: string;
776
+ } | {
777
+ stage: "writing_code_chunks";
778
+ repo: string;
779
+ current: number;
780
+ total: number;
781
+ filePath?: string;
782
+ chunks: number;
783
+ } | {
784
+ stage: "writing_test_awareness";
785
+ repo: string;
786
+ current: number;
787
+ total: number;
788
+ kind: "test_files" | "test_links";
789
+ } | {
790
+ stage: "writing_architecture_data";
791
+ repo: string;
792
+ current: number;
793
+ total: number;
794
+ kind: "imports" | "components" | "patterns";
795
+ } | {
796
+ stage: "writing_architecture_map_edges";
797
+ repo: string;
798
+ current: number;
799
+ total: number;
800
+ edges: number;
801
+ } | {
802
+ stage: "refreshing_test_commands";
803
+ repo: string;
804
+ current: number;
805
+ total: number;
806
+ phase: "detecting" | "writing";
807
+ commands: number;
712
808
  } | {
713
809
  stage: "completed_code_index";
714
810
  repo: string;
@@ -957,6 +1053,9 @@ declare function sanitizeHistoricalText(text: string): string;
957
1053
  declare function redactedHistoricalText(text: string): string;
958
1054
 
959
1055
  type AnchorDatabase = Database.Database;
1056
+ type CodeIndexWriteOptions = {
1057
+ onProgress?: (progress: CodeIndexProgress) => void;
1058
+ };
960
1059
  declare function defaultDatabasePath(cwd: string): string;
961
1060
  declare function openAnchorDatabase(cwd: string, databasePath?: string): AnchorDatabase;
962
1061
  declare function openAnchorDatabaseReadOnly(databasePath: string): AnchorDatabase;
@@ -984,7 +1083,7 @@ declare function upsertPullRequest(db: AnchorDatabase, pr: PullRequestRecord, wi
984
1083
  wisdom: number;
985
1084
  regressions: number;
986
1085
  };
987
- declare function replaceCodeIndex(db: AnchorDatabase, repo: string, codeFiles: CodeFileRecord[], codeChunks: CodeChunk[], skippedFiles: number, cwd: string, architecture?: ArchitectureIndexData): CodeIndexSummary;
1086
+ declare function replaceCodeIndex(db: AnchorDatabase, repo: string, codeFiles: CodeFileRecord[], codeChunks: CodeChunk[], skippedFiles: number, cwd: string, architecture?: ArchitectureIndexData, options?: CodeIndexWriteOptions): CodeIndexSummary;
988
1087
  declare function recordIndexRun(db: AnchorDatabase, run: IndexRunRecord): void;
989
1088
  declare function getIndexStatus(cwd: string, githubTokenConfigured?: boolean, databasePath?: string): IndexStatus;
990
1089
  declare function getWisdomCategoryCounts(db: AnchorDatabase): Record<WisdomCategory, number>;
@@ -1003,9 +1102,12 @@ declare function chunkCodeFile(file: ChunkableCodeFile, options?: {
1003
1102
  overlapLines?: number;
1004
1103
  }): CodeChunk[];
1005
1104
 
1105
+ type BuildArchitectureIndexOptions = {
1106
+ onProgress?: (progress: CodeIndexProgress) => void;
1107
+ };
1006
1108
  declare function classifyArchitectureArea(filePath: string, language?: string, content?: string): ArchitectureArea;
1007
1109
  declare function extractCodeImports(sourcePath: string, content: string, codePaths: Set<string>, repo?: string): CodeImport[];
1008
- declare function buildArchitectureIndex(repo: string, files: ChunkableCodeFile[], chunks: CodeChunk[]): ArchitectureIndexData;
1110
+ declare function buildArchitectureIndex(repo: string, files: ChunkableCodeFile[], chunks: CodeChunk[], options?: BuildArchitectureIndexOptions): ArchitectureIndexData;
1009
1111
 
1010
1112
  declare const DEFAULT_MAX_CODE_FILE_BYTES: number;
1011
1113
  type DiscoveredCodeFile = CodeFileRecord & {
@@ -1117,7 +1219,9 @@ declare function planTask(db: AnchorDatabase, cwd: string, input: AnchorContextI
1117
1219
 
1118
1220
  declare function detectTestCommandsForFile(db: AnchorDatabase, cwd: string, filePath: string): TestCommand[];
1119
1221
  declare function detectTestCommands(db: AnchorDatabase, cwd: string, files?: string[]): TestCommand[];
1120
- declare function refreshTestCommands(db: AnchorDatabase, cwd: string, repo: string, files?: string[]): TestCommand[];
1222
+ declare function refreshTestCommands(db: AnchorDatabase, cwd: string, repo: string, files?: string[], options?: {
1223
+ onProgress?: (progress: CodeIndexProgress) => void;
1224
+ }): TestCommand[];
1121
1225
 
1122
1226
  type OnboardingInput = {
1123
1227
  file?: string;
@@ -1655,4 +1759,4 @@ declare function getAnchorIndexHealth(cwd: string): AnchorIndexHealth & {
1655
1759
  indexStatus: IndexStatus;
1656
1760
  };
1657
1761
 
1658
- export { ANCHOR_CURSOR_RULE, ANCHOR_EVALS_FILE, ANCHOR_PLAYBOOKS_FILE, type AnchorCiInput, type AnchorContextInput, type AnchorDatabase, type AnchorExplainFileInput, type AnchorIndexHealth, type AnchorOrgConfig, type AnchorOrgRepoConfig, type AnchorReviewDiffInput, type ArchitectureArea, type ArchitectureCheckInput, type ArchitectureComponent, type ArchitectureContextInput, type ArchitectureIndexData, type ArchitectureMap, type ArchitectureMapEdge, type ArchitectureMapFormat, type ArchitectureMapInput, type ArchitectureMapNode, type ArchitecturePattern, type ArchitectureQueryInput, type ChunkableCodeFile, type CodeChunk, type CodeFileDiscoveryResult, type CodeFileRecord, type CodeImport, type CodeIndexProgress, type CodeIndexSummary, type ConfidenceLevel, type CoverageGrade, type CoverageInput, type CoverageReport, type CurrentCodeSnapshot, type CursorMcpConfig, DEFAULT_MAX_CODE_FILE_BYTES, DEMO_CODE_FILES, DEMO_PULL_REQUESTS, DEMO_REPO, type DiscoveredCodeFile, type DoctorCheck, type DoctorOptions, type DoctorReport, type EvidenceRef, type FeedbackEvent, type FeedbackRating, type FetchMergedPullRequestsGraphQLOptions, type FetchPullRequestsOptions, type FetchPullRequestsProgress, type FormattedResult, type FreshnessResult, type FreshnessStatus, type GitCommandRunner, type GitHubFetchBackend, GitHubGraphQLError, type GitHubGraphQLFetch, type GitHubGraphQLFetchCheckpoint, type GitHubGraphQLRateLimitState, type GitHubGraphQLResponse, type GitHubGraphQLTransientRetry, type GitHubRateLimitController, type GitHubRateLimitErrorLike, type GitHubRateLimitProgress, type GitHubRepo, type GitHubTokenResolution, type GitHubTokenResolverOptions, type GitHubTokenSource, type IndexPullRequestsProgress, type IndexRunRecord, type IndexStatus, type IndexSummary, type LocalEmbeddingProvider, type OnboardingInput, type OnboardingPack, type OrgAnomaly, type OrgAnomalyCategory, type OrgApiConsumer, type OrgCloneProgress, type OrgCloneResult, type OrgCrossRepoEdge, type OrgCrossRepoRelationship, type OrgFormattedResult, type OrgGraphProgress, type OrgGraphResult, type OrgGraphState, type OrgImpactResult, type OrgIndexOptions, type OrgIndexResult, type OrgLifecycleProgress, type OrgRepoCloneState, type OrgRepoGroup, type OrgRepoIndexResult, type OrgRunHeartbeat, type OrgRunHeartbeatStatus, type OrgStatus, type Playbook, type PullRequestComment, type PullRequestCommit, type PullRequestFile, type PullRequestPerson, type PullRequestRecord, type RankedArchitecturePattern, type RankedCodeChunk, type RankedRegressionEvent, type RankedTeamRule, type RankedTestFile, type RankedWisdomUnit, type RebuildOrgGraphOptions, type RegressionEvent, type ReliabilityGate, type ReliabilityGateRejection, type ReliabilityGateResult, type ReliabilityGateStatus, type RetrievalEvalCase, type RetrievalEvalResult, type RetrievalEvalRunResult, type RulesAddInput, type RulesAddResult, type RulesEvidenceCheckResult, type RulesInitResult, type RulesSuggestOptions, SCHEMA_SQL, type SearchHistoryInput, type SemanticStatus, type SourceType, type SuggestedPrompt, TEAM_RULES_FILE, type TaskPlan, type TeamRule, type TeamRuleSuggestion, type TeamRulesValidationResult, type TestCommand, type TestFileRecord, type TestLink, type WatchRefreshInput, type WisdomCategory, type WisdomUnit, addOrgRepoConfig, addRetrievalEval, addTeamRule, anchorMcpEntry, architectureFilesFromDiff, buildAnchorContextResult, buildArchitectureIndex, buildArchitectureMap, buildFtsQuery, buildOnboardingPack, buildOrgContextResult, buildQueryTerms, calculateCoverage, canonicalizeText, categorizeWisdom, checkArchitecture, checkOrgImpact, checkSchema, checkTeamRuleEvidence, chunkCodeFile, chunkHistoricalText, claimKeyFor, clampMaxResults, classifyArchitectureArea, clearGraphQLFetchCheckpoint, clearOrgHeartbeat, clipSentence, cloneOrPullOrgRepo, cloneOrgRepos, confidenceAtLeast, confidenceLevelFor, confidenceRank, confidenceReasonsFor, countValidTeamRules, createGitHubClient, createGitHubGraphQLRequester, defaultDatabasePath, defaultGitCommandRunner, defaultOrgBaseDir, defaultOrgCloneUrl, detectGitHubRepo, detectGitRoot, detectTestCommands, detectTestCommandsForFile, discoverCodeFiles, emptyCodeIndexSummary, ensureAnchorGitExclude, ensureCursorConfig, ensureCursorRule, ensureRepository, ensureTeamRulesFile, evaluateFreshness, evaluateIndexHealth, evaluateReliabilityGate, evidenceForWisdom, explainFile, extractCodeImports, extractCodeSymbols, extractRegressionEvents, extractSymbols, extractWisdomUnits, feedbackAdjustedScore, fetchMergedPullRequests, fetchMergedPullRequestsWithGraphQL, fetchPullRequestDetails, filesFromDiff, findOrgApiConsumers, formatAnchorContext, formatIndexStatus, formatSearchHistory, getAnchorIndexHealth, getArchitectureContext, getArchitectureMapContext, getGitHubRateLimitDelayMs, getGraphQLFetchCheckpoint, getIndexStatus, getLastSyncTime, getOrgArchitectureMap, getOrgGraphCounts, getOrgGraphState, getOrgRepoState, getOrgStatus, getPlaybook, getSemanticStatus, getSuggestedPromptTexts, getSuggestedPrompts, getWisdomCategoryCounts, githubAuthFixMessage, graphQLFetchCheckpointScope, hasHighSignalLanguage, indexCodebase, indexOrgRepos, indexPullRequests, inferTestAwareness, initOrgConfig, initPlaybooks, initRetrievalEvals, initializeSchema, isGitHubGraphQLResourceLimitError, isGitHubRateLimitError, isHardExcludedCodePath, isTestFilePath, listFeedbackEvents, listOrgNames, listPlaybooks, loadCurrentCodeSnapshot, loadOrgConfig, loadTeamRulesFile, maybeLoadOrgConfig, mergeAnchorMcpConfig, normalizePullRequest, openAnchorDatabase, openAnchorDatabaseReadOnly, openOrgDatabase, openOrgDatabaseReadOnly, orgCloneStateFromResult, orgConfigPath, orgDatabasePath, orgHeartbeatPath, orgRepoLocalPath, orgReposRoot, orgRoot, paginateWithGitHubRateLimit, parseGitHubRemote, planTask, plannedOrgCloneCommands, rankArchitecturePatterns, rankCodeChunks, rankRegressionEvents, rankRelevantTests, rankTeamRules, rankWisdomUnits, readOrgHeartbeat, rebuildOrgGraph, recordFeedback, recordIndexRun, recordOrgGraphState, recordOrgIndexRun, redactSecrets, redactedHistoricalText, refreshTestCommands, refreshWatchIndex, removeOrgRepoConfig, replaceCodeIndex, repoAliasFromFullName, requestWithGitHubRateLimit, resolveGitHubToken, resolveOrgForTool, resolvePullRequestDetailConcurrency, resolvePullRequestFetchLimit, reviewDiff, runAnchorCi, runDoctor, runRetrievalEvals, sanitizeHistoricalText, saveGraphQLFetchCheckpoint, saveOrgConfig, shouldFallbackToRestAfterGraphQLError, shouldSyncSince, sourceTypeLabel, stripPromptInjection, suggestPlaybooks, suggestTeamRules, syncOrgConfigToDatabase, syncPlaybooksToDatabase, tokenizeSearchText, truncateText, uniqueStrings, updateGitHubGraphQLRateLimitState, updateOrgRepoState, updateSyncState, upsertPullRequest, validateOrgName, validateOrgRepoFullName, validateOrgRepoGroup, validateTeamRulesFile, watchCodebase, writeOrgHeartbeat };
1762
+ export { ANCHOR_CURSOR_RULE, ANCHOR_EVALS_FILE, ANCHOR_PLAYBOOKS_FILE, type AnchorCiInput, type AnchorContextInput, type AnchorDatabase, type AnchorExplainFileInput, type AnchorIndexHealth, type AnchorOrgConfig, type AnchorOrgRepoConfig, type AnchorReviewDiffInput, type ArchitectureArea, type ArchitectureCheckInput, type ArchitectureComponent, type ArchitectureContextInput, type ArchitectureIndexData, type ArchitectureMap, type ArchitectureMapEdge, type ArchitectureMapFormat, type ArchitectureMapInput, type ArchitectureMapNode, type ArchitecturePattern, type ArchitectureQueryInput, type ChunkableCodeFile, type CodeChunk, type CodeFileDiscoveryResult, type CodeFileRecord, type CodeImport, type CodeIndexProgress, type CodeIndexSummary, type ConfidenceLevel, type CoverageGrade, type CoverageInput, type CoverageReport, type CurrentCodeSnapshot, type CursorMcpConfig, DEFAULT_MAX_CODE_FILE_BYTES, DEMO_CODE_FILES, DEMO_PULL_REQUESTS, DEMO_REPO, type DiscoveredCodeFile, type DoctorCheck, type DoctorOptions, type DoctorReport, type EvidenceRef, type FeedbackEvent, type FeedbackRating, type FetchMergedPullRequestsGraphQLOptions, type FetchPullRequestsOptions, type FetchPullRequestsProgress, type FormattedResult, type FreshnessResult, type FreshnessStatus, type GitCommandRunner, type GitHubFetchBackend, GitHubGraphQLError, type GitHubGraphQLFetch, type GitHubGraphQLFetchCheckpoint, type GitHubGraphQLRateLimitState, type GitHubGraphQLResponse, type GitHubGraphQLTransientRetry, type GitHubRateLimitController, type GitHubRateLimitErrorLike, type GitHubRateLimitProgress, type GitHubRepo, type GitHubTokenResolution, type GitHubTokenResolverOptions, type GitHubTokenSource, type IndexPullRequestsProgress, type IndexRunRecord, type IndexStatus, type IndexSummary, type LocalEmbeddingProvider, type OnboardingInput, type OnboardingPack, type OrgAnomaly, type OrgAnomalyCategory, type OrgApiConsumer, type OrgCloneProgress, type OrgCloneResult, type OrgCrossRepoEdge, type OrgCrossRepoRelationship, type OrgFormattedResult, type OrgGraphProgress, type OrgGraphResult, type OrgGraphState, type OrgImpactResult, type OrgIndexOptions, type OrgIndexResult, type OrgLifecycleProgress, type OrgRepoCloneState, type OrgRepoGroup, type OrgRepoIndexResult, type OrgRunHeartbeat, type OrgRunHeartbeatStatus, type OrgRunTimelineRepoSummary, type OrgRunTimelineSnapshot, type OrgRunTimelineStep, type OrgRunTimelineStepStatus, type OrgStatus, type Playbook, type PullRequestComment, type PullRequestCommit, type PullRequestFile, type PullRequestPerson, type PullRequestRecord, type RankedArchitecturePattern, type RankedCodeChunk, type RankedRegressionEvent, type RankedTeamRule, type RankedTestFile, type RankedWisdomUnit, type RebuildOrgGraphOptions, type RegressionEvent, type ReliabilityGate, type ReliabilityGateRejection, type ReliabilityGateResult, type ReliabilityGateStatus, type RetrievalEvalCase, type RetrievalEvalResult, type RetrievalEvalRunResult, type RulesAddInput, type RulesAddResult, type RulesEvidenceCheckResult, type RulesInitResult, type RulesSuggestOptions, SCHEMA_SQL, type SearchHistoryInput, type SemanticStatus, type SourceType, type SuggestedPrompt, TEAM_RULES_FILE, type TaskPlan, type TeamRule, type TeamRuleSuggestion, type TeamRulesValidationResult, type TestCommand, type TestFileRecord, type TestLink, type WatchRefreshInput, type WisdomCategory, type WisdomUnit, addOrgRepoConfig, addRetrievalEval, addTeamRule, anchorMcpEntry, architectureFilesFromDiff, buildAnchorContextResult, buildArchitectureIndex, buildArchitectureMap, buildFtsQuery, buildOnboardingPack, buildOrgContextResult, buildQueryTerms, calculateCoverage, canonicalizeText, categorizeWisdom, checkArchitecture, checkOrgImpact, checkSchema, checkTeamRuleEvidence, chunkCodeFile, chunkHistoricalText, claimKeyFor, clampMaxResults, classifyArchitectureArea, clearGraphQLFetchCheckpoint, clearOrgHeartbeat, clipSentence, cloneOrPullOrgRepo, cloneOrgRepos, confidenceAtLeast, confidenceLevelFor, confidenceRank, confidenceReasonsFor, countValidTeamRules, createGitHubClient, createGitHubGraphQLRequester, defaultDatabasePath, defaultGitCommandRunner, defaultOrgBaseDir, defaultOrgCloneUrl, detectGitHubRepo, detectGitRoot, detectTestCommands, detectTestCommandsForFile, discoverCodeFiles, emptyCodeIndexSummary, ensureAnchorGitExclude, ensureCursorConfig, ensureCursorRule, ensureRepository, ensureTeamRulesFile, evaluateFreshness, evaluateIndexHealth, evaluateReliabilityGate, evidenceForWisdom, explainFile, extractCodeImports, extractCodeSymbols, extractRegressionEvents, extractSymbols, extractWisdomUnits, feedbackAdjustedScore, fetchMergedPullRequests, fetchMergedPullRequestsWithGraphQL, fetchPullRequestDetails, filesFromDiff, findOrgApiConsumers, formatAnchorContext, formatIndexStatus, formatSearchHistory, getAnchorIndexHealth, getArchitectureContext, getArchitectureMapContext, getGitHubRateLimitDelayMs, getGraphQLFetchCheckpoint, getIndexStatus, getLastSyncTime, getOrgArchitectureMap, getOrgGraphCounts, getOrgGraphState, getOrgRepoState, getOrgStatus, getPlaybook, getSemanticStatus, getSuggestedPromptTexts, getSuggestedPrompts, getWisdomCategoryCounts, githubAuthFixMessage, graphQLFetchCheckpointScope, hasHighSignalLanguage, indexCodebase, indexOrgRepos, indexPullRequests, inferTestAwareness, initOrgConfig, initPlaybooks, initRetrievalEvals, initializeSchema, isGitHubGraphQLResourceLimitError, isGitHubRateLimitError, isHardExcludedCodePath, isTestFilePath, listFeedbackEvents, listOrgNames, listPlaybooks, loadCurrentCodeSnapshot, loadOrgConfig, loadTeamRulesFile, maybeLoadOrgConfig, mergeAnchorMcpConfig, normalizePullRequest, openAnchorDatabase, openAnchorDatabaseReadOnly, openOrgDatabase, openOrgDatabaseReadOnly, orgCloneStateFromResult, orgConfigPath, orgDatabasePath, orgHeartbeatPath, orgRepoLocalPath, orgReposRoot, orgRoot, paginateWithGitHubRateLimit, parseGitHubRemote, planTask, plannedOrgCloneCommands, rankArchitecturePatterns, rankCodeChunks, rankRegressionEvents, rankRelevantTests, rankTeamRules, rankWisdomUnits, readOrgHeartbeat, rebuildOrgGraph, recordFeedback, recordIndexRun, recordOrgGraphState, recordOrgIndexRun, redactSecrets, redactedHistoricalText, refreshTestCommands, refreshWatchIndex, removeOrgRepoConfig, replaceCodeIndex, repoAliasFromFullName, requestWithGitHubRateLimit, resolveGitHubToken, resolveOrgForTool, resolvePullRequestDetailConcurrency, resolvePullRequestFetchLimit, reviewDiff, runAnchorCi, runDoctor, runRetrievalEvals, sanitizeHistoricalText, saveGraphQLFetchCheckpoint, saveOrgConfig, shouldFallbackToRestAfterGraphQLError, shouldSyncSince, sourceTypeLabel, stripPromptInjection, suggestPlaybooks, suggestTeamRules, syncOrgConfigToDatabase, syncPlaybooksToDatabase, tokenizeSearchText, truncateText, uniqueStrings, updateGitHubGraphQLRateLimitState, updateOrgRepoState, updateSyncState, upsertPullRequest, validateOrgName, validateOrgRepoFullName, validateOrgRepoGroup, validateTeamRulesFile, watchCodebase, writeOrgHeartbeat };