150 Commits
Author SHA1 Message Date
Loretta c1b29a71fa Merge from FruitBank_v0.0.8.0 into master 2026-07-21 08:25:21 +02:00
Loretta 3b415fccd5 Update GIAAPP consumer map entry for repo/path accuracy
Corrected the GIAAPP entry in the consumer map:
- Changed repository name from GiaApp to Gia.App
- Updated workspace path from Mango/Source/GiaApp to Mango/Source/Gia.App
This ensures the mapping matches the actual repo and folder structure.
2026-07-21 08:23:18 +02:00
Loretta 1ce86d1371 Server-side grid virtualization: DxGrid adapter & API
Implemented MgGridVirtualizedDataSource<T> for DevExpress DxGrid integration, enabling server-side paging/filtering/sorting via SignalR. Added developer-only test page and menu entry. Extended IFruitBankDataControllerCommon and client DTOs for virtualized queries. Renamed ToPagedListAsync to ToGridListAsync and improved AcGridCriteriaTranslator to whitelist only real DB columns. Temporarily relaxed relation-path filtering/sorting for closed testing (see ACCORE-SIGVDS-T-R7X2). Updated documentation, TODOs, icons, CSS, and local dev tooling. Feature is developer-only and not enabled in production grids.
2026-07-20 10:33:35 +02:00
Loretta 40e6c613cd Replace [NotGridFilterable] with [NoGridOperations]
Replaced all references to `[NotGridFilterable]` with the new `[NoGridOperations]` attribute, which controls all grid operations (filter, sort, group, search) per property and supports a scope parameter (`Local`, `Server`, `Both`). Updated documentation to clarify handling of computed properties, detail DevExpress grid API support for disabling operations, and explain the rationale for the new attribute. Documented the grid column override API and updated TODOs to reference `[NoGridOperations]` as the standard opt-out mechanism. These changes ensure explicit, visible, and layer-appropriate grid operation restrictions.
2026-07-20 06:28:55 +02:00
Loretta 31ef0e22c6 Expand DevExpress grid virtualization docs
Significantly enhanced documentation for DevExpress grid integration and server-side virtualization. Added a curated index of DxGrid examples, documented migration constraints, feature limitations, and clarified handling of computed/unbound columns. Introduced a repo-local GRID/ docs folder for product-specific grid decisions and TODOs. Updated ADRs and cross-links to reflect parity requirements and improved navigation. Added ADR 0007 for framework docs-mirror access. Improved overall clarity and maintainability of grid-related docs.
2026-07-19 19:31:45 +02:00
Loretta a52fbe9174 Implement SignalR DataSource split & virtualization base
Implements client half of ADR 0004: splits SignalR DataSource into new base class (AcSignalRDataSourceBase), collection sibling (AcSignalRDataSource), and new virtualized sibling (AcSignalRVirtualizedDataSource) for server-side grid paging. Refactors context, sync, and save logic to the base; updates all related docs, contracts, and TODOs. Adds SIGNALR_VIRTUALIZED_DATASOURCE topic, updates ADR 0004, introduces ADR 0006 for PopulateMerge, and clarifies terminology. No grids/endpoints yet migrated; groundwork for server virtualization is complete.
2026-07-19 18:37:08 +02:00
Loretta 3928022252 Implement server-side grid data virtualization (ADR 0004)
Server-side paging/filtering/sorting/counting for SignalR grid endpoints is now complete and documented. Introduced AcGridCriteriaTranslator for secure DevExpress criteria parsing and AcGridDataQueryExtensions for ORM-neutral query materialization. SignalR hub base now supports Task<T>/ValueTask<T> for grid endpoints. SearchText is present but hard-rejected server-side pending design. DevExpress.Data 25.1.3 added as a dependency. Documentation, build/test scripts, and settings updated. Endpoints will opt-in per-grid; client integration is next.
2026-07-19 06:06:00 +02:00
Loretta 72e458fddb Refactor SignalR response kind to enum-based model
Replaced IsRawBytesData with SignalResponseDataKind enum for extensible transport response handling (Default, RawBytes, GridDataQuery). Updated all protocol, client, and server logic to use the new enum. Dispatcher now validates and fills GridDataQuery responses, with error handling for non-upgraded endpoints. Updated XML docs, ADR 0004, and all related documentation and TODOs. Marked AcGridDataQuery<T> as [AcBinarySerializable(false)]. No functional change for existing calls; new logic is opt-in.
2026-07-19 05:07:10 +02:00
Loretta b9f874eb92 Unify grid data request/response as AcGridDataQuery<T>
Replaced the dual-object grid data virtualization model with a single round-trip carrier, AcGridDataQuery<TDataItem>, now used for both request and response. Added IAcGridDataQuery interface. Updated all docs, ADR 0004, and TODOs to reflect the new design. Removed AcGridDataRequest.cs and migrated all references to the new type. Updated dispatcher, endpoint, and sort descriptor docs for the revised contract. Adjusted build/test scripts for the new structure.
2026-07-19 03:49:03 +02:00
Loretta c896e4ecba Scaffold grid data virtualization types and docs
Introduced initial scaffolding for grid data virtualization (ADR 0004) in AyCode.Core and AyCode.Blazor. Added `GridDataMode` enum, `AcGridDataRequest`, and `AcGridSortDescriptor` types for future server-side grid filtering and paging. Updated documentation and ADRs to reflect these inert declarations; no functional changes or parameter exposure yet.
2026-07-18 09:33:34 +02:00
Loretta 9c31276357 Unify grid data virtualization ADRs and docs
- Major rewrite of ADR 0004: now covers unified server-side data virtualization (filtering, sorting, paging, count) via AcGridDataRequest in SignalParams; phased approach replaced by single feature; security, rollout, and alternatives updated.
- New ADR 0005: introduces IAcDataTransport abstraction for Blazor Server in-process data transport, enabling grid stack reuse across SignalR and in-process modes; covers DI scoping and serialization avoidance.
- Updated MGGRID and SIGNALR_DATASOURCE docs to reflect new virtualization design, terminology, and ADR cross-references; TODOs/status updated.
- GLOSSARY and README revised: AcExpressionNode marked deprecated, grid filtering clarified as DevExpress criteria, ADR index/status updated.
- Technical clarifications: consistent metadata/request/response patterns, SignalParams usage, and separation of transport/dispatcher/endpoint concerns; future work noted.
2026-07-18 08:46:17 +02:00
Loretta b44c1d3687 Add TODO for filter panel sorting; expand ADR on ordering
Added ACBLAZOR-GRID-T-K9F4 to MGGRID_TODO.md for sorting lookup items in MgGridFilterPanelTagBox via new OrderItemsByText and OrderItemsDescending properties. Updated ADR for MgGridLayoutSave and filter-panel restore to document the framework-level sorting decision and rationale. Clarified DevExpress DxTagBox lacks a sort API; sorting will be handled internally. No code changes—documentation and planning only.
2026-07-17 15:43:03 +02:00
Loretta 11d1ae1d17 Improve filter panel restore logic and doc clarity
Major overhaul of MgGridFilterPanelTagBox restore/healing logic:
- Level-triggered healing prevents lost filter criteria after async loads.
- Healing now only triggers when needed; delayed assert ensures stability.
- ValuesChanged event guarded to avoid accidental filter clearing.
- Diagnostics dormant but retained for future debugging.
- Comments and summaries updated for clarity.

