Skip to content

Integration: upstream v0.5.0 + WS-mode + dynamic-flag + partial-load fix#3

Merged
steel-code-agent merged 19 commits into
masterfrom
agent/master-integration-20260513
May 13, 2026
Merged

Integration: upstream v0.5.0 + WS-mode + dynamic-flag + partial-load fix#3
steel-code-agent merged 19 commits into
masterfrom
agent/master-integration-20260513

Conversation

@steel-code-agent

Copy link
Copy Markdown
Collaborator

Что это

Пересборка локального master поверх upstream/v0.5.0 (alkoleft/v8-runner-rust @ 43674ee) с тремя нашими доработками, каждая своим merge-коммитом. Заменяет старый master (который опирался на pre-v0.5.0 upstream).

Содержимое

Слой Коммит Источник
База 43674ee upstream/master (v0.5.0)
WS transport + session-manager pairing merge 5ae566c feat/mcp-ws-mode (включая 2 post-review fix-коммита: 68acc8f, cbaf405)
--dynamic flag + infobase.unlock_code merge 3258cb7 feat/dynamic-and-unlock-code (переработанная версия поверх v0.5.0)
Partial-load Hierarchical Designer fix merge c813e57 agent/partial-load-designer-xml-20260513 (upstream PR #9)

Чем отличается от старого master

  • Старый master опирался на pre-v0.5.0 upstream и содержал устаревшие коммиты b04926f (--dynamic flag) и 8e342af (split /C), которые были переработаны в feat/dynamic-and-unlock-code поверх v0.5.0.
  • Старая ветка feat/mcp-ws-mode за время review получила два дополнительных fix-коммита (68acc8f rename local transport mode to mcp, cbaf405 address transport review notes), которые в старом master отсутствовали.

Конфликты при сборке

Дважды всплывал SKILL/references/project-workflows.md (delete-vs-modify). Причина: feat/mcp-ws-mode сделал переименовку SKILL/ → v8-runner/ (c4190c7 chore(skill): переименовать SKILL/), а upstream/dynamic-flag продолжали править файл по старому пути. Резолв: принять переименовку, новый файл уже на месте в v8-runner/references/project-workflows.md. Если в upstream-обновлениях этой страницы есть что-то ценное, что не отражено в новом файле, это можно вручную дополнить отдельной правкой.

Проверка

  • cargo test --bin v8-runner change_detection::partial_load — 16/16 ✓
  • cargo build --release --bin v8-runner — ✓
  • Свежий бинарь скопирован в 1c-agent-based-dev-framework/tools/external/v8-runner/v8-runner (md5 45196fdb532e16d5114cc6af2fa98097)
  • На реальном GBIG PAM проверено: partial-load на одном изменённом BSL в CommonModule даёт partial load of 2 files, Designer возвращает exit_code=0, dynamic update успешен.

Safety net

Старый master сохранён локально как tag backup-master-pre-integration-20260513 (на коммите 8e342af).

🤖 Generated with Claude Code

alkoleft and others added 19 commits May 11, 2026 22:19
- create v8project.local.yaml during config init

- add gitignore coverage using effective git ignore checks

- document local overlay bootstrap behavior
- derive project base path from primary config directory

- update config init, schemas, docs, fixtures, and tests
- point generated schema ids and modelines to master

- update configuration docs and config init assertion
- record public basePath removal

- document master schema URL contract
- download YAxUnit, Vanessa Automation Single, and client MCP devkit from latest GitHub releases

- support extension sources/artifacts modes and update local tool configuration

- document the workflow and cover redirects, safety checks, and config bootstrap tests
- add per-tool download subcommands for yaxunit, vanessa, and client-mcp

- replace extension source mode flag with --sources for source-capable tools

- improve source archive downloads with codeload URLs, retries, and debug logging
- show EDT source-set project names during init import

- store YAxUnit sources download marker under build only
- emit init step completion status as live timeline events

- cover infobase failure before continued EDT import
- keep managed markers consistent with published targets

- bound HTTP download responses and document limits
- update package and lockfile version
- CLI flag `--dynamic` for `build` enables /UpdateDBCfg -Dynamic+
- New config field `build.dynamicUpdate` (default false), CLI overrides config
- New config field `infobase.unlock_code` propagates /UC <value> to DESIGNER
- Mask unlock_code in command-render logs like password (/UC ***)
- Propagate dynamic flag through BuildRequest, McpBuildProjectRequest and the
  execute_source_set_step pipeline; `load` and tool-extension flows keep the
  historical static update
- Bump version 0.4.2 -> 0.5.0
- Regenerate JSON schemas for v8project.yaml / v8project.local.yaml
- replace legacy transport config value with mcp\n- harden WS payload validation and schema boundaries\n- update docs, schemas, and launch tests
- clarify WS timeout documentation\n- include manager_url parse diagnostics\n- remove legacy wording from public docs
- force static update for test prerequisite builds

- cover dynamic update mapping for MCP and EDT Designer builds

- refresh config schemas and docs for dynamic update behavior
- document that empty unlock_code omits /UC

- refresh generated config schemas
При partial-load Designer выгрузки в Hierarchical-формате конфигуратор
определяет тип и имя объекта по XML-дескриптору (`<MetadataType>/<Name>.xml`),
который лежит на уровень выше каталога объекта. Старый код добавлял в
list-файл только сам BSL (плюс sibling `Module.xml` рядом с BSL, которого
в Designer-формате не существует), поэтому Designer трактовал строку
`CommonModules/<name>/Ext/Module.bsl` как property-путь Configuration и
падал с ошибкой «Свойство <name> не входит в состав объекта метаданных
Configuration».

Что сделано:
- Введён whitelist 43 типов метаданных верхнего уровня
  (CommonModules, Documents, Catalogs, …).
- На каждое BSL-изменение находится корневой объект
  `<MetadataType>/<ObjectName>` и в list добавляются:
  * XML-дескриптор `<MetadataType>/<ObjectName>.xml`
  * рекурсивно все файлы внутри каталога объекта
    (включая формы, дополнительные модули, шаблоны).
- Старая EDT-ориентированная логика `sibling_xml`/`object_dir` удалена
  вместе с синтетическими тестами на `Catalogs.Items/...` — partial-load
  всегда работает в Hierarchical Designer-формате
  (в EDT-режиме конвертация EDT→Designer выполняется выше, в
  `plan_edt_export_step`).
- Обновлены unit-тесты: добавлены кейсы для CommonModule, Document
  ObjectModule, Form Module, BSL вне whitelist + сохранены проверки
  threshold/deleted/Configuration.xml/symlink-escape.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
# Conflicts:
#	SKILL/references/project-workflows.md
…code

# Conflicts:
#	SKILL/references/project-workflows.md
@steel-code-agent steel-code-agent merged commit e62af29 into master May 13, 2026
@steel-code-agent steel-code-agent deleted the agent/master-integration-20260513 branch May 13, 2026 16:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants