Initial import NDC_1C

This commit is contained in:
2026-03-26 10:38:25 +03:00
commit a162d77ef7
2943 changed files with 3615871 additions and 0 deletions
@@ -0,0 +1,128 @@
# Test-Contour Runbook: Universal Tools + FoxyLink
## Goal
Close hard gate check #2:
`posting -> subconto[1..3] -> counterparty / contract / item`
without breaking the existing OData read-only baseline.
## Status Update (2026-03-22)
UT branch is currently blocked for this lab contour:
- `UI.cfe` is not plug-and-play compatible with target `Бухгалтерия 2.0`.
- Missing required BSP/configuration objects in target base.
- Reference: `docs/ut_compatibility_blocker_2026-03-22.md`
Current critical path:
- OData baseline + FoxyLink deeper PoC.
## Current Local State
Prepared artifacts:
- Universal Tools extension file: `external/dist/UI.cfe`
- Universal Tools source repo: `external/tools_ui_1c`
- FoxyLink source repo: `external/FoxyLink`
- FoxyLink configuration dump: `external/FoxyLink/src`
- Baseline report: `logs/deep_accounting_mvp_gate.json`
- Baseline report: `logs/slot3_recon_report.json`
## Step 1: Preflight Readiness Snapshot
Run:
```powershell
cd X:\1C\NDC_1C
$EnvPython = Join-Path $env:USERPROFILE "miniconda3\envs\ndc_1c_mvp\python.exe"
if (-not (Test-Path $EnvPython)) { $EnvPython = Join-Path $env:USERPROFILE "Miniconda3\envs\ndc_1c_mvp\python.exe" }
& $EnvPython scripts/check_deeper_access_readiness.py
```
Expected artifact:
- `logs/deeper_access_readiness.json`
## Step 2: Universal Tools (Optional, Paused)
Important:
- This step is not on the critical path now.
- Perform only if a separate UT adaptation scope is approved.
Legacy flow (for future adaptation only):
1. Open 1C Configurator for test base.
2. Add extension from file `external/dist/UI.cfe` (configuration extensions menu).
3. Start enterprise mode and verify UT tools are visible.
4. Use UT query console for targeted slot3 diagnostics.
5. Use UT object/attribute editor to inspect source objects for slot3 population.
6. Use UT storage structure viewer to trace internal source tables/fields if needed.
Diagnostic objective (if adaptation is funded):
- Find posted document lines where slot `3` (`Субконто3`, `СубконтоДт3`, `СубконтоКт3`, `СубконтоНУ3`, etc.) is non-null.
- Capture proof tuple:
- `Document.Ref`
- `LineNumber`
- `Recorder_Type`
- slot `3` value + its type/category
- `AccountDr/AccountCr`
## Step 3: FoxyLink PoC in Test Base
Local source currently available as configuration dump:
- `external/FoxyLink/src`
Suggested PoC scope (minimal):
1. Load/merge FoxyLink into isolated test contour.
2. Build one read-only extraction endpoint/job for failed segment only:
- `document line -> posting -> slot3 semantic`
3. Export result in stable machine format (JSON/table).
4. Map output to existing canonical fields (no schema fork).
## Step 4: Evidence and Acceptance
Re-run probe stack:
```powershell
cd X:\1C\NDC_1C
powershell -ExecutionPolicy Bypass -File .\scripts\run_probe.ps1
```
Pass criteria for promotion decision:
1. `document -> posting -> debit/credit account`: `pass`
2. `posting -> subconto[1..3] -> counterparty/contract/item`: `pass`
3. `saldo explainability`: `pass`
Required artifacts:
- `logs/deep_accounting_mvp_gate.json`
- `logs/slot3_recon_report.json`
- `logs/deeper_access_readiness.json`
- Short note describing exact slot `3` extraction path and mapping.
## If Check #2 Still Fails
Interpretation:
- If UT confirms non-null slot `3` exists in 1C internals but OData still cannot reproduce it reliably, this is objective evidence for deeper-access runtime path.
Decision:
- Keep OData as wide read-only baseline.
- Promote FoxyLink PoC path for missing semantic closure.
## Controls
1. Test-only rollout before any production decision.
2. Read-only policy for OData remains mandatory.
3. License review required before production use:
- FoxyLink: AGPL
- Universal Tools: GPL-3.0