Docs (MGGRID_PARAMETERS.md, 0004-signalr-datasource-server-side-filtering.md) updated to explain new logic, rationale, and future plans.

Minor refactor in GridShippingDocument.razor for reload clarity.
No functional change in ShippingsAdmin.razor (comment only).
2026-07-17 15:23:24 +02:00
Loretta efd4c67cc0 Fix filter panel restore race; doc v2 plan & logging
Refactored MgGridFilterPanelTagBox to robustly heal filter criteria vs. async lookup data race, using level-triggered snapshot detection and reload. Added diagnostic logging. Updated MGGRID docs to explain the new logic, rationale, and planned v2 layout envelope solution. Minor unrelated shell command tweaks in settings.local.json.
2026-07-17 06:31:41 +02:00
Loretta d164a99ed9 Fix: TagBox reloads on in-place Data refill
Improved MgGridFilterPanelTagBox<TData, TValue> to detect in-place Data collection refills and trigger DevExpress editor Reload(), ensuring tags resolve when the collection is updated without changing its reference. Updated MGGRID_PARAMETERS.md to document this behavior and clarify why Reload() is needed for in-place fills.
2026-07-17 05:51:31 +02:00
Loretta b06d321bfb Refactor grid filter panel system for clarity/extensibility
Refactored the grid filter panel system:
- Renamed "quick-filter panel" to "filter panel" throughout.
- Introduced IMgGridFilterPanelComponent interface for filter panel contract.
- Split MgTagBox (now behavior-free) and new MgGridFilterPanelTagBox for grid filter logic.
- Grid tracks filter panel components, synchronizes criteria, and exposes new filter panel methods.
- Filter panel always rendered (CSS-hidden when off) to prevent invisible filtering.
- Added right-aligned "Clear Filters" button for panel-owned filters.
- Updated docs, parameter tables, and glossary for new terminology and structure.
- Updated usages to new component; legacy grid class implements no-op interface.
- Documented edge cases and updated CSS for new layout.
2026-07-17 05:34:01 +02:00
Loretta 1e518d9a1e Refactor MgGridBase filter panel & unify filter criteria
- Moved quick-filter panel below toolbar in MgGridBase for improved layout and visual alignment; FilterPanel now renders as a styled band between toolbar and group panel.
- Exposed GridSizeMode on IMgGridBase and MgGridBase; MgTagBox now inherits grid density by default for consistent sizing.
- Renamed FilterText to CustomFilterCriteria across grid/data source classes and tests to clarify its role as a DevExpress criteria string.
- Updated documentation (README.md, MGGRID_PARAMETERS.md, GLOSSARY.md, ADR 0004) to reflect filter panel placement, parameter naming, and sizing/layout changes.
- Adjusted CSS for new filter panel layout and visual integration.
- Updated example usages and tests to match new API and layout.
2026-07-16 15:01:37 +02:00
Loretta 2d62fad300 Add quick-filter panel slot to MgGridBase
Introduced a flexible quick-filter panel to the grid system via a new FilterPanel slot in MgGridBase. Added interface and implementation for filter panel visibility and toggle logic. Updated toolbar to show a Show/Hide Filters button when applicable. MgTagBox now applies per-field quick-filters using SetFieldQuickFilter. Removed redundant MgGridFilterPanelBase. Updated documentation and ADR 0004 to cover the new feature. Added CSS for consistent filter panel styling and demonstrated usage in GridPartner.razor. Legacy MgGridBase updated for compatibility.
2026-07-16 06:28:55 +02:00
Loretta 4eb0d1566c Add quick-filter panel support to MgGridBase
Introduced a FilterPanel slot and supporting components for per-field quick filtering in DevExpress Blazor grids. Added MgGridFilterPanelBase and MgTagBox for declarative, AND-combined field filters. Updated IMgGridBase and base classes to support SetFieldQuickFilter. Documented the extension in ADR 0004 and clarified SearchText handling. Registered DevExpress docs fetch domain and performed minor cleanups.
2026-07-15 15:20:44 +02:00
Loretta 27d5e03955 Centralize environment state in AcEnv framework
Refactored FruitBankConst and FruitBankConstClient to delegate PROD/DEV environment logic to AcEnv.IsProdDb, removing local state and events. Updated MGGRID_TODO.md with ADR reference. Added ADR 0002 documenting the migration of environment infrastructure (BaseUrl, env state, badge) to the framework. Updated settings.local.json with new doc/code read commands and improved build error reporting.
2026-07-15 10:16:26 +02:00
Loretta 3d377c542d Clarify agent protocol: sequential doc reads required
Added critical instructions to AGENTS.md mandating that `.github/copilot-instructions.md` must be read first in every session, with all session-start steps executed before any code or query actions. Documented a strict sequential execution override, prohibiting parallel doc/code reads, and mapped Copilot tool names to Codex shell commands. No functional changes to appsettings.json.
2026-07-13 14:04:34 +02:00
Loretta 60a5599214 Isolate InfoPanel templates, document DataItem contract
- Added MGGRID_TODO.md entry (ACBLAZOR-GRID-T-E3B6) for ErrorBoundary isolation of consumer templates and DataItem contract documentation.
- Updated GridShippingDocumentInfoPanel.razor to guard against null ShippingItems after add/save, preventing unhandled exceptions.
- Added PowerShell command in settings.local.json to count MGGRID_TODO.md lines for monitoring.
2026-07-13 08:57:06 +02:00
Loretta 9a0c077f2a Update MgGrid reload logic, add IsProd env flag, doc fixes
- MgGridBase: call Reload after item changes to refresh grid view
- Add IsProd environment flag (FruitBankConst, IFruitBankDataControllerCommon, SignalRTags, client/server wiring)
- Logger DI: fix constructor param, default AppType to Web in configs and DI setup
- Docs: clarify MgGrid edit flow, editor requirements, companion component structure, and disposal logic
- Add PowerShell test command for EkaerTradeCardValidatorTests
2026-07-12 14:32:05 +02:00
Loretta a254dbe722 InfoPanel: custom edit templates & null edit model fix
- Add InfoPanelEditTemplate to MgGridDataColumn for custom InfoPanel editors with refresh support
- Introduce MgGridInfoPanelEditContext for edit context/refresh
- Harden OnCustomizeEditModel to handle null edit models, preventing InfoPanel crashes and logging warnings
- Update docs: usage, editor resolution order, and new issue entry (ACBLAZOR-GRID-I-N7K2)
- Refactor grid templates to use new features and ensure consistent editor behavior
- Minor doc and formatting improvements
2026-07-12 08:36:20 +02:00
Loretta 076162f6ee Enable server-roaming for grid layouts; EKÁER depot guard
Extended MgGridBase to support server-roaming of user grid layouts via SignalR, controlled by the new EnableServerLayouts parameter. Updated Save/Load/HasUserLayoutAsync logic and documentation. Added SignalR API methods for grid layout storage. In EKÁER, added TryDepotError to require PartnerDepot before XML generation and enforced gross weight > 0 per line. Updated docs and settings.local.json for new features and automation.
2026-07-10 15:37:26 +02:00
Loretta bd65d70d60 Update config for local dev; add AyCode.Blazor consumers doc
- Added AyCode.Blazor/CONSUMERS.md to document consumer repos and usage for impact assessment.
- Switched appsettings.json URLs to localhost for local development; production URLs are now commented out.
- Commented out Blazor/DevExpress compression and optimization settings in .csproj files.
- Minor whitespace and indentation cleanups.
- No functional code changes.
2026-07-09 13:12:25 +02:00
Loretta 7322af703b Switch archive policy to year-month buckets (LLMP-DEC-67)
Updated all docs, skills, and examples to use year-month archive files (`*_<YYYY>_<MM>.md`) for `_ISSUES.md`, `_TODO.md`, and `LLM_PROTOCOL_DECISIONS.md`. Decision Log rolling window now governed by LLMP-DEC-67 (last 15 entries active). Clarified archive file handling, updated uniqueness checks, and revised references throughout. Closed and documented resolution for `FBANKAPP-DMODEL-I-P6X4` in `DATAMODEL_ISSUES.md`.
2026-06-15 18:01:44 +02:00
Loretta 7c47d212f2 EKÁER grid: status enum fix, batch create, UI/UX, DB guard
- Fixed EkaerHistory status persistence (int+enum wrapper for linq2db)
- Added batch EKÁER record creation (toolbar date picker, SignalR, UI)
- Enhanced GridEkaerHistory: status, error, XML copy, manual edit
- Improved column display format handling in MgGridInfoPanel
- Updated SignalR binary protocol streaming strategy doc
- Added DB guard PowerShell hook: blocks non-_DEV DB shell access
- New styles for EKÁER toolbar date picker
2026-06-11 08:52:09 +02:00
Loretta 04f0d7d3e3 Refactor: remove Server DLLs, unify SignalR references
- Removed all AyCode.Services.Server and Server DLL references from projects and code; now use only AyCode.Services and AyCode.Services.SignalRs.
- Updated all documentation links to reference AyCode.Services/docs/SIGNALR_DATASOURCE/README.md.
- Enabled AOT compilation in FruitBankHybrid.Web.Client.
- Added InternalsVisibleTo for AyCode.Services.Server.Tests to support internal testing.
- Introduced AcBinaryProtocolThreadPoolTests for thread-pool regression and contract testing.
- Added P2 feature TODO for per-message protocol mode selection in AcBinaryHubProtocol.
- Cleaned up using directives and removed obsolete Server-specific references.
- Minor formatting and whitespace improvements.
2026-06-08 16:53:27 +02:00
Loretta 8e5b13e90c Add logger support to grids, data sources, and helpers
- Added optional logger to TaskHelper.Forget for fire-and-forget error logging
- Updated MgGridBase and data sources to accept and use logger instances
- Refactored AcSignalRDataSource to log deserialization faults
- Modified constructors and usages of SignalRDataSourceList/Observable for logger injection
- Added CountryCode to CargoTruck and displayed in new GridCargoTruck
- Introduced GridCargoTruck.razor and base class with logger integration
- Updated GridCargoPartner to use new cargo truck grid as detail row
- Improved code style and ensured consistent error handling throughout
2026-05-30 06:47:05 +02:00
Loretta 92296c479b Add XML doc standards; enable compiler-generated files
Added "XML Documentation" section to CONVENTIONS.md, specifying usage of <summary> tags for developer-facing comments and restricting implementation details to external docs. Enabled EmitCompilerGeneratedFiles in FruitBank.Common.csproj for improved debugging and analysis.
2026-05-23 09:27:29 +02:00
Loretta b61b8085df [LOADED_DOCS: 3 files, no new loads]
Refactor SIGDS docs, archive DEC log, add pipe tests

