@grepr/cli 1.14.13-7f3738f → 1.15.0-48d68ee
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/build/dist/commands/job-draft-command.d.ts.map +1 -1
- package/build/dist/commands/job-draft-command.js +6 -71
- package/build/dist/commands/job-draft-command.js.map +1 -1
- package/build/dist/docs-index/index.json +1 -1
- package/build/dist/grepr.d.ts.map +1 -1
- package/build/dist/grepr.js +0 -2
- package/build/dist/grepr.js.map +1 -1
- package/build/dist/lib/backfill.js +4 -8
- package/build/dist/lib/backfill.js.map +1 -1
- package/build/dist/lib/job-patch.d.ts +15 -31
- package/build/dist/lib/job-patch.d.ts.map +1 -1
- package/build/dist/lib/job-patch.js +39 -709
- package/build/dist/lib/job-patch.js.map +1 -1
- package/build/dist/lib/job-plan.d.ts +3 -6
- package/build/dist/lib/job-plan.d.ts.map +1 -1
- package/build/dist/lib/job-plan.js +5 -55
- package/build/dist/lib/job-plan.js.map +1 -1
- package/build/dist/lib/option-parsers.d.ts +0 -5
- package/build/dist/lib/option-parsers.d.ts.map +1 -1
- package/build/dist/lib/option-parsers.js +0 -7
- package/build/dist/lib/option-parsers.js.map +1 -1
- package/build/dist/lib/signal-source.d.ts +1 -1
- package/build/dist/lib/signal-source.d.ts.map +1 -1
- package/build/dist/lib/signal-source.js +10 -69
- package/build/dist/lib/signal-source.js.map +1 -1
- package/build/dist/openapi/openApiTypes.d.ts +238 -16
- package/build/dist/openapi/openApiTypes.d.ts.map +1 -1
- package/build/dist/openapi/openApiTypes.js +26 -0
- package/build/dist/openapi/openApiTypes.js.map +1 -1
- package/build/dist/openapi-docs/api/Agents/create_2.md +1 -1
- package/build/dist/openapi-docs/api/Agents/investigations.md +1 -1
- package/build/dist/openapi-docs/api/Agents/update.md +1 -1
- package/build/dist/openapi-docs/api/Datasets/getDatasetDataTypes.md +25 -0
- package/build/dist/openapi-docs/schemas/AgentConfigCreate.md +6 -0
- package/build/dist/openapi-docs/schemas/AgentConfigPayload.md +6 -0
- package/build/dist/openapi-docs/schemas/AgentConfigUpdate.md +6 -0
- package/build/dist/openapi-docs/schemas/AgentDecisionConfiguration.md +19 -0
- package/build/dist/openapi-docs/schemas/AgentSchedule.md +16 -0
- package/build/dist/openapi-docs/schemas/AnalyticsDiagnostic.md +4 -1
- package/build/dist/openapi-docs/schemas/AnalyticsDiagnosticRange.md +19 -0
- package/build/dist/openapi-docs/schemas/AnalyticsDraftRequest.md +2 -2
- package/build/dist/openapi-docs/schemas/AnalyticsField.md +6 -0
- package/build/dist/openapi-docs/schemas/AnalyticsQuery.md +3 -0
- package/build/dist/openapi-docs/schemas/AnalyticsResultGrouping.md +23 -0
- package/build/dist/openapi-docs/schemas/AnalyticsResultShape.md +22 -0
- package/build/dist/openapi-docs/schemas/AnalyticsTableBinding.md +1 -1
- package/build/dist/openapi-docs/schemas/AnalyticsVocabularyResponse.md +4 -0
- package/build/dist/openapi-docs/schemas/AthenaAgentSessionsSource.md +1 -1
- package/build/dist/openapi-docs/schemas/AthenaAnalyticsSource.md +3 -3
- package/build/dist/openapi-docs/schemas/ChangeFinding.md +1 -1
- package/build/dist/openapi-docs/schemas/DatasetDataTypes.md +9 -0
- package/build/dist/openapi-docs/schemas/DecisionOutcome.md +11 -0
- package/build/dist/openapi-docs/schemas/EventRecord.md +11 -0
- package/build/dist/openapi-docs/schemas/InvestigationSummary.md +1 -1
- package/build/dist/openapi-docs/schemas/InvestigationTranscript.md +4 -1
- package/build/dist/openapi-docs/schemas/IssueRun.md +1 -1
- package/build/dist/openapi-docs/schemas/PipelineChangeRequest.md +4 -0
- package/build/dist/openapi-docs/schemas/SignalDecision.md +14 -0
- package/build/dist/openapi-docs/schemas/SqlAnalyticsQuery.md +29 -0
- package/build/dist/openapi-docs/schemas/SqlAnalyticsTable.md +16 -0
- package/build/dist/openapi-docs/schemas/TrinoAnalyticsSource.md +3 -3
- package/build/dist/openapi-docs/schemas/TrinoRawLogsSource.md +1 -1
- package/build/dist/openapi-docs/schemas/TrinoRawSpanSource.md +1 -1
- package/build/dist/openapi-docs/schemas/TrinoReducerLogSource.md +1 -1
- package/build/dist/types.d.ts +8 -37
- package/build/dist/types.d.ts.map +1 -1
- package/build/dist/types.js +0 -69
- package/build/dist/types.js.map +1 -1
- package/package.json +1 -1
- package/build/dist/commands/job-to-test-command.d.ts +0 -74
- package/build/dist/commands/job-to-test-command.d.ts.map +0 -1
- package/build/dist/commands/job-to-test-command.js +0 -161
- package/build/dist/commands/job-to-test-command.js.map +0 -1
- package/build/dist/lib/job-graph-log-pipeline-constants.d.ts +0 -12
- package/build/dist/lib/job-graph-log-pipeline-constants.d.ts.map +0 -1
- package/build/dist/lib/job-graph-log-pipeline-constants.js +0 -16
- package/build/dist/lib/job-graph-log-pipeline-constants.js.map +0 -1
- package/build/dist/lib/job-graph-transformer.d.ts +0 -119
- package/build/dist/lib/job-graph-transformer.d.ts.map +0 -1
- package/build/dist/lib/job-graph-transformer.js +0 -767
- package/build/dist/lib/job-graph-transformer.js.map +0 -1
- package/build/dist/lib/job-graph-utils.d.ts +0 -50
- package/build/dist/lib/job-graph-utils.d.ts.map +0 -1
- package/build/dist/lib/job-graph-utils.js +0 -90
- package/build/dist/lib/job-graph-utils.js.map +0 -1
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
import { CreateLogsBackfillJobDataType, CreateSpansBackfillJobDataType,
|
|
2
|
-
import { parseEdge } from './job-graph-utils.js';
|
|
1
|
+
import { CreateLogsBackfillJobDataType, CreateSpansBackfillJobDataType, TemplateOperationType } from '../openapi/openApiTypes.js';
|
|
3
2
|
const LOG_REDUCER_TEMPLATE_NAME = 'log-reducer-job-graph-template';
|
|
4
3
|
const TRACE_REDUCER_TEMPLATE_NAME = 'trace-reducer-job-graph-template';
|
|
5
|
-
const RAW_LOGS_SINK_NAME_PREFIX = 'raw_data_sink';
|
|
6
4
|
export function parseSignalDataType(value) {
|
|
7
5
|
switch (value) {
|
|
8
6
|
case CreateLogsBackfillJobDataType.logs:
|
|
@@ -35,8 +33,7 @@ export async function resolveSignalSource(options, apiClient, resolutionOptions
|
|
|
35
33
|
dataType: options.dataType ?? CreateLogsBackfillJobDataType.logs,
|
|
36
34
|
datasetId: options.datasetId,
|
|
37
35
|
teamIds: [],
|
|
38
|
-
sinkOperations: []
|
|
39
|
-
postReducerSqlOperations: []
|
|
36
|
+
sinkOperations: []
|
|
40
37
|
};
|
|
41
38
|
}
|
|
42
39
|
const dataset = await resolveDatasetFromOptions(options, apiClient);
|
|
@@ -44,8 +41,7 @@ export async function resolveSignalSource(options, apiClient, resolutionOptions
|
|
|
44
41
|
dataType: options.dataType ?? CreateLogsBackfillJobDataType.logs,
|
|
45
42
|
datasetId: dataset.id,
|
|
46
43
|
teamIds: includeTeamIds ? dataset.teamIds ?? [] : [],
|
|
47
|
-
sinkOperations: []
|
|
48
|
-
postReducerSqlOperations: []
|
|
44
|
+
sinkOperations: []
|
|
49
45
|
};
|
|
50
46
|
}
|
|
51
47
|
const job = await apiClient.getJob(options.jobId);
|
|
@@ -74,10 +70,12 @@ async function inferJobSource(job, apiClient) {
|
|
|
74
70
|
throw new Error(`Source job ${job.id ?? job.name} has an ambiguous pipeline definition`);
|
|
75
71
|
}
|
|
76
72
|
const templateOperation = templateOperations[0];
|
|
77
|
-
if (templateOperation) {
|
|
78
|
-
|
|
73
|
+
if (!templateOperation) {
|
|
74
|
+
throw new Error(`Source job ${job.id ?? job.name} uses a raw job graph (no template-operation vertex). ` +
|
|
75
|
+
'--job-id supports only template-backed pipelines. ' +
|
|
76
|
+
'Pass --dataset-id or --dataset-name instead. For a trace pipeline, also pass --data-type spans.');
|
|
79
77
|
}
|
|
80
|
-
return
|
|
78
|
+
return inferTemplateJobSource(templateOperation, apiClient);
|
|
81
79
|
}
|
|
82
80
|
async function inferTemplateJobSource(operation, apiClient) {
|
|
83
81
|
const template = await apiClient.getTemplate(operation.templateId, operation.templateVersion);
|
|
@@ -95,8 +93,7 @@ async function inferTemplateJobSource(operation, apiClient) {
|
|
|
95
93
|
datasetId,
|
|
96
94
|
sinkOperations: sinks
|
|
97
95
|
.map(wrapper => wrapper.sink)
|
|
98
|
-
.filter(isOperation)
|
|
99
|
-
postReducerSqlOperations: []
|
|
96
|
+
.filter(isOperation)
|
|
100
97
|
};
|
|
101
98
|
}
|
|
102
99
|
case TRACE_REDUCER_TEMPLATE_NAME: {
|
|
@@ -110,57 +107,13 @@ async function inferTemplateJobSource(operation, apiClient) {
|
|
|
110
107
|
sinkOperations: (spansInput.sinks ?? [])
|
|
111
108
|
.map(wrapper => wrapper.sink)
|
|
112
109
|
.filter(isOperation),
|
|
113
|
-
|
|
114
|
-
? [spansInput.sqlOperations.postReducer.sqlOperation]
|
|
115
|
-
: []
|
|
110
|
+
postReducerSqlOperation: spansInput.sqlOperations?.postReducer?.sqlOperation
|
|
116
111
|
};
|
|
117
112
|
}
|
|
118
113
|
default:
|
|
119
114
|
throw new Error(`Source job uses unsupported pipeline template ${template.name} (${operation.templateId})`);
|
|
120
115
|
}
|
|
121
116
|
}
|
|
122
|
-
function inferRawJobSource(job) {
|
|
123
|
-
const operations = job.jobGraph.vertices;
|
|
124
|
-
const rawLogSinks = operations.filter(isRawLogsSink);
|
|
125
|
-
const traceReducers = operations.filter(isTraceReducerWithDataset);
|
|
126
|
-
if (rawLogSinks.length > 0 && traceReducers.length > 0) {
|
|
127
|
-
throw new Error(`Source job ${job.id ?? job.name} contains both logs and spans datasets`);
|
|
128
|
-
}
|
|
129
|
-
if (rawLogSinks.length > 1) {
|
|
130
|
-
throw new Error(`Source job ${job.id ?? job.name} has multiple raw logs datasets; ` +
|
|
131
|
-
'use --dataset-id to select one explicitly');
|
|
132
|
-
}
|
|
133
|
-
if (traceReducers.length > 1) {
|
|
134
|
-
throw new Error(`Source job ${job.id ?? job.name} has multiple spans datasets; ` +
|
|
135
|
-
'use --dataset-id to select one explicitly');
|
|
136
|
-
}
|
|
137
|
-
const rawLogSink = rawLogSinks[0];
|
|
138
|
-
if (rawLogSinks.length === 1 && rawLogSink) {
|
|
139
|
-
return {
|
|
140
|
-
dataType: CreateLogsBackfillJobDataType.logs,
|
|
141
|
-
datasetId: rawLogSink.datasetId,
|
|
142
|
-
sinkOperations: operations,
|
|
143
|
-
postReducerSqlOperations: []
|
|
144
|
-
};
|
|
145
|
-
}
|
|
146
|
-
const traceReducer = traceReducers[0];
|
|
147
|
-
if (traceReducers.length === 1 && traceReducer) {
|
|
148
|
-
const postReducerSqlOperations = job.jobGraph.vertices
|
|
149
|
-
.filter(isSqlOperation)
|
|
150
|
-
.filter(operation => job.jobGraph.edges.some(edge => {
|
|
151
|
-
const parsed = parseEdge(edge);
|
|
152
|
-
return parsed.sourceVertex === traceReducer.name &&
|
|
153
|
-
parsed.targetVertex === operation.name;
|
|
154
|
-
}));
|
|
155
|
-
return {
|
|
156
|
-
dataType: CreateSpansBackfillJobDataType.spans,
|
|
157
|
-
datasetId: traceReducer.datasetId,
|
|
158
|
-
sinkOperations: operations,
|
|
159
|
-
postReducerSqlOperations
|
|
160
|
-
};
|
|
161
|
-
}
|
|
162
|
-
throw new Error(`Source job ${job.id ?? job.name} has no supported raw logs or spans dataset`);
|
|
163
|
-
}
|
|
164
117
|
async function resolveDatasetFromOptions(options, apiClient) {
|
|
165
118
|
if (options.datasetId) {
|
|
166
119
|
return resolveDataset(options.datasetId, 'id', apiClient);
|
|
@@ -186,18 +139,6 @@ function requireDatasetName(datasetName) {
|
|
|
186
139
|
function isTemplateOperation(operation) {
|
|
187
140
|
return operation.type === TemplateOperationType.template_operation;
|
|
188
141
|
}
|
|
189
|
-
function isSqlOperation(operation) {
|
|
190
|
-
return operation.type === SqlOperationType.sql_operation;
|
|
191
|
-
}
|
|
192
|
-
function isRawLogsSink(operation) {
|
|
193
|
-
return operation.type === LogsIcebergTableSinkType.logs_iceberg_table_sink &&
|
|
194
|
-
operation.name.startsWith(RAW_LOGS_SINK_NAME_PREFIX);
|
|
195
|
-
}
|
|
196
|
-
function isTraceReducerWithDataset(operation) {
|
|
197
|
-
return operation.type === TraceReducerType.trace_reducer &&
|
|
198
|
-
typeof operation.datasetId === 'string' &&
|
|
199
|
-
operation.datasetId.length > 0;
|
|
200
|
-
}
|
|
201
142
|
function isOperation(operation) {
|
|
202
143
|
return operation !== undefined;
|
|
203
144
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signal-source.js","sourceRoot":"","sources":["../../../src/main/typescript/lib/signal-source.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,6BAA6B,EAC7B,8BAA8B,EAC9B,
|
|
1
|
+
{"version":3,"file":"signal-source.js","sourceRoot":"","sources":["../../../src/main/typescript/lib/signal-source.ts"],"names":[],"mappings":"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"}
|