@semacode/cli 2.1.0 → 2.3.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.
- package/README.md +107 -4
- package/dist/agentContext.d.ts +1 -1
- package/dist/agentContextPack.js +6 -1
- package/dist/agentContextTipos.d.ts +4 -2
- package/dist/agentContextTipos.js +7 -0
- package/dist/agentEntryPoints.js +70 -19
- package/dist/comandos.js +6 -0
- package/dist/discovery/catalog.d.ts +11 -0
- package/dist/discovery/catalog.js +521 -0
- package/dist/discovery/command.d.ts +11 -0
- package/dist/discovery/command.js +226 -0
- package/dist/discovery/index.d.ts +5 -0
- package/dist/discovery/index.js +8 -0
- package/dist/discovery/ranker.d.ts +3 -0
- package/dist/discovery/ranker.js +310 -0
- package/dist/discovery/redaction.d.ts +2 -0
- package/dist/discovery/redaction.js +21 -0
- package/dist/discovery/render.d.ts +2 -0
- package/dist/discovery/render.js +100 -0
- package/dist/discovery/types.d.ts +119 -0
- package/dist/discovery/types.js +13 -0
- package/dist/execucoesExternas.js +19 -5
- package/dist/exemplosOficiais.js +29 -8
- package/dist/iaPrompts.d.ts +1 -1
- package/dist/iaPrompts.js +3 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +24 -5
- package/dist/index.part01.d.ts +1 -1
- package/dist/index.part01.js +47 -3
- package/dist/index.part06.js +3 -0
- package/dist/initTemplatesBase.js +3 -2
- package/dist/pipelineConteudo/adapters.d.ts +84 -0
- package/dist/pipelineConteudo/adapters.js +449 -0
- package/dist/pipelineConteudo/canonical.d.ts +18 -0
- package/dist/pipelineConteudo/canonical.js +107 -0
- package/dist/pipelineConteudo/command.d.ts +3 -0
- package/dist/pipelineConteudo/command.js +572 -0
- package/dist/pipelineConteudo/index.d.ts +9 -0
- package/dist/pipelineConteudo/index.js +12 -0
- package/dist/pipelineConteudo/ledger.d.ts +68 -0
- package/dist/pipelineConteudo/ledger.js +732 -0
- package/dist/pipelineConteudo/planner.d.ts +12 -0
- package/dist/pipelineConteudo/planner.js +366 -0
- package/dist/pipelineConteudo/projection.d.ts +16 -0
- package/dist/pipelineConteudo/projection.js +57 -0
- package/dist/pipelineConteudo/state.d.ts +23 -0
- package/dist/pipelineConteudo/state.js +615 -0
- package/dist/pipelineConteudo/trust.d.ts +17 -0
- package/dist/pipelineConteudo/trust.js +750 -0
- package/dist/pipelineConteudo/types.d.ts +331 -0
- package/dist/pipelineConteudo/types.js +4 -0
- package/dist/profileArtefatoValidadores.d.ts +3 -2
- package/dist/profileArtefatoValidadores.js +81 -0
- package/dist/profileAuthorTipos.d.ts +4 -3
- package/dist/profileCatalogo.d.ts +5 -5
- package/dist/profileCatalogo.js +30 -0
- package/dist/profileCommand.d.ts +8 -2
- package/dist/profileCommand.js +15 -5
- package/dist/profileRegras.d.ts +5 -5
- package/dist/profileRegras.js +13 -1
- package/dist/profileRulePacks.js +68 -0
- package/dist/sistemasInterativos/adapterProtocol.d.ts +3 -0
- package/dist/sistemasInterativos/adapterProtocol.js +240 -0
- package/dist/sistemasInterativos/advancedCatalog.d.ts +5 -0
- package/dist/sistemasInterativos/advancedCatalog.js +442 -0
- package/dist/sistemasInterativos/autonomy.d.ts +230 -0
- package/dist/sistemasInterativos/autonomy.js +753 -0
- package/dist/sistemasInterativos/canonical.d.ts +3 -0
- package/dist/sistemasInterativos/canonical.js +43 -0
- package/dist/sistemasInterativos/catalog.d.ts +116 -0
- package/dist/sistemasInterativos/catalog.js +543 -0
- package/dist/sistemasInterativos/command.d.ts +7 -0
- package/dist/sistemasInterativos/command.js +311 -0
- package/dist/sistemasInterativos/controlRun.d.ts +56 -0
- package/dist/sistemasInterativos/controlRun.js +391 -0
- package/dist/sistemasInterativos/evidence.d.ts +5 -0
- package/dist/sistemasInterativos/evidence.js +306 -0
- package/dist/sistemasInterativos/experienceIr.d.ts +12 -0
- package/dist/sistemasInterativos/experienceIr.js +895 -0
- package/dist/sistemasInterativos/experienceIrSemantics.d.ts +30 -0
- package/dist/sistemasInterativos/experienceIrSemantics.js +368 -0
- package/dist/sistemasInterativos/experienceIrTypes.d.ts +370 -0
- package/dist/sistemasInterativos/experienceIrTypes.js +5 -0
- package/dist/sistemasInterativos/extensionCommand.d.ts +391 -0
- package/dist/sistemasInterativos/extensionCommand.js +383 -0
- package/dist/sistemasInterativos/index.d.ts +19 -0
- package/dist/sistemasInterativos/index.js +22 -0
- package/dist/sistemasInterativos/operations.d.ts +40 -0
- package/dist/sistemasInterativos/operations.js +1167 -0
- package/dist/sistemasInterativos/operationsTypes.d.ts +297 -0
- package/dist/sistemasInterativos/operationsTypes.js +11 -0
- package/dist/sistemasInterativos/planner.d.ts +2 -0
- package/dist/sistemasInterativos/planner.js +159 -0
- package/dist/sistemasInterativos/portability.d.ts +164 -0
- package/dist/sistemasInterativos/portability.js +539 -0
- package/dist/sistemasInterativos/render.d.ts +3 -0
- package/dist/sistemasInterativos/render.js +179 -0
- package/dist/sistemasInterativos/temporal.d.ts +183 -0
- package/dist/sistemasInterativos/temporal.js +543 -0
- package/dist/sistemasInterativos/types.d.ts +215 -0
- package/dist/sistemasInterativos/types.js +4 -0
- package/dist/sistemasInterativos/validator.d.ts +2 -0
- package/dist/sistemasInterativos/validator.js +305 -0
- package/docs/README.md +9 -0
- package/docs/ai-integration.md +7 -1
- package/docs/ai-workflow.md +5 -4
- package/docs/commands.md +43 -1
- package/docs/descoberta-capacidades.md +106 -0
- package/docs/documentation.md +11 -2
- package/docs/pipeline-conteudo.md +246 -0
- package/docs/profiles.md +11 -2
- package/docs/sistemas-interativos.md +381 -0
- package/docs/testing.md +11 -2
- package/exemplos/pipeline-conteudo/README.md +44 -0
- package/exemplos/pipeline-conteudo/alvos.json +23 -0
- package/exemplos/pipeline-conteudo/definicao.json +136 -0
- package/exemplos/profile_simulation.sema +211 -0
- package/exemplos/sistemas-interativos/README.md +100 -0
- package/exemplos/sistemas-interativos/advanced/acceptance-context-evaluate-valid.json +5 -0
- package/exemplos/sistemas-interativos/advanced/acceptance-lock-valid.json +16 -0
- package/exemplos/sistemas-interativos/advanced/asset-provenance-valid.json +32 -0
- package/exemplos/sistemas-interativos/advanced/autonomy-repair-valid.json +93 -0
- package/exemplos/sistemas-interativos/advanced/control-run-definition-valid.json +78 -0
- package/exemplos/sistemas-interativos/advanced/control-run-valid.json +27 -0
- package/exemplos/sistemas-interativos/advanced/distributed-workers-valid.json +79 -0
- package/exemplos/sistemas-interativos/advanced/editor-state-valid.json +42 -0
- package/exemplos/sistemas-interativos/advanced/engine-snapshot-after-valid.json +32 -0
- package/exemplos/sistemas-interativos/advanced/engine-snapshot-before-valid.json +23 -0
- package/exemplos/sistemas-interativos/advanced/job-orchestration-valid.json +39 -0
- package/exemplos/sistemas-interativos/advanced/multimodal-evidence-valid.json +46 -0
- package/exemplos/sistemas-interativos/advanced/multiplayer-authority-valid.json +39 -0
- package/exemplos/sistemas-interativos/advanced/playtest-fuzz-valid.json +37 -0
- package/exemplos/sistemas-interativos/advanced/portability-valid.json +104 -0
- package/exemplos/sistemas-interativos/advanced/temporal-evidence-valid.json +27 -0
- package/exemplos/sistemas-interativos/advanced/temporal-valid.json +118 -0
- package/exemplos/sistemas-interativos/experience-ir-valid.json +459 -0
- package/exemplos/sistemas-interativos/game-2d.json +83 -0
- package/exemplos/sistemas-interativos/game-3d-human.json +81 -0
- package/exemplos/sistemas-interativos/game-pixel-16-bit.json +97 -0
- package/exemplos/sistemas-interativos/game-pixel-8-bit.json +94 -0
- package/exemplos/sistemas-interativos/game-xr-human.json +80 -0
- package/exemplos/sistemas-interativos/hybrid-2-5d.json +108 -0
- package/exemplos/sistemas-interativos/protocol-mutating-rollback-valid.json +75 -0
- package/exemplos/sistemas-interativos/protocol-read-only-valid.json +58 -0
- package/exemplos/sistemas-interativos/simulation-2d-controlled.json +97 -0
- package/exemplos/sistemas-interativos/simulation-3d-calibrated-autonomous.json +141 -0
- package/exemplos/sistemas-interativos/simulation-headless-autonomous-batch.json +112 -0
- package/exemplos/sistemas-interativos/simulation-pixel-16-bit.json +103 -0
- package/exemplos/sistemas-interativos/simulation-text-controlled.json +95 -0
- package/node_modules/@sema/gerador-lua/dist/index.js +78 -4
- package/node_modules/@sema/gerador-lua/dist/index.js.map +1 -1
- package/node_modules/@sema/gerador-php/dist/index.js +8 -0
- package/node_modules/@sema/gerador-php/dist/index.js.map +1 -1
- package/package.json +8 -1
|
@@ -0,0 +1,442 @@
|
|
|
1
|
+
// SEMA-GOVERNED: sema.produto.sistemas_interativos.catalogo_avancado
|
|
2
|
+
// Descricao: pipelines e descriptors P0/P1/P2, compartilhados pelo planner e pela descoberta AI-first.
|
|
3
|
+
const KINDS = ["GAME", "SIMULATION", "HYBRID"];
|
|
4
|
+
const SPATIAL = ["NON_SPATIAL", "TWO_D", "TWO_POINT_FIVE_D", "THREE_D"];
|
|
5
|
+
const RENDER = ["HEADLESS", "TEXT", "VISUAL", "XR"];
|
|
6
|
+
const VISUAL = ["NONE", "PIXEL_8_BIT", "PIXEL_16_BIT", "RASTER", "VECTOR", "STYLIZED", "REALISTIC"];
|
|
7
|
+
const CONTROL = ["HUMAN", "SCRIPTED", "AI", "HYBRID", "AUTONOMOUS", "UNCONTROLLED"];
|
|
8
|
+
const TIME = ["TURN_BASED", "FIXED_STEP", "VARIABLE_STEP", "REAL_TIME", "EVENT_DRIVEN", "BATCH", "ACCELERATED"];
|
|
9
|
+
const FIDELITY = ["ARCADE", "STYLIZED", "SYSTEMIC", "REALISTIC", "CALIBRATED"];
|
|
10
|
+
function freezeDeep(value) {
|
|
11
|
+
if (typeof value !== "object" || value === null || Object.isFrozen(value))
|
|
12
|
+
return value;
|
|
13
|
+
for (const item of Object.values(value))
|
|
14
|
+
freezeDeep(item);
|
|
15
|
+
return Object.freeze(value);
|
|
16
|
+
}
|
|
17
|
+
function stage(stageId, capability, dependsOn, produces, requiredEvidence) {
|
|
18
|
+
return { stageId, capability, dependsOn, produces, requiredEvidence };
|
|
19
|
+
}
|
|
20
|
+
function pipeline(input) {
|
|
21
|
+
return {
|
|
22
|
+
version: "1.0.0",
|
|
23
|
+
kinds: input.kinds ?? KINDS,
|
|
24
|
+
spatialModels: input.spatialModels ?? SPATIAL,
|
|
25
|
+
renderModes: input.renderModes ?? RENDER,
|
|
26
|
+
visualProfiles: input.visualProfiles ?? VISUAL,
|
|
27
|
+
controlModes: input.controlModes ?? CONTROL,
|
|
28
|
+
fidelities: input.fidelities ?? FIDELITY,
|
|
29
|
+
...input,
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
export const CATALOGO_PIPELINES_INTERATIVOS_AVANCADOS = freezeDeep([
|
|
33
|
+
pipeline({
|
|
34
|
+
pipelineId: "interactive.experience_ir",
|
|
35
|
+
label: "Experience IR content-addressed",
|
|
36
|
+
summary: "Valida, indexa e consulta o grafo portátil de projeto, mundo, cena, entidade, componente e asset.",
|
|
37
|
+
capabilities: ["interactive.ir.validate", "interactive.ir.index", "interactive.ir.query"],
|
|
38
|
+
stages: [
|
|
39
|
+
stage("validate", "interactive.ir.validate", [], ["validated-ir"], ["ir.schema.valid", "ir.references.resolved", "ir.digest"]),
|
|
40
|
+
stage("index", "interactive.ir.index", ["validate"], ["ir-index"], ["ir.index.valid", "ir.chunks.content_addressed"]),
|
|
41
|
+
stage("query", "interactive.ir.query", ["index"], ["query-plan"], ["ir.query.bounded"]),
|
|
42
|
+
],
|
|
43
|
+
requiredEvidence: ["ir.schema.valid", "ir.references.resolved", "ir.digest", "ir.index.valid", "ir.chunks.content_addressed", "ir.query.bounded"],
|
|
44
|
+
useWhen: ["modelar experiência independente de engine", "consultar cena por IDs semânticos", "transportar mundo entre ferramentas"],
|
|
45
|
+
avoidWhen: ["o pedido é executar ou converter uma engine diretamente"],
|
|
46
|
+
}),
|
|
47
|
+
pipeline({
|
|
48
|
+
pipelineId: "interactive.observe",
|
|
49
|
+
label: "Observação read-only de engine",
|
|
50
|
+
summary: "Planeja detect, probe, snapshot e diff antes de qualquer mutação em engine ou editor externo.",
|
|
51
|
+
capabilities: ["interactive.engine.detect", "interactive.engine.probe", "interactive.engine.snapshot", "interactive.engine.diff"],
|
|
52
|
+
stages: [
|
|
53
|
+
stage("detect", "interactive.engine.detect", [], ["engine-detection"], ["engine.detected"]),
|
|
54
|
+
stage("probe", "interactive.engine.probe", ["detect"], ["engine-probe"], ["engine.probe.observed"]),
|
|
55
|
+
stage("snapshot", "interactive.engine.snapshot", ["probe"], ["engine-snapshot"], ["engine.snapshot.digest", "semantic.ids.bound"]),
|
|
56
|
+
stage("diff", "interactive.engine.diff", ["snapshot"], ["engine-diff"], ["engine.diff.structured"]),
|
|
57
|
+
],
|
|
58
|
+
requiredEvidence: ["engine.detected", "engine.probe.observed", "engine.snapshot.digest", "semantic.ids.bound", "engine.diff.structured"],
|
|
59
|
+
useWhen: ["inspecionar Blender Unreal Unity Godot ou runtime", "observar antes de alterar", "comparar estado de cena"],
|
|
60
|
+
avoidWhen: ["não existe autorização nem adapter externo disponível"],
|
|
61
|
+
}),
|
|
62
|
+
pipeline({
|
|
63
|
+
pipelineId: "interactive.asset_provenance",
|
|
64
|
+
label: "Proveniência de assets",
|
|
65
|
+
summary: "Liga fonte, licença, hash, transformações e derivados sem armazenar os binários no Sema.",
|
|
66
|
+
capabilities: ["interactive.asset.provenance", "interactive.asset.license", "interactive.asset.lineage"],
|
|
67
|
+
stages: [
|
|
68
|
+
stage("source", "interactive.asset.provenance", [], ["asset-source-record"], ["asset.source.digest", "asset.source.origin"]),
|
|
69
|
+
stage("license", "interactive.asset.license", ["source"], ["license-record"], ["asset.license.valid"]),
|
|
70
|
+
stage("lineage", "interactive.asset.lineage", ["license"], ["asset-lineage"], ["asset.transforms.recorded", "asset.derivatives.bound"]),
|
|
71
|
+
],
|
|
72
|
+
requiredEvidence: ["asset.source.digest", "asset.source.origin", "asset.license.valid", "asset.transforms.recorded", "asset.derivatives.bound"],
|
|
73
|
+
useWhen: ["importar ou derivar asset", "provar licença e linhagem", "rastrear Blender até artefato final"],
|
|
74
|
+
avoidWhen: ["a origem ou licença é desconhecida"],
|
|
75
|
+
}),
|
|
76
|
+
pipeline({
|
|
77
|
+
pipelineId: "interactive.editor_state",
|
|
78
|
+
label: "Estado recuperável do editor",
|
|
79
|
+
summary: "Captura cena, seleção, modo, não salvos, shaders, imports, plugins, modais e processos.",
|
|
80
|
+
capabilities: ["interactive.editor.snapshot", "interactive.editor.unsaved", "interactive.editor.background_jobs"],
|
|
81
|
+
stages: [
|
|
82
|
+
stage("snapshot", "interactive.editor.snapshot", [], ["editor-state"], ["editor.scene.active", "editor.mode", "editor.selection"]),
|
|
83
|
+
stage("unsaved", "interactive.editor.unsaved", ["snapshot"], ["unsaved-report"], ["editor.unsaved.observed", "editor.modals.observed"]),
|
|
84
|
+
stage("jobs", "interactive.editor.background_jobs", ["unsaved"], ["editor-jobs"], ["editor.shaders.observed", "editor.imports.observed", "editor.processes.observed"]),
|
|
85
|
+
],
|
|
86
|
+
requiredEvidence: ["editor.scene.active", "editor.mode", "editor.selection", "editor.unsaved.observed", "editor.modals.observed", "editor.shaders.observed", "editor.imports.observed", "editor.processes.observed"],
|
|
87
|
+
useWhen: ["evitar concorrência no editor", "decidir retomada segura", "diagnosticar editor aparentemente travado"],
|
|
88
|
+
avoidWhen: ["matar processo apenas por timeout"],
|
|
89
|
+
}),
|
|
90
|
+
pipeline({
|
|
91
|
+
pipelineId: "interactive.evidence_capture",
|
|
92
|
+
label: "Captura multimodal de evidência",
|
|
93
|
+
summary: "Planeja captura e verificação de vídeo, depth, normals, object-ID, motion, áudio, eventos e telemetria.",
|
|
94
|
+
capabilities: ["interactive.evidence.plan", "interactive.evidence.capture", "interactive.evidence.verify"],
|
|
95
|
+
stages: [
|
|
96
|
+
stage("plan", "interactive.evidence.plan", [], ["capture-plan"], ["evidence.claim.bound", "evidence.modalities.selected"]),
|
|
97
|
+
stage("capture", "interactive.evidence.capture", ["plan"], ["multimodal-bundle"], ["evidence.artifacts.digested", "evidence.timebase.bound"]),
|
|
98
|
+
stage("verify", "interactive.evidence.verify", ["capture"], ["verification-report"], ["evidence.verifier.independent", "evidence.decision"]),
|
|
99
|
+
],
|
|
100
|
+
requiredEvidence: ["evidence.claim.bound", "evidence.modalities.selected", "evidence.artifacts.digested", "evidence.timebase.bound", "evidence.verifier.independent", "evidence.decision"],
|
|
101
|
+
useWhen: ["provar claim visual temporal geométrico ou sonoro", "substituir opinião solta por bundle"],
|
|
102
|
+
avoidWhen: ["screenshot isolado é insuficiente para o claim"],
|
|
103
|
+
}),
|
|
104
|
+
pipeline({
|
|
105
|
+
pipelineId: "interactive.job_recovery",
|
|
106
|
+
label: "Job, lock e retomada",
|
|
107
|
+
summary: "Planeja locks, budgets, heartbeat, checkpoint, retomada e recovery token para trabalho externo.",
|
|
108
|
+
capabilities: ["interactive.job.lock", "interactive.job.heartbeat", "interactive.job.checkpoint", "interactive.job.resume"],
|
|
109
|
+
stages: [
|
|
110
|
+
stage("lock", "interactive.job.lock", [], ["resource-locks"], ["job.locks.valid", "job.budgets.valid"]),
|
|
111
|
+
stage("heartbeat", "interactive.job.heartbeat", ["lock"], ["heartbeat-policy"], ["job.heartbeat.valid"]),
|
|
112
|
+
stage("checkpoint", "interactive.job.checkpoint", ["heartbeat"], ["checkpoint-policy"], ["job.checkpoint.digest"]),
|
|
113
|
+
stage("resume", "interactive.job.resume", ["checkpoint"], ["resume-plan"], ["job.recovery.token", "job.resume.idempotent"]),
|
|
114
|
+
],
|
|
115
|
+
requiredEvidence: ["job.locks.valid", "job.budgets.valid", "job.heartbeat.valid", "job.checkpoint.digest", "job.recovery.token", "job.resume.idempotent"],
|
|
116
|
+
useWhen: ["usar GPU editor ou cache compartilhado", "retomar render cook ou teste", "evitar duas IAs no mesmo recurso"],
|
|
117
|
+
avoidWhen: ["não existe snapshot ou checkpoint recuperável"],
|
|
118
|
+
}),
|
|
119
|
+
pipeline({
|
|
120
|
+
pipelineId: "interactive.acceptance_lock",
|
|
121
|
+
label: "Aceite humano vinculado",
|
|
122
|
+
summary: "Prende aprovação a hash, cena e intervalo temporal, com invalidação explícita após mudança relevante.",
|
|
123
|
+
capabilities: ["interactive.acceptance.bind", "interactive.acceptance.regression", "interactive.acceptance.invalidate"],
|
|
124
|
+
stages: [
|
|
125
|
+
stage("bind", "interactive.acceptance.bind", [], ["acceptance-lock"], ["acceptance.artifact.bound", "acceptance.range.bound"]),
|
|
126
|
+
stage("regression", "interactive.acceptance.regression", ["bind"], ["acceptance-check"], ["acceptance.digest.compared"]),
|
|
127
|
+
stage("invalidate", "interactive.acceptance.invalidate", ["regression"], ["invalidation-plan"], ["acceptance.invalidation.explicit"]),
|
|
128
|
+
],
|
|
129
|
+
requiredEvidence: ["acceptance.artifact.bound", "acceptance.range.bound", "acceptance.digest.compared", "acceptance.invalidation.explicit"],
|
|
130
|
+
useWhen: ["usuário aprovou trecho e não quer regressão", "preservar shot ou comportamento aceito"],
|
|
131
|
+
avoidWhen: ["aprovação não está ligada ao artefato exato"],
|
|
132
|
+
}),
|
|
133
|
+
pipeline({
|
|
134
|
+
pipelineId: "interactive.temporal_validate",
|
|
135
|
+
label: "Contrato 4D e timeline multimodal",
|
|
136
|
+
summary: "Valida fases, tracks, clips, ordem, sync, bounds e continuidade em uma timebase explícita.",
|
|
137
|
+
capabilities: ["interactive.temporal.contract", "interactive.timeline.sync", "interactive.temporal.invariants"],
|
|
138
|
+
stages: [
|
|
139
|
+
stage("contract", "interactive.temporal.contract", [], ["temporal-contract"], ["temporal.schema.valid", "temporal.timebase.valid"]),
|
|
140
|
+
stage("sync", "interactive.timeline.sync", ["contract"], ["timeline-report"], ["timeline.multimodal.sync"]),
|
|
141
|
+
stage("invariants", "interactive.temporal.invariants", ["sync"], ["invariant-report"], ["temporal.invariants.evaluated"]),
|
|
142
|
+
],
|
|
143
|
+
requiredEvidence: ["temporal.schema.valid", "temporal.timebase.valid", "timeline.multimodal.sync", "temporal.invariants.evaluated"],
|
|
144
|
+
useWhen: ["validar posição e tempo", "sincronizar animação VFX áudio fala e legenda", "detectar ordem causal errada"],
|
|
145
|
+
avoidWhen: ["não existe timebase ou IDs semânticos"],
|
|
146
|
+
}),
|
|
147
|
+
pipeline({
|
|
148
|
+
pipelineId: "interactive.shot_validate",
|
|
149
|
+
label: "Contrato de câmera e shot",
|
|
150
|
+
summary: "Mede sujeito visível, composição, intervalo e jitter sem confundir frame bonito com continuidade.",
|
|
151
|
+
capabilities: ["interactive.shot.contract", "interactive.camera.visibility", "interactive.camera.jitter"],
|
|
152
|
+
stages: [
|
|
153
|
+
stage("contract", "interactive.shot.contract", [], ["shot-contract"], ["shot.camera.bound", "shot.subjects.bound"]),
|
|
154
|
+
stage("visibility", "interactive.camera.visibility", ["contract"], ["visibility-report"], ["camera.subject.visibility"]),
|
|
155
|
+
stage("jitter", "interactive.camera.jitter", ["visibility"], ["jitter-report"], ["camera.jitter.metric"]),
|
|
156
|
+
],
|
|
157
|
+
requiredEvidence: ["shot.camera.bound", "shot.subjects.bound", "camera.subject.visibility", "camera.jitter.metric"],
|
|
158
|
+
useWhen: ["câmera perde personagem nave ou objeto", "provar composição ao longo do shot"],
|
|
159
|
+
avoidWhen: ["apenas um frame estático foi capturado"],
|
|
160
|
+
}),
|
|
161
|
+
pipeline({
|
|
162
|
+
pipelineId: "interactive.physics_validate",
|
|
163
|
+
label: "Relações físicas verificáveis",
|
|
164
|
+
summary: "Valida colisão, attachment, separação e constraint por trace geométrico e tolerância.",
|
|
165
|
+
capabilities: ["interactive.physics.contract", "interactive.physics.trace", "interactive.physics.verify"],
|
|
166
|
+
stages: [
|
|
167
|
+
stage("contract", "interactive.physics.contract", [], ["physics-contract"], ["physics.targets.bound", "physics.tolerance.bound"]),
|
|
168
|
+
stage("trace", "interactive.physics.trace", ["contract"], ["physics-trace"], ["physics.transforms.captured", "physics.collisions.captured"]),
|
|
169
|
+
stage("verify", "interactive.physics.verify", ["trace"], ["physics-report"], ["physics.relation.verified"]),
|
|
170
|
+
],
|
|
171
|
+
requiredEvidence: ["physics.targets.bound", "physics.tolerance.bound", "physics.transforms.captured", "physics.collisions.captured", "physics.relation.verified"],
|
|
172
|
+
useWhen: ["objeto atravessa outro", "validar separação ou attachment", "provar contato antes de efeito"],
|
|
173
|
+
avoidWhen: ["PNG isolado é a única evidência"],
|
|
174
|
+
}),
|
|
175
|
+
pipeline({
|
|
176
|
+
pipelineId: "interactive.temporal_qa",
|
|
177
|
+
label: "QA temporal visual",
|
|
178
|
+
summary: "Mede flicker, ghosting, popping, exposição e jitter com thresholds e métricas.",
|
|
179
|
+
capabilities: ["interactive.qa.capture", "interactive.qa.flicker", "interactive.qa.ghosting", "interactive.qa.popping", "interactive.qa.exposure", "interactive.qa.jitter"],
|
|
180
|
+
stages: [
|
|
181
|
+
stage("capture", "interactive.qa.capture", [], ["qa-sequence"], ["qa.sequence.digested", "qa.timebase.bound"]),
|
|
182
|
+
stage("flicker", "interactive.qa.flicker", ["capture"], ["flicker-metrics"], ["qa.flicker.metric"]),
|
|
183
|
+
stage("ghosting", "interactive.qa.ghosting", ["capture"], ["ghosting-metrics"], ["qa.ghosting.metric"]),
|
|
184
|
+
stage("popping", "interactive.qa.popping", ["capture"], ["popping-metrics"], ["qa.popping.metric"]),
|
|
185
|
+
stage("exposure", "interactive.qa.exposure", ["capture"], ["exposure-metrics"], ["qa.exposure.metric"]),
|
|
186
|
+
stage("jitter", "interactive.qa.jitter", ["capture"], ["jitter-metrics"], ["qa.jitter.metric"]),
|
|
187
|
+
],
|
|
188
|
+
requiredEvidence: ["qa.sequence.digested", "qa.timebase.bound", "qa.flicker.metric", "qa.ghosting.metric", "qa.popping.metric", "qa.exposure.metric", "qa.jitter.metric"],
|
|
189
|
+
useWhen: ["detectar tremulação ghosting popping exposição ou jitter", "validar render em movimento"],
|
|
190
|
+
avoidWhen: ["não há sequência temporal comparável"],
|
|
191
|
+
}),
|
|
192
|
+
pipeline({
|
|
193
|
+
pipelineId: "interactive.clean_install_smoke",
|
|
194
|
+
label: "Instalação limpa e smoke playtest",
|
|
195
|
+
summary: "Separa build materializado, instalação limpa, launch e smoke do artefato empacotado.",
|
|
196
|
+
capabilities: ["interactive.build.materialize", "interactive.install.clean", "interactive.package.launch", "interactive.package.smoke"],
|
|
197
|
+
stages: [
|
|
198
|
+
stage("build", "interactive.build.materialize", [], ["build-artifact"], ["build.artifact.digest"]),
|
|
199
|
+
stage("install", "interactive.install.clean", ["build"], ["installed-artifact"], ["install.clean.log"]),
|
|
200
|
+
stage("launch", "interactive.package.launch", ["install"], ["launch-trace"], ["package.launch.observed"]),
|
|
201
|
+
stage("smoke", "interactive.package.smoke", ["launch"], ["smoke-trace"], ["package.smoke.playtest"]),
|
|
202
|
+
],
|
|
203
|
+
requiredEvidence: ["build.artifact.digest", "install.clean.log", "package.launch.observed", "package.smoke.playtest"],
|
|
204
|
+
useWhen: ["provar pacote fora do monorepo ou editor", "evitar build passou logo funciona"],
|
|
205
|
+
avoidWhen: ["não existe artefato empacotado"],
|
|
206
|
+
}),
|
|
207
|
+
pipeline({
|
|
208
|
+
pipelineId: "interactive.hardware_budget",
|
|
209
|
+
label: "Budget por hardware",
|
|
210
|
+
summary: "Liga profile de hardware a resolução, FPS, frame time, RAM, VRAM e disco medidos.",
|
|
211
|
+
capabilities: ["interactive.hardware.profile", "interactive.resources.measure", "interactive.hardware.compare"],
|
|
212
|
+
stages: [
|
|
213
|
+
stage("profile", "interactive.hardware.profile", [], ["hardware-profile"], ["hardware.profile.bound"]),
|
|
214
|
+
stage("measure", "interactive.resources.measure", ["profile"], ["resource-metrics"], ["hardware.metrics.observed"]),
|
|
215
|
+
stage("compare", "interactive.hardware.compare", ["measure"], ["budget-report"], ["hardware.budget.compared"]),
|
|
216
|
+
],
|
|
217
|
+
requiredEvidence: ["hardware.profile.bound", "hardware.metrics.observed", "hardware.budget.compared"],
|
|
218
|
+
useWhen: ["validar RTX3060 1080p60 ou outro alvo", "medir frame time RAM VRAM e disco"],
|
|
219
|
+
avoidWhen: ["perfil de hardware ou métricas não foram declarados"],
|
|
220
|
+
}),
|
|
221
|
+
pipeline({
|
|
222
|
+
pipelineId: "interactive.autonomous_repair",
|
|
223
|
+
label: "Reparo autônomo seguro",
|
|
224
|
+
summary: "Ordena diagnosticar, propor, simular e provar; apenas patch reversível elegível vai a runner autorizado.",
|
|
225
|
+
capabilities: ["interactive.autonomy.diagnose", "interactive.autonomy.propose", "interactive.autonomy.simulate", "interactive.autonomy.prove"],
|
|
226
|
+
stages: [
|
|
227
|
+
stage("diagnose", "interactive.autonomy.diagnose", [], ["diagnostic"], ["repair.invariant.failed", "repair.evidence.bound"]),
|
|
228
|
+
stage("propose", "interactive.autonomy.propose", ["diagnose"], ["patch-proposal"], ["repair.risk.classified", "repair.rollback.planned"]),
|
|
229
|
+
stage("simulate", "interactive.autonomy.simulate", ["propose"], ["simulation-result"], ["repair.sandbox.result"]),
|
|
230
|
+
stage("prove", "interactive.autonomy.prove", ["simulate"], ["repair-proof"], ["repair.verifier.independent", "repair.proof.decision"]),
|
|
231
|
+
],
|
|
232
|
+
requiredEvidence: ["repair.invariant.failed", "repair.evidence.bound", "repair.risk.classified", "repair.rollback.planned", "repair.sandbox.result", "repair.verifier.independent", "repair.proof.decision"],
|
|
233
|
+
useWhen: ["diagnosticar e propor correção recuperável", "automatizar patch seguro com prova"],
|
|
234
|
+
avoidWhen: ["operação privilegiada irreversível ou sem snapshot"],
|
|
235
|
+
}),
|
|
236
|
+
pipeline({
|
|
237
|
+
pipelineId: "interactive.bot_playtest",
|
|
238
|
+
label: "Playtest por bots seeded",
|
|
239
|
+
summary: "Planeja bots bounded com allowlist de input, seed, estado, failure e replay.",
|
|
240
|
+
capabilities: ["interactive.bot.plan", "interactive.bot.run", "interactive.bot.observe"],
|
|
241
|
+
stages: [
|
|
242
|
+
stage("plan", "interactive.bot.plan", [], ["bot-scenarios"], ["bot.seed.bound", "bot.inputs.allowlisted", "bot.budgets.bound"]),
|
|
243
|
+
stage("run", "interactive.bot.run", ["plan"], ["bot-run"], ["bot.runtime.trace", "bot.state.digest"]),
|
|
244
|
+
stage("observe", "interactive.bot.observe", ["run"], ["bot-report"], ["bot.failure.trace", "bot.replay.trace"]),
|
|
245
|
+
],
|
|
246
|
+
requiredEvidence: ["bot.seed.bound", "bot.inputs.allowlisted", "bot.budgets.bound", "bot.runtime.trace", "bot.state.digest", "bot.failure.trace", "bot.replay.trace"],
|
|
247
|
+
useWhen: ["automatizar playtest repetível", "explorar loop com seed", "testar estados e falhas"],
|
|
248
|
+
avoidWhen: ["input ou runtime está fora do sandbox"],
|
|
249
|
+
}),
|
|
250
|
+
pipeline({
|
|
251
|
+
pipelineId: "interactive.state_fuzz",
|
|
252
|
+
label: "Fuzz de input, save e load",
|
|
253
|
+
summary: "Faz plano bounded para input, save/load, corrupção, recovery e migração de versão sem tocar original.",
|
|
254
|
+
capabilities: ["interactive.fuzz.plan", "interactive.fuzz.save_load", "interactive.fuzz.recovery"],
|
|
255
|
+
stages: [
|
|
256
|
+
stage("plan", "interactive.fuzz.plan", [], ["fuzz-plan"], ["fuzz.bounds.valid", "fuzz.stop.valid"]),
|
|
257
|
+
stage("save-load", "interactive.fuzz.save_load", ["plan"], ["save-load-traces"], ["fuzz.save_load.sandboxed", "fuzz.original.immutable"]),
|
|
258
|
+
stage("recovery", "interactive.fuzz.recovery", ["save-load"], ["recovery-report"], ["fuzz.corrupt.recovery", "fuzz.version.migration"]),
|
|
259
|
+
],
|
|
260
|
+
requiredEvidence: ["fuzz.bounds.valid", "fuzz.stop.valid", "fuzz.save_load.sandboxed", "fuzz.original.immutable", "fuzz.corrupt.recovery", "fuzz.version.migration"],
|
|
261
|
+
useWhen: ["testar input save load e corrupção", "achar crash hang ou state drift"],
|
|
262
|
+
avoidWhen: ["save canônico seria sobrescrito"],
|
|
263
|
+
}),
|
|
264
|
+
pipeline({
|
|
265
|
+
pipelineId: "interactive.multiplayer_authority",
|
|
266
|
+
label: "Autoridade e replicação multiplayer",
|
|
267
|
+
summary: "Modela owner, writers, readers, conflito, validação, reconnect, resync e anti-replay.",
|
|
268
|
+
kinds: ["GAME", "HYBRID"],
|
|
269
|
+
capabilities: ["interactive.multiplayer.authority", "interactive.multiplayer.replication", "interactive.multiplayer.conflict", "interactive.multiplayer.reconnect"],
|
|
270
|
+
stages: [
|
|
271
|
+
stage("authority", "interactive.multiplayer.authority", [], ["authority-model"], ["multiplayer.authority.bound"]),
|
|
272
|
+
stage("replication", "interactive.multiplayer.replication", ["authority"], ["replication-trace"], ["multiplayer.replication.trace"]),
|
|
273
|
+
stage("conflict", "interactive.multiplayer.conflict", ["replication"], ["conflict-report"], ["multiplayer.conflict.resolved"]),
|
|
274
|
+
stage("reconnect", "interactive.multiplayer.reconnect", ["conflict"], ["reconnect-report"], ["multiplayer.resync.snapshot", "multiplayer.replay.sequence"]),
|
|
275
|
+
],
|
|
276
|
+
requiredEvidence: ["multiplayer.authority.bound", "multiplayer.replication.trace", "multiplayer.conflict.resolved", "multiplayer.resync.snapshot", "multiplayer.replay.sequence"],
|
|
277
|
+
useWhen: ["validar autoridade multiplayer", "detectar cliente confiável demais", "provar reconnect e resync"],
|
|
278
|
+
avoidWhen: ["experiência não possui rede"],
|
|
279
|
+
}),
|
|
280
|
+
pipeline({
|
|
281
|
+
pipelineId: "interactive.engine_migration",
|
|
282
|
+
label: "Migração versionada de engine",
|
|
283
|
+
summary: "Exige backup, relatório de compatibilidade, teste e rollback antes da migração externa.",
|
|
284
|
+
capabilities: ["interactive.migration.snapshot", "interactive.migration.compatibility", "interactive.migration.execute", "interactive.migration.verify"],
|
|
285
|
+
stages: [
|
|
286
|
+
stage("snapshot", "interactive.migration.snapshot", [], ["migration-backup"], ["migration.backup.digest", "migration.rollback.plan"]),
|
|
287
|
+
stage("compatibility", "interactive.migration.compatibility", ["snapshot"], ["compatibility-report"], ["migration.compatibility.report"]),
|
|
288
|
+
stage("migrate", "interactive.migration.execute", ["compatibility"], ["migration-candidate"], ["migration.candidate.digest"]),
|
|
289
|
+
stage("verify", "interactive.migration.verify", ["migrate"], ["migration-test-report"], ["migration.tests", "migration.smoke"]),
|
|
290
|
+
],
|
|
291
|
+
requiredEvidence: ["migration.backup.digest", "migration.rollback.plan", "migration.compatibility.report", "migration.candidate.digest", "migration.tests", "migration.smoke"],
|
|
292
|
+
useWhen: ["migrar versão de engine", "testar upgrade com rollback"],
|
|
293
|
+
avoidWhen: ["não há backup ou versão de origem e destino"],
|
|
294
|
+
}),
|
|
295
|
+
pipeline({
|
|
296
|
+
pipelineId: "interactive.portability",
|
|
297
|
+
label: "Portabilidade assistida entre engines",
|
|
298
|
+
summary: "Mapeia semanticamente origem e alvo, declarando aproximações, unsupported, fallback e perdas.",
|
|
299
|
+
capabilities: ["interactive.portability.map", "interactive.portability.losses", "interactive.portability.export", "interactive.portability.verify"],
|
|
300
|
+
stages: [
|
|
301
|
+
stage("map", "interactive.portability.map", [], ["semantic-mapping"], ["portability.semantic.map"]),
|
|
302
|
+
stage("losses", "interactive.portability.losses", ["map"], ["loss-report"], ["portability.losses.declared", "portability.fallbacks.declared"]),
|
|
303
|
+
stage("export", "interactive.portability.export", ["losses"], ["export-plan"], ["portability.export.digest"]),
|
|
304
|
+
stage("verify", "interactive.portability.verify", ["export"], ["target-report"], ["portability.import.verify", "portability.smoke"]),
|
|
305
|
+
],
|
|
306
|
+
requiredEvidence: ["portability.semantic.map", "portability.losses.declared", "portability.fallbacks.declared", "portability.export.digest", "portability.import.verify", "portability.smoke"],
|
|
307
|
+
useWhen: ["portar Unreal Unity Godot Blender ou custom", "comparar perdas entre engines"],
|
|
308
|
+
avoidWhen: ["o pedido exige conversão perfeita sem perdas declaradas"],
|
|
309
|
+
}),
|
|
310
|
+
pipeline({
|
|
311
|
+
pipelineId: "interactive.distributed_jobs",
|
|
312
|
+
label: "Workers distribuídos",
|
|
313
|
+
summary: "Planeja DAG, assignment, leases, heartbeat e checkpoints para cook, shaders, render e testes.",
|
|
314
|
+
capabilities: ["interactive.workers.dag", "interactive.workers.assign", "interactive.workers.lease", "interactive.workers.execute", "interactive.workers.verify"],
|
|
315
|
+
stages: [
|
|
316
|
+
stage("dag", "interactive.workers.dag", [], ["job-dag"], ["workers.dag.valid"]),
|
|
317
|
+
stage("assign", "interactive.workers.assign", ["dag"], ["assignments"], ["workers.capabilities.covered", "workers.budgets.covered"]),
|
|
318
|
+
stage("lease", "interactive.workers.lease", ["assign"], ["leases"], ["workers.locks.valid", "workers.heartbeat.valid", "workers.checkpoint.valid"]),
|
|
319
|
+
stage("execute", "interactive.workers.execute", ["lease"], ["worker-results"], ["workers.jobs.observed"]),
|
|
320
|
+
stage("verify", "interactive.workers.verify", ["execute"], ["distributed-report"], ["workers.outputs.digested", "workers.resources.measured"]),
|
|
321
|
+
],
|
|
322
|
+
requiredEvidence: ["workers.dag.valid", "workers.capabilities.covered", "workers.budgets.covered", "workers.locks.valid", "workers.heartbeat.valid", "workers.checkpoint.valid", "workers.jobs.observed", "workers.outputs.digested", "workers.resources.measured"],
|
|
323
|
+
useWhen: ["distribuir cook shaders render e testes", "usar workers com recursos distintos"],
|
|
324
|
+
avoidWhen: ["DAG tem ciclo ou lock exclusivo concorrente"],
|
|
325
|
+
}),
|
|
326
|
+
]);
|
|
327
|
+
const READ_ONLY_PROTOCOL = ["DETECT", "PROBE", "SNAPSHOT", "PLAN", "VALIDATE", "EVIDENCE"];
|
|
328
|
+
const MUTATING_PROTOCOL = ["DETECT", "PROBE", "SNAPSHOT", "PLAN", "APPLY", "VALIDATE", "EVIDENCE", "ROLLBACK"];
|
|
329
|
+
function adapter(input) {
|
|
330
|
+
return {
|
|
331
|
+
version: "1.0.0",
|
|
332
|
+
kinds: input.kinds ?? KINDS,
|
|
333
|
+
spatialModels: input.spatialModels ?? SPATIAL,
|
|
334
|
+
renderModes: input.renderModes ?? RENDER,
|
|
335
|
+
visualProfiles: input.visualProfiles ?? VISUAL,
|
|
336
|
+
controlModes: input.controlModes ?? CONTROL,
|
|
337
|
+
timeModels: input.timeModels ?? TIME,
|
|
338
|
+
fidelities: input.fidelities ?? FIDELITY,
|
|
339
|
+
protocol: input.mutatesWorkspace ? MUTATING_PROTOCOL : READ_ONLY_PROTOCOL,
|
|
340
|
+
readOnlyProbe: true,
|
|
341
|
+
supportsRollback: input.mutatesWorkspace,
|
|
342
|
+
executionBoundary: "EXTERNAL",
|
|
343
|
+
...input,
|
|
344
|
+
};
|
|
345
|
+
}
|
|
346
|
+
export const CATALOGO_ADAPTADORES_INTERATIVOS_AVANCADOS = freezeDeep([
|
|
347
|
+
adapter({
|
|
348
|
+
adapterId: "validator.experience-ir.external",
|
|
349
|
+
role: "VALIDATOR",
|
|
350
|
+
engine: "experience-ir-validator",
|
|
351
|
+
capabilities: ["interactive.ir.validate", "interactive.ir.index", "interactive.ir.query"],
|
|
352
|
+
mutatesWorkspace: false,
|
|
353
|
+
}),
|
|
354
|
+
adapter({
|
|
355
|
+
adapterId: "observer.engine.external",
|
|
356
|
+
role: "ENGINE",
|
|
357
|
+
engine: "engine-observer",
|
|
358
|
+
capabilities: ["interactive.engine.detect", "interactive.engine.probe", "interactive.engine.snapshot", "interactive.engine.diff"],
|
|
359
|
+
mutatesWorkspace: false,
|
|
360
|
+
}),
|
|
361
|
+
adapter({
|
|
362
|
+
adapterId: "validator.asset-provenance.external",
|
|
363
|
+
role: "ASSET",
|
|
364
|
+
engine: "asset-provenance-validator",
|
|
365
|
+
capabilities: ["interactive.asset.provenance", "interactive.asset.license", "interactive.asset.lineage"],
|
|
366
|
+
mutatesWorkspace: false,
|
|
367
|
+
}),
|
|
368
|
+
adapter({
|
|
369
|
+
adapterId: "observer.editor-state.external",
|
|
370
|
+
role: "EDITOR",
|
|
371
|
+
engine: "editor-state-observer",
|
|
372
|
+
capabilities: ["interactive.editor.snapshot", "interactive.editor.unsaved", "interactive.editor.background_jobs"],
|
|
373
|
+
mutatesWorkspace: false,
|
|
374
|
+
}),
|
|
375
|
+
adapter({
|
|
376
|
+
adapterId: "validator.multimodal.external",
|
|
377
|
+
role: "TELEMETRY",
|
|
378
|
+
engine: "multimodal-validator",
|
|
379
|
+
capabilities: [
|
|
380
|
+
"interactive.evidence.plan", "interactive.evidence.capture", "interactive.evidence.verify",
|
|
381
|
+
"interactive.temporal.contract", "interactive.timeline.sync", "interactive.temporal.invariants",
|
|
382
|
+
"interactive.shot.contract", "interactive.camera.visibility", "interactive.camera.jitter",
|
|
383
|
+
"interactive.physics.contract", "interactive.physics.trace", "interactive.physics.verify",
|
|
384
|
+
"interactive.qa.capture", "interactive.qa.flicker", "interactive.qa.ghosting", "interactive.qa.popping", "interactive.qa.exposure", "interactive.qa.jitter",
|
|
385
|
+
"interactive.hardware.profile", "interactive.resources.measure", "interactive.hardware.compare",
|
|
386
|
+
],
|
|
387
|
+
mutatesWorkspace: false,
|
|
388
|
+
}),
|
|
389
|
+
adapter({
|
|
390
|
+
adapterId: "orchestrator.job.external",
|
|
391
|
+
role: "CUSTOM",
|
|
392
|
+
engine: "job-orchestrator",
|
|
393
|
+
capabilities: [
|
|
394
|
+
"interactive.job.lock", "interactive.job.heartbeat", "interactive.job.checkpoint", "interactive.job.resume",
|
|
395
|
+
"interactive.acceptance.bind", "interactive.acceptance.regression", "interactive.acceptance.invalidate",
|
|
396
|
+
],
|
|
397
|
+
mutatesWorkspace: false,
|
|
398
|
+
}),
|
|
399
|
+
adapter({
|
|
400
|
+
adapterId: "runner.package-test.external",
|
|
401
|
+
role: "BUILD",
|
|
402
|
+
engine: "package-test-runner",
|
|
403
|
+
capabilities: ["interactive.build.materialize", "interactive.install.clean", "interactive.package.launch", "interactive.package.smoke"],
|
|
404
|
+
mutatesWorkspace: true,
|
|
405
|
+
}),
|
|
406
|
+
adapter({
|
|
407
|
+
adapterId: "runner.autonomy.external",
|
|
408
|
+
role: "RUNTIME",
|
|
409
|
+
engine: "autonomy-sandbox-runner",
|
|
410
|
+
capabilities: [
|
|
411
|
+
"interactive.autonomy.diagnose", "interactive.autonomy.propose", "interactive.autonomy.simulate", "interactive.autonomy.prove",
|
|
412
|
+
"interactive.bot.plan", "interactive.bot.run", "interactive.bot.observe",
|
|
413
|
+
"interactive.fuzz.plan", "interactive.fuzz.save_load", "interactive.fuzz.recovery",
|
|
414
|
+
"interactive.multiplayer.authority", "interactive.multiplayer.replication", "interactive.multiplayer.conflict", "interactive.multiplayer.reconnect",
|
|
415
|
+
],
|
|
416
|
+
mutatesWorkspace: true,
|
|
417
|
+
}),
|
|
418
|
+
adapter({
|
|
419
|
+
adapterId: "adapter.portability.external",
|
|
420
|
+
role: "CUSTOM",
|
|
421
|
+
engine: "portability-adapter",
|
|
422
|
+
capabilities: [
|
|
423
|
+
"interactive.migration.snapshot", "interactive.migration.compatibility", "interactive.migration.execute", "interactive.migration.verify",
|
|
424
|
+
"interactive.portability.map", "interactive.portability.losses", "interactive.portability.export", "interactive.portability.verify",
|
|
425
|
+
],
|
|
426
|
+
mutatesWorkspace: true,
|
|
427
|
+
}),
|
|
428
|
+
adapter({
|
|
429
|
+
adapterId: "orchestrator.workers.external",
|
|
430
|
+
role: "BUILD",
|
|
431
|
+
engine: "distributed-worker-orchestrator",
|
|
432
|
+
capabilities: ["interactive.workers.dag", "interactive.workers.assign", "interactive.workers.lease", "interactive.workers.execute", "interactive.workers.verify"],
|
|
433
|
+
mutatesWorkspace: true,
|
|
434
|
+
}),
|
|
435
|
+
]);
|
|
436
|
+
export function listarPipelinesInterativosAvancados() {
|
|
437
|
+
return CATALOGO_PIPELINES_INTERATIVOS_AVANCADOS;
|
|
438
|
+
}
|
|
439
|
+
export function listarAdaptadoresInterativosAvancados() {
|
|
440
|
+
return CATALOGO_ADAPTADORES_INTERATIVOS_AVANCADOS;
|
|
441
|
+
}
|
|
442
|
+
//# sourceMappingURL=advancedCatalog.js.map
|