- Updated all references to AcSignalRDataSource docs to new SIGNALR_DATASOURCE/README.md location; introduced SIGDS topic and paired issues/TODO files.
- Implemented new Decision Log archival policy: last-15-active entries remain, older entries moved to year-month archive (LLMP-DEC-65, 67); updated docs-archive skill for two-rule rotation.
- Added new SIGDS architectural TODO (ACCORE-SIGDS-T-D9F2) for relocating DataSource code.
- Updated doc tables, glossaries, and conventions for SIGDS.
- Added AcBinarySerializerPipeParallelTests.cs for parallel serialization/deserialization round-trip tests.
2026-04-28 06:36:39 +02:00
Loretta 3cee1e20d7 [LOADED_DOCS: 3 files, no new loads]
Update ID format to use per-repo prefixes and random suffix

Migrated all issue, TODO, and decision IDs to a new 4-part format: <PREFIX>-<TOPIC>-<TYPE>-<RAND>. Added per-repo prefix declarations in copilot-instructions.md and documented conventions in REPO_PREFIXES.md. Updated all topic registries, logs, cross-references, and documentation to use the new format. Introduced MIGRATION_ID_MAPPING.md for old-to-new ID mapping. Enhanced skills and protocol audit logic to validate and enforce per-repo prefixes and topic codes at runtime. Clarified Framework-First doctrine and ensured all references are unambiguous.
2026-04-26 19:12:50 +02:00
Loretta b4d68e1fa4 [LOADED_DOCS: 3 files, no new loads]
Add Rule #6, AUTH topic, ADRs, config & doc updates

