Open-World: включить маржинальность выбранной номенклатуры

This commit is contained in:
2026-05-04 08:40:27 +03:00
parent edab736a6d
commit 7294eca381
23 changed files with 472 additions and 56 deletions
@@ -21,8 +21,9 @@ If another document says `78%`, `87%`, `92%`, or `85%` for a module that is now
- Completed active slice: `Business Overview Debt-Position Fact-Family Bridge`: explicit-period business overview can include confirmed receivables/payables as-of-date debt position, while all-time follow-ups do not reuse stale debt snapshots and debt quality/aging remains unclaimed.
- Completed active slice: `Business Overview Inventory-Position Fact-Family Bridge`: explicit-date business overview can include confirmed stock-on-hand inventory position, while all-time follow-ups do not reuse stale inventory snapshots and inventory liquidity/turnover remains unclaimed.
- Completed active slice: `Business Overview Open-Settlement Quality Bridge`: explicit-period business overview can check open-contract settlement concentration on 60/62/76, while due-date aging/overdue debt remains unclaimed until a reviewed due-date route exists.
- Next active slice: continue `Business Overview Fact-Family Expansion` into profit/margin and due-date debt aging where reviewed routes exist.
- Active module progress: `~60% (Open-World Bounded Autonomy Breadth)`.
- Completed active slice: `Selected-Item Profitability Route Bridge`: selected-object inventory profitability now has a bounded exact recipe over purchase/sale document rows, with explicit boundaries that this is a gross spread/margin proxy rather than company net profit.
- Next active slice: continue breadth into company-wide profit/margin and due-date debt aging only where reviewed evidence routes exist.
- Active module progress: `~66% (Open-World Bounded Autonomy Breadth)`.
## Reporting Rule
@@ -59,7 +60,7 @@ The project is not yet a universal arbitrary-1C agent.
Remaining work belongs to the next breadth module:
- extend `business_overview` beyond money-flow/activity, explicit-period VAT/tax, as-of-date debt position, open-settlement concentration, and as-of-date inventory position into separately proven profit/margin, due-date debt aging/overdue, and real inventory-liquidity evidence families;
- extend `business_overview` beyond money-flow/activity, explicit-period VAT/tax, as-of-date debt position, open-settlement concentration, and as-of-date inventory position into separately proven company-wide profit/margin, due-date debt aging/overdue, and real inventory-liquidity evidence families;
- broader dynamic schema traversal for unfamiliar 1C asks;
- more primitive descriptors where live evidence proves a real gap;
- more replay-backed domain packs that start from user business meaning, not from route convenience;
@@ -190,11 +190,32 @@ Live semantic replay is accepted for this slice:
- step 2 proves an all-time follow-up does not reuse the `2020-12-31` open-contract/debt snapshot as current overdue debt or all-time debt quality;
- the accepted user-facing answer keeps due-date aging and overdue debt as unconfirmed because open contracts prove concentration of balances, not payment-term delinquency.
## Slice 8 - Selected-Item Profitability Route Bridge
This slice opens a bounded profitability lane where the evidence is concrete enough: not profit for the whole company, but revenue, purchase-cost proxy, spread, and margin proxy for one selected inventory item.
Implemented now:
- `inventory_profitability_for_item` has a dedicated exact recipe, route expectation, capability policy entry, and runtime contract;
- the recipe reuses the reviewed purchase/sale document union over `41.01`, so the answer is grounded in purchase and sale document rows rather than generic LLM inference;
- selected-object wording such as `по выбранному объекту ... сколько заработали` now keeps the selected item and carries the prior inventory period when the user did not give a new date;
- the reply builder computes confirmed sales revenue, purchase-document cost proxy, gross spread, margin-to-revenue, and markup-to-purchase-cost;
- the user-facing answer explicitly says that this is not company net profit or a бухгалтерский финрезультат, and that exact cost of sale still requires stronger lot/management-accounting evidence.
This does not close broad company-wide profit/margin analysis. It only converts one previously visible recipe gap into a bounded, truthful exact route for selected-item unit economics.
Local validation is accepted for this slice:
- `npm.cmd test -- addressInventoryProfitabilitySelectedObjectRegression.test.ts`: passed `2/2`;
- `npm.cmd test -- addressCapabilityPolicy.test.ts assistantRuntimeContractRegistry.test.ts`: passed `31/31`;
- `npm.cmd test -- addressQueryRuntimeM23.test.ts`: passed `412/412`;
- `npm.cmd run build`: passed.
### Still Pending Breadth Slices
Grow this bridge beyond the first confirmed signal bundle:
- add separate evidence families for profit/margin and due-date debt aging/overdue quality where reviewed routes exist;
- add separate evidence families for company-wide profit/margin and due-date debt aging/overdue quality where reviewed routes exist;
- extend inventory evidence from as-of-date stock position into real turnover/liquidity only when reviewed sales velocity, aging, or obsolescence evidence exists;
- extend debt evidence from as-of-date position/open-settlement concentration into overdue aging only when reviewed due-date or aging evidence exists;
- extend VAT/tax beyond explicit-period tax position only when the requested tax fact is provable and the period is explicit;
@@ -257,3 +278,12 @@ Business-overview inventory-position fact-family validation:
Graphify rebuild after Slice 6 code/doc sync: `6001 nodes`, `13058 edges`, `140 communities`.
Graphify rebuild after Slice 7 code/doc sync: `6008 nodes`, `13078 edges`, `138 communities`.
Selected-item profitability route validation:
- `npm.cmd test -- addressInventoryProfitabilitySelectedObjectRegression.test.ts`: passed `2/2`.
- `npm.cmd test -- addressCapabilityPolicy.test.ts assistantRuntimeContractRegistry.test.ts`: passed `31/31`.
- `npm.cmd test -- addressQueryRuntimeM23.test.ts`: passed `412/412`.
- `npm.cmd run build`: passed.
Graphify rebuild after Slice 8 code/doc sync: `6012 nodes`, `13086 edges`, `138 communities`.
@@ -56,7 +56,8 @@ Status canon for planning:
- The current completed breadth slice is `Business Overview Debt-Position Fact-Family Bridge`: explicit-period business overview can include confirmed receivables/payables as-of-date debt position, while all-time follow-ups do not reuse stale debt snapshots and debt quality/aging remains unclaimed.
- The current completed breadth slice is `Business Overview Inventory-Position Fact-Family Bridge`: explicit-date business overview can include confirmed stock-on-hand inventory position, while all-time follow-ups do not reuse stale inventory snapshots and inventory liquidity/turnover remains unclaimed.
- The current completed breadth slice is `Business Overview Open-Settlement Quality Bridge`: explicit-period business overview can check open-contract settlement concentration, while due-date aging and confirmed overdue debt remain outside the answer until a reviewed due-date route exists.
- The next active breadth slice continues `Business Overview Fact-Family Expansion` into profit/margin and due-date debt aging, then broader unfamiliar 1C route breadth without relaxing truth boundaries.
- The current completed breadth slice is `Selected-Item Profitability Route Bridge`: selected-object inventory profitability now has a bounded exact route over purchase/sale document rows and reports gross spread/margin proxy without claiming company net profit.
- The next active breadth slice continues breadth into company-wide profit/margin and due-date debt aging, then broader unfamiliar 1C route breadth without relaxing truth boundaries.
- The short source of truth for status wording is [21 - current_status_canon_2026-05-01.md](./21%20-%20current_status_canon_2026-05-01.md).
It now documents a turnaround that is already operational in code, already materially past the acute regression breakpoint, and already moved through bounded MCP autonomy, Post-F hardening, inventory breadth proof, and the declared Planner Autonomy slice:
@@ -121,11 +122,11 @@ Current honest status:
- pre-multidomain readiness: `~90%`
- bounded-autonomy foundation readiness: `~89%`
- open-world bounded-autonomy readiness: `~87%`
- active Open-World Bounded Autonomy Breadth progress: `~60%`, with business-overview evidence fusion, the reviewed `business_overview` catalog/data-need/planner route-fabric slice, the fresh multi-probe runtime bridge, the explicit-period VAT/tax fact-family bridge, the explicit-period debt-position bridge, the explicit-date inventory-position bridge, and the open-settlement quality bridge accepted by live semantic replay; profit/margin, due-date debt aging/overdue, and real inventory-liquidity expansion are still pending
- active Open-World Bounded Autonomy Breadth progress: `~66%`, with business-overview evidence fusion, the reviewed `business_overview` catalog/data-need/planner route-fabric slice, the fresh multi-probe runtime bridge, the explicit-period VAT/tax fact-family bridge, the explicit-period debt-position bridge, the explicit-date inventory-position bridge, the open-settlement quality bridge accepted by live semantic replay, and selected-item profitability bridged by local semantic/runtime regression tests; company-wide profit/margin, due-date debt aging/overdue, and real inventory-liquidity expansion are still pending
- Post-F semantic integrity module progress: `~99%` operationally closed, with remaining risk now treated as next-slice discovery rather than an open blocker inside the closed slice
- active inventory-stock breadth slice progress: `100%` for the declared scenario pack, not for arbitrary inventory questions
- Planner Autonomy Consolidation progress: `100%` for the declared module, with catalog-fabric, value-flow arbitration, lifecycle bounded inference, broad-evaluation bridge, inventory catalog templates, inventory runtime-boundary honesty, exact inventory recipe bridging, unambiguous metadata-surface lane inference, catalog chain-template scoring, structured chain-match contract exposure, runtime/debug propagation, subject-aware bidirectional comparison arbitration, structured catalog-alignment verdicts, representative alignment regression guard, catalog-alignment reason-code telemetry, explicit `alignment_status` propagation, truth-harness/acceptance-matrix surfacing, soft divergence warning, `catalog_alignment_ok` acceptance invariant, step-level expected catalog-alignment assertions, phase66 and phase32 spec alignment expectations, AGENT source-catalog surfacing, generated phase83 mixed planner-brain replay spec, checked-source user-facing error sanitation, surface-grounded catalog promotion, and guarded live phase83 acceptance validated. Broader unfamiliar 1C asks are now next-module breadth work rather than an open blocker inside this declared slice
- graph snapshot after latest rebuild: `6008 nodes`, `13078 edges`, `138 communities`
- graph snapshot after latest rebuild: `6012 nodes`, `13086 edges`, `138 communities`
- current regression-gate breakpoint:
- the validated hot paths are no longer structurally broken;
- flagship continuity collapse is no longer the primary risk;
+7 -1
View File
@@ -1,6 +1,6 @@
{
"schema_version": "address_route_expectations_v1",
"updated_at": "2026-04-14T09:30:00.000Z",
"updated_at": "2026-05-04T00:00:00.000Z",
"entries": [
{
"intent": "payables_confirmed_as_of_date",
@@ -44,6 +44,12 @@
"expected_requested_result_modes": ["confirmed_balance"],
"expected_result_modes": ["confirmed_balance"]
},
{
"intent": "inventory_profitability_for_item",
"expected_selected_recipes": ["address_inventory_profitability_for_item_v1"],
"expected_requested_result_modes": ["confirmed_balance"],
"expected_result_modes": ["confirmed_balance"]
},
{
"intent": "inventory_purchase_to_sale_chain",
"expected_selected_recipes": ["address_inventory_purchase_to_sale_chain_v1"],