- Codified Rule #6 (authority, rule scope, skill invocation) in all primary copilot-instructions.md files
- Clarified skill pre-load/lazy-load rules and LOADED_DOCS prefix
- Forbid skill/template version labels in Decision Log governance
- Scaffolded new AUTH topic with README, ISSUES, and TODO files
- Added repo/project ADR folders and templates; new ADR for AcBinaryHubProtocol decorator stack
- Migrated cross-cutting issues/TODOs to Closed with detailed resolution
- Made FruitBankHybrid.Shared/appsettings.json the canonical config source; suppressed Razor SDK auto-publish to avoid file collisions
- Updated protocol/wire format docs for AcBinaryHubProtocol
- Minor config: updated ports, WaitForFlush, and csproj content rules
2026-04-26 13:44:12 +02:00
Loretta 1a7bb3bc10 Add adr-author skill, ADR template, and log security issues
- Introduced the `adr-author` skill for structured ADR creation; updated session setup and shared skills to require pre-loading it.
- Added `SKILL.md` and `ADR_TEMPLATE.md` for ADR authoring workflow and documentation.
- Updated protocol decision log with entries for the new skill and its integration.
- Documented two critical JWT logging security issues in `LOGGING_ISSUES.md`.
- Minor: added a cleanup Bash command in `settings.local.json`.
2026-04-25 07:24:16 +02:00
Loretta 806c6e5351 [LOADED_DOCS: 4 files, no new loads]
Refactor docs: topic folders, TOON, XCUT, protocol sync

- Migrated all topic documentation into dedicated folders with canonical `README.md`, `ISSUES.md`, and `TODO.md` per topic (e.g., `LOGGING/`, `SIGNALR/`, `BINARY/`, `TOON/`).
- Added comprehensive TOON serializer documentation: design, format, options, attributes, inference, issues, and TODOs.
- Introduced `XCUT` folder for cross-cutting issues and TODOs, with canonical entries and topic cross-references.
- Updated all references and navigation to use new folder-based doc paths; fixed links and clarified doc structure.
- Enhanced AI agent protocol: enforce session skill preloading, `[LOADED_DOCS: ...]` short-name prefix, and mandatory `docs-check` skill for doc/code sync.
- Updated `.csproj` to include all `README.md` files for IDE visibility.
- Improved and clarified SignalR, grid, and project-level documentation.
- Minor code/test tweaks and doc content corrections for consistency.
2026-04-24 21:54:03 +02:00
Loretta 5d4f078906 [LOADED_DOCS: NONE]
Update protocol, docs-discovery skill, and doc layering

- Switched AI AGENT CORE PROTOCOL to new `[LOADED_DOCS: N files (+K this turn: ...)]` prefix format in all primary instruction files; updated examples and enforcement details.
- Added `docs-discovery` skill for proactive .md doc loading before code search; documented usage and integration as a shared agent skill.
- Introduced `## Protocol History` section and `LLM_PROTOCOL_DECISIONS.md` decision log for cross-repo protocol change tracking.
- Expanded protocol-audit skill and `REPOS.md` to support 8 instruction files (primary/inherit split), new invariants, and known issues.
- Added/updated structured TODO and issues docs for serialization, logging, and SignalR binary protocol.
- Improved cross-references, doc layering, and clarified documentation-first coding workflow.
- Various minor doc clarifications and formatting for protocol consistency.
2026-04-24 08:21:49 +02:00
Loretta 161ef4bba9 Framework-first doctrine, DI logger factory, config refactor
Introduced framework-first design rules and updated documentation to clarify framework vs. consumer boundaries. Added AcLoggerOptions and DI-based logger factory extensions to AyCode.Core, enabling per-category logger instantiation from appsettings.json. Standardized SignalR connection setup with AddAcDefaults, replacing project-specific code. Enhanced protocol configuration for DI scope isolation. Refactored appsettings.json structure and added MSBuild targets for config propagation. Removed obsolete code and updated comments to match new patterns.
2026-04-23 16:11:22 +02:00
Loretta b39d624406 [LOADED_DOCS: .github\copilot-instructions.md, C:\Users\Fullepi\copilot-instructions.md]
Refactor SignalR client DI and config, add test factory

Refactored FruitBankSignalRClient construction to use DI and centralized configuration from appsettings.json across all platforms. Introduced TestSignalRClientFactory for consistent test setup. Added FruitBankHubConnectionExtensions for reusable SignalR connection and logging configuration. Updated Program.cs and MauiProgram.cs to register logger factories, log writers, and IHubConnectionBuilder via DI. Embedded appsettings.json in MAUI and updated .csproj references for build flexibility. No business logic changes; all updates are infrastructure and test setup.
2026-04-22 22:45:32 +02:00
Loretta f1e93f939f Clarify and enforce doc-first, no-redundant-read policy
Correct rule references for no re-reading of loaded `.md` files. Add explicit "STRICT NO-RE-READ POLICY" section defining context and re-read conditions. Expand context recovery rules with auto-detection triggers and specify directories for recovery. These changes make doc-first and anti-loop policies clearer and more robust, ensuring efficient and up-to-date documentation usage.
2026-04-04 20:50:51 +02:00
Loretta bcea6b3205 Strengthen doc-first, multi-repo protocol and clarify tools
Expanded copilot-instructions.md to enforce strict doc-first and cross-repo hard-gate rules, including per-question doc checks and a no re-read policy with explicit penalties. Broadened consent requirements for all file modifications. Updated context recovery paths. In CLAUDE.md, added sequential execution override and mapped Copilot tool names to Claude Code equivalents, ensuring protocol consistency across tools.
2026-04-04 09:27:49 +02:00
Loretta d5fdd57ddd Enforce strict AI agent protocol, doc sync, and glossary
- Added "AI AGENT CORE PROTOCOL" to all copilot-instructions.md files: mandates [LOADED_DOCS] prefix, hard-gates tool usage, enforces no-re-read of .md files, and requires user consent for doc/code changes.
- Updated CLAUDE.md to require reading copilot-instructions.md first.
- Added topic-based doc separation and folder navigation rules.
- Changed doc sync: agent now passively detects discrepancies and asks before updating docs.
- Every code-modifying response must end with a [DOCUMENTATION CHECK] section.
- Centralized measurement system and domain traps in new FruitBank.Common/docs/GLOSSARY.md; updated references in FruitBankHybridApp GLOSSARY.md.
- Clarified schema and doc locations in FruitBankHybridApp README.md.
- Added hybrid execution model section to AyCode.Core BINARY_FEATURES.md.
- Removed unnecessary BeginUpdate/EndUpdate calls in MgGridBase.cs for layout persistence.
- Removed full Toon schema from plugin SCHEMA.md to avoid duplication.
2026-04-02 09:02:54 +02:00
LorettaandClaude Opus 4.6 045b8e1526 Update LLM instruction files for token efficiency and cross-repo navigation
- CLAUDE.md: reduced to single-line pointer to copilot-instructions.md (eliminates redundant auto-loaded content)
- copilot-instructions.md: added @repo name field, relative paths in own-dep-repos, "do not re-read .md files" rule, and explicit permission to navigate external repos

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-31 16:15:01 +02:00
Loretta da11df5384 Clarify and expand copilot-instructions conventions
- Clarified DllReference usage for AyCode.Core projects, noting its necessity for build isolation and nopCommerce plugin compatibility.
- Reworded redundancy guideline to stress checking for and reusing existing methods before adding new logic.
- Expanded .md file sync rule: update relevant docs when code changes, resolve contradictions in favor of code, and address shared broken references; during review, suggest (not add) new documentation for useful behaviors.
- Rephrased AyCode.Core solution description for clarity regarding type locations.
2026-03-30 10:15:46 +02:00
Loretta b062c4c712 Add structured metadata and update doc references
- Introduce @repo and @project metadata blocks in copilot-instructions.md and README.md for all projects, declaring type, dependencies, and layer.
- Update all documentation links to reference canonical AyCode.Core and AyCode.Blazor repo locations, removing hardcoded paths.
- Move MgGridBase and related doc references to AyCode.Blazor.Components/docs/ to reflect repo reorg.
- Expand project READMEs with purpose, key files, and dependency tables for clearer architecture.
- Update glossary, conventions, and architecture docs to match new doc structure and reference locations.
- Apply minor corrections to terminology and file references for consistency and accuracy.
- Standardize documentation and make project relationships explicit.
2026-03-30 08:54:33 +02:00
Loretta d1567323d8 Refactor MgGrid documentation into modular files
Split MGGRID.md into focused docs (parameters, CRUD, layout, detail, rendering, InfoPanel, toolbar, columns, datasource) under AyCode.Blazor.Components/docs/. Updated all references, READMEs, and project/solution files to match new structure. Clarified doc layering conventions and core doc links. No code changes—documentation and project organization only.
2026-03-30 08:00:53 +02:00
Loretta 453e21a844 Expand and clarify MgGrid system documentation
Major overhaul of MgGrid-related documentation:
- README.md: Reference full technical docs, update key files list, add new components.
- ARCHITECTURE.md: Add MgGridToolbarTemplate, MgGridSignalRDataSource; clarify component roles.
- GLOSSARY.md: Add comprehensive MgGrid System section with cross-references.
- MGGRID.md: Rewrite overview, hierarchy, CRUD, event wiring, lifecycle, layout, InfoPanel, toolbar, and data column sections for accuracy and completeness.
- copilot-instructions.md: Refine .md sync convention, add documentation layering rule.
- CONVENTIONS.md: Remove redundant code reuse section.

Brings docs in sync with codebase and improves clarity for developers.
2026-03-29 18:29:24 +02:00
Loretta 52131fdf25 Clarify AyCode.Core usage in docs; add MGGRID.md to solution
Expanded documentation in copilot-instructions.md, CLAUDE.md, and ARCHITECTURE.md to clarify that core framework types are defined in AyCode.Core and should be referenced there. Added a "Related Solutions" section and updated the dependency graph. Included docs\MGGRID.md in the solution items list. Improved guidance for locating and using AyCode.Core types.
2026-03-29 10:06:11 +02:00
Loretta 6cce23a124 Add MgGrid system documentation and architecture overview
Added a new section to ARCHITECTURE.md summarizing the MgGrid component system, its hierarchy, and key behaviors, with a link to the new MGGRID.md. Created MGGRID.md with comprehensive documentation on MgGrid design, usage, parameters, lifecycle, events, layout persistence, master-detail, InfoPanel, fullscreen, and public interface. Includes code examples, tables, and diagrams for developer reference.
2026-03-29 10:01:12 +02:00
Loretta b80b117a38 Update docs: enforce .md sync, clarify structure & TFMs
Expanded and clarified solution/project documentation:
- Added all top-level docs and docs/ folder as solution items in .sln files
- Inserted maintenance notices in all project and subfolder READMEs: require .md sync with code
- Main READMEs now include project tables with TFM, purpose, and README links
- ARCHITECTURE.md now details dependency graph and TFM rationale
- CONVENTIONS.md and copilot-instructions.md require code reuse, no redundancy
- Glossary and conventions updated to require terminology/rule updates with code changes
- Emphasized DLL-only AyCode.Core refs and nopCommerce .NET 9.0 requirement
- Clarified domain terms and intentional typos
- No code logic changes; documentation and guidance only
2026-03-29 09:26:15 +02:00