Compare commits
22 Commits
| Author | SHA1 | Date |
|---|---|---|
|
|
1ccf8f3be3 | |
|
|
a5365dd735 | |
|
|
e9fc609523 | |
|
|
e9c6efbb90 | |
|
|
3f21389bde | |
|
|
ce631560dc | |
|
|
7321b0a3cd | |
|
|
e3f04cd396 | |
|
|
6743d5f14f | |
|
|
318d0c2936 | |
|
|
b4fa372ad8 | |
|
|
44501fefc1 | |
|
|
f3bc1fe077 | |
|
|
956d8fecb3 | |
|
|
debad7f745 | |
|
|
02ffd733b3 | |
|
|
a29035b196 | |
|
|
f5ff1e1ded | |
|
|
7e988b9361 | |
|
|
2a32233b6d | |
|
|
c47c0ddc9f | |
|
|
3d341b6568 |
|
|
@ -0,0 +1,7 @@
|
|||
{
|
||||
"permissions": {
|
||||
"allow": [
|
||||
"Bash(rm \"C:/Users/Fullepi/.claude/projects/H--Applications-Mango-Source-FruitBank/memory/feedback_doc_structure_meta_protocol.md\" \"C:/Users/Fullepi/.claude/projects/H--Applications-Mango-Source-FruitBank/memory/MEMORY.md\")"
|
||||
]
|
||||
}
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
|
|
@ -0,0 +1,17 @@
|
|||
CRITICAL: Your FIRST action in every session MUST be reading `.github/copilot-instructions.md`. Execute ALL session-start instructions found there before responding to any user query. It is the single source of truth for this repo.
|
||||
|
||||
## SEQUENTIAL EXECUTION OVERRIDE
|
||||
The AI AGENT CORE PROTOCOL in copilot-instructions.md requires STRICT SEQUENTIAL execution. This OVERRIDES your default parallelization behavior. Do NOT parallelize doc reads with code searches. The sequence is:
|
||||
1. Read copilot-instructions.md → process its rules FULLY
|
||||
2. Read ALL docs/ .md files listed in the protocol → wait for completion
|
||||
3. Output [LOADED_DOCS: ...] prefix
|
||||
4. ONLY THEN respond to the user's query or search code
|
||||
|
||||
## Tool mapping for AI AGENT CORE PROTOCOL
|
||||
The copilot-instructions.md references Copilot tool names. Map them to Claude Code tools:
|
||||
- `get_file` / `file_search` → `Read`, `Glob`, `Grep`
|
||||
- `code_search` / `get_symbols_by_name` / `find_symbol` → `Grep`, `Glob`
|
||||
- `replace_string_in_file` / `edit_file` → `Edit`
|
||||
- `create_file` → `Write`
|
||||
|
||||
Follow the protocol using YOUR tools. The rules (LOADED_DOCS prefix, hard-gate, no-re-read, context recovery, explicit consent) apply equally to Claude Code.
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 18
|
||||
VisualStudioVersion = 18.0.11222.15
|
||||
# Visual Studio Version 17
|
||||
VisualStudioVersion = 17.14.36804.6
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Libraries", "Libraries", "{E4ACA93B-D3DE-4557-B069-F1DB42925A4B}"
|
||||
EndProject
|
||||
|
|
@ -87,6 +87,16 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Nop.Plugin.Misc.MangoCore",
|
|||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mango.Nop.Data", "..\NopCommerce.Common\4.70\Libraries\Mango.Nop.Data\Mango.Nop.Data.csproj", "{EE44B558-F1DA-433A-BD4C-D275986A4679}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "docs", "docs", "{4403A2FE-7929-44A4-8701-60B3F759D400}"
|
||||
ProjectSection(SolutionItems) = preProject
|
||||
..\NopCommerce.Common\4.70\Libraries\docs\ARCHITECTURE.md = ..\NopCommerce.Common\4.70\Libraries\docs\ARCHITECTURE.md
|
||||
..\NopCommerce.Common\4.70\Libraries\docs\CONVENTIONS.md = ..\NopCommerce.Common\4.70\Libraries\docs\CONVENTIONS.md
|
||||
..\NopCommerce.Common\4.70\Libraries\docs\GLOSSARY.md = ..\NopCommerce.Common\4.70\Libraries\docs\GLOSSARY.md
|
||||
..\NopCommerce.Common\4.70\Libraries\README.md = ..\NopCommerce.Common\4.70\Libraries\README.md
|
||||
..\NopCommerce.Common\4.70\Libraries\CLAUDE.md = ..\NopCommerce.Common\4.70\Libraries\CLAUDE.md
|
||||
..\NopCommerce.Common\4.70\Libraries\.github\copilot-instructions.md = ..\NopCommerce.Common\4.70\Libraries\.github\copilot-instructions.md
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mango.Sandbox.EndPoints", "Tests\Mango.Sandbox\Mango.Sandbox.EndPoints\Mango.Sandbox.EndPoints.csproj", "{D22DB269-2490-4A3D-B0B4-2CD2BB626F9C}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mango.Sandbox.EndPoints.Tests", "Tests\Mango.Sandbox\Mango.Sandbox.EndPoints.Tests\Mango.Sandbox.EndPoints.Tests.csproj", "{B8491E5C-DBB5-1594-052E-744D78D7A4DE}"
|
||||
|
|
@ -94,6 +104,7 @@ EndProject
|
|||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{5881709D-780C-402A-9627-928B25AE712B}"
|
||||
ProjectSection(SolutionItems) = preProject
|
||||
build_fruitbank.bat = build_fruitbank.bat
|
||||
.github\copilot-instructions.md = .github\copilot-instructions.md
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Global
|
||||
|
|
@ -583,6 +594,7 @@ Global
|
|||
{3E893AC2-29F1-48FC-B33F-F73C6EE2BE90} = {0742FDF3-0F2E-4C64-9521-E58A7FF2ED26}
|
||||
{3976CB1D-8080-4B84-8C01-1F98BFCAF2B3} = {0742FDF3-0F2E-4C64-9521-E58A7FF2ED26}
|
||||
{EE44B558-F1DA-433A-BD4C-D275986A4679} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8}
|
||||
{4403A2FE-7929-44A4-8701-60B3F759D400} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8}
|
||||
{D22DB269-2490-4A3D-B0B4-2CD2BB626F9C} = {E8FC6874-E230-468A-9685-4747354B92FF}
|
||||
{B8491E5C-DBB5-1594-052E-744D78D7A4DE} = {E8FC6874-E230-468A-9685-4747354B92FF}
|
||||
EndGlobalSection
|
||||
|
|
|
|||
|
|
@ -1,22 +1,22 @@
|
|||
namespace Nop.Core.Domain.Catalog;
|
||||
//namespace Nop.Core.Domain.Catalog;
|
||||
|
||||
/// <summary>
|
||||
/// Represents a backorder mode
|
||||
/// </summary>
|
||||
public enum BackorderMode
|
||||
{
|
||||
/// <summary>
|
||||
/// No backorders
|
||||
/// </summary>
|
||||
NoBackorders = 0,
|
||||
///// <summary>
|
||||
///// Represents a backorder mode
|
||||
///// </summary>
|
||||
//public enum BackorderMode
|
||||
//{
|
||||
// /// <summary>
|
||||
// /// No backorders
|
||||
// /// </summary>
|
||||
// NoBackorders = 0,
|
||||
|
||||
/// <summary>
|
||||
/// Allow qty below 0
|
||||
/// </summary>
|
||||
AllowQtyBelow0 = 1,
|
||||
// /// <summary>
|
||||
// /// Allow qty below 0
|
||||
// /// </summary>
|
||||
// AllowQtyBelow0 = 1,
|
||||
|
||||
/// <summary>
|
||||
/// Allow qty below 0 and notify customer
|
||||
/// </summary>
|
||||
AllowQtyBelow0AndNotifyCustomer = 2,
|
||||
}
|
||||
// /// <summary>
|
||||
// /// Allow qty below 0 and notify customer
|
||||
// /// </summary>
|
||||
// AllowQtyBelow0AndNotifyCustomer = 2,
|
||||
//}
|
||||
|
|
@ -1,17 +1,17 @@
|
|||
namespace Nop.Core.Domain.Catalog;
|
||||
//namespace Nop.Core.Domain.Catalog;
|
||||
|
||||
/// <summary>
|
||||
/// Represents a download activation type
|
||||
/// </summary>
|
||||
public enum DownloadActivationType
|
||||
{
|
||||
/// <summary>
|
||||
/// When order is paid
|
||||
/// </summary>
|
||||
WhenOrderIsPaid = 0,
|
||||
///// <summary>
|
||||
///// Represents a download activation type
|
||||
///// </summary>
|
||||
//public enum DownloadActivationType
|
||||
//{
|
||||
// /// <summary>
|
||||
// /// When order is paid
|
||||
// /// </summary>
|
||||
// WhenOrderIsPaid = 0,
|
||||
|
||||
/// <summary>
|
||||
/// Manually
|
||||
/// </summary>
|
||||
Manually = 10,
|
||||
}
|
||||
// /// <summary>
|
||||
// /// Manually
|
||||
// /// </summary>
|
||||
// Manually = 10,
|
||||
//}
|
||||
|
|
@ -1,17 +1,17 @@
|
|||
namespace Nop.Core.Domain.Catalog;
|
||||
//namespace Nop.Core.Domain.Catalog;
|
||||
|
||||
/// <summary>
|
||||
/// Represents a gift card type
|
||||
/// </summary>
|
||||
public enum GiftCardType
|
||||
{
|
||||
/// <summary>
|
||||
/// Virtual
|
||||
/// </summary>
|
||||
Virtual = 0,
|
||||
///// <summary>
|
||||
///// Represents a gift card type
|
||||
///// </summary>
|
||||
//public enum GiftCardType
|
||||
//{
|
||||
// /// <summary>
|
||||
// /// Virtual
|
||||
// /// </summary>
|
||||
// Virtual = 0,
|
||||
|
||||
/// <summary>
|
||||
/// Physical
|
||||
/// </summary>
|
||||
Physical = 1,
|
||||
}
|
||||
// /// <summary>
|
||||
// /// Physical
|
||||
// /// </summary>
|
||||
// Physical = 1,
|
||||
//}
|
||||
|
|
@ -1,22 +1,22 @@
|
|||
namespace Nop.Core.Domain.Catalog;
|
||||
//namespace Nop.Core.Domain.Catalog;
|
||||
|
||||
/// <summary>
|
||||
/// Represents a low stock activity
|
||||
/// </summary>
|
||||
public enum LowStockActivity
|
||||
{
|
||||
/// <summary>
|
||||
/// Nothing
|
||||
/// </summary>
|
||||
Nothing = 0,
|
||||
///// <summary>
|
||||
///// Represents a low stock activity
|
||||
///// </summary>
|
||||
//public enum LowStockActivity
|
||||
//{
|
||||
// /// <summary>
|
||||
// /// Nothing
|
||||
// /// </summary>
|
||||
// Nothing = 0,
|
||||
|
||||
/// <summary>
|
||||
/// Disable buy button
|
||||
/// </summary>
|
||||
DisableBuyButton = 1,
|
||||
// /// <summary>
|
||||
// /// Disable buy button
|
||||
// /// </summary>
|
||||
// DisableBuyButton = 1,
|
||||
|
||||
/// <summary>
|
||||
/// Unpublish
|
||||
/// </summary>
|
||||
Unpublish = 2,
|
||||
}
|
||||
// /// <summary>
|
||||
// /// Unpublish
|
||||
// /// </summary>
|
||||
// Unpublish = 2,
|
||||
//}
|
||||
|
|
@ -1,22 +1,22 @@
|
|||
namespace Nop.Core.Domain.Catalog;
|
||||
//namespace Nop.Core.Domain.Catalog;
|
||||
|
||||
/// <summary>
|
||||
/// Represents a method of inventory management
|
||||
/// </summary>
|
||||
public enum ManageInventoryMethod
|
||||
{
|
||||
/// <summary>
|
||||
/// Don't track inventory for product
|
||||
/// </summary>
|
||||
DontManageStock = 0,
|
||||
///// <summary>
|
||||
///// Represents a method of inventory management
|
||||
///// </summary>
|
||||
//public enum ManageInventoryMethod
|
||||
//{
|
||||
// /// <summary>
|
||||
// /// Don't track inventory for product
|
||||
// /// </summary>
|
||||
// DontManageStock = 0,
|
||||
|
||||
/// <summary>
|
||||
/// Track inventory for product
|
||||
/// </summary>
|
||||
ManageStock = 1,
|
||||
// /// <summary>
|
||||
// /// Track inventory for product
|
||||
// /// </summary>
|
||||
// ManageStock = 1,
|
||||
|
||||
/// <summary>
|
||||
/// Track inventory for product by product attributes
|
||||
/// </summary>
|
||||
ManageStockByAttributes = 2,
|
||||
}
|
||||
// /// <summary>
|
||||
// /// Track inventory for product by product attributes
|
||||
// /// </summary>
|
||||
// ManageStockByAttributes = 2,
|
||||
//}
|
||||
File diff suppressed because it is too large
Load Diff
|
|
@ -1,17 +1,17 @@
|
|||
namespace Nop.Core.Domain.Catalog;
|
||||
//namespace Nop.Core.Domain.Catalog;
|
||||
|
||||
/// <summary>
|
||||
/// Represents a product type
|
||||
/// </summary>
|
||||
public enum ProductType
|
||||
{
|
||||
/// <summary>
|
||||
/// Simple
|
||||
/// </summary>
|
||||
SimpleProduct = 5,
|
||||
///// <summary>
|
||||
///// Represents a product type
|
||||
///// </summary>
|
||||
//public enum ProductType
|
||||
//{
|
||||
// /// <summary>
|
||||
// /// Simple
|
||||
// /// </summary>
|
||||
// SimpleProduct = 5,
|
||||
|
||||
/// <summary>
|
||||
/// Grouped (product with variants)
|
||||
/// </summary>
|
||||
GroupedProduct = 10,
|
||||
}
|
||||
// /// <summary>
|
||||
// /// Grouped (product with variants)
|
||||
// /// </summary>
|
||||
// GroupedProduct = 10,
|
||||
//}
|
||||
|
|
@ -1,27 +1,27 @@
|
|||
namespace Nop.Core.Domain.Catalog;
|
||||
//namespace Nop.Core.Domain.Catalog;
|
||||
|
||||
/// <summary>
|
||||
/// Represents a recurring product cycle period
|
||||
/// </summary>
|
||||
public enum RecurringProductCyclePeriod
|
||||
{
|
||||
/// <summary>
|
||||
/// Days
|
||||
/// </summary>
|
||||
Days = 0,
|
||||
///// <summary>
|
||||
///// Represents a recurring product cycle period
|
||||
///// </summary>
|
||||
//public enum RecurringProductCyclePeriod
|
||||
//{
|
||||
// /// <summary>
|
||||
// /// Days
|
||||
// /// </summary>
|
||||
// Days = 0,
|
||||
|
||||
/// <summary>
|
||||
/// Weeks
|
||||
/// </summary>
|
||||
Weeks = 10,
|
||||
// /// <summary>
|
||||
// /// Weeks
|
||||
// /// </summary>
|
||||
// Weeks = 10,
|
||||
|
||||
/// <summary>
|
||||
/// Months
|
||||
/// </summary>
|
||||
Months = 20,
|
||||
// /// <summary>
|
||||
// /// Months
|
||||
// /// </summary>
|
||||
// Months = 20,
|
||||
|
||||
/// <summary>
|
||||
/// Years
|
||||
/// </summary>
|
||||
Years = 30,
|
||||
}
|
||||
// /// <summary>
|
||||
// /// Years
|
||||
// /// </summary>
|
||||
// Years = 30,
|
||||
//}
|
||||
|
|
@ -1,27 +1,27 @@
|
|||
namespace Nop.Core.Domain.Catalog;
|
||||
//namespace Nop.Core.Domain.Catalog;
|
||||
|
||||
/// <summary>
|
||||
/// Represents a rental product period (for prices)
|
||||
/// </summary>
|
||||
public enum RentalPricePeriod
|
||||
{
|
||||
/// <summary>
|
||||
/// Days
|
||||
/// </summary>
|
||||
Days = 0,
|
||||
///// <summary>
|
||||
///// Represents a rental product period (for prices)
|
||||
///// </summary>
|
||||
//public enum RentalPricePeriod
|
||||
//{
|
||||
// /// <summary>
|
||||
// /// Days
|
||||
// /// </summary>
|
||||
// Days = 0,
|
||||
|
||||
/// <summary>
|
||||
/// Weeks
|
||||
/// </summary>
|
||||
Weeks = 10,
|
||||
// /// <summary>
|
||||
// /// Weeks
|
||||
// /// </summary>
|
||||
// Weeks = 10,
|
||||
|
||||
/// <summary>
|
||||
/// Months
|
||||
/// </summary>
|
||||
Months = 20,
|
||||
// /// <summary>
|
||||
// /// Months
|
||||
// /// </summary>
|
||||
// Months = 20,
|
||||
|
||||
/// <summary>
|
||||
/// Years
|
||||
/// </summary>
|
||||
Years = 30,
|
||||
}
|
||||
// /// <summary>
|
||||
// /// Years
|
||||
// /// </summary>
|
||||
// Years = 30,
|
||||
//}
|
||||
|
|
@ -26,7 +26,7 @@ public class DevAdminSignalRHubSandbox : AcWebSignalRHubWithSessionBase<SignalRT
|
|||
: base(configuration, new Logger<DevAdminSignalRHubSandbox>(logWriters.ToArray()))
|
||||
{
|
||||
SerializerOptions = new AcBinarySerializerOptions();
|
||||
DynamicMethodCallModels.Add(new AcDynamicMethodCallModel<SignalRAttribute>(testSignalREndpoint));
|
||||
DynamicMethodRegistry.Register(testSignalREndpoint);
|
||||
}
|
||||
|
||||
//protected override Task SendMessageToClient(IAcSignalRHubItemServer sendTo, int messageTag, ISignalRMessage message, int? requestId = null)
|
||||
|
|
|
|||
|
|
@ -0,0 +1,8 @@
|
|||
# Conventions
|
||||
|
||||
> For core framework conventions see `AyCode.Core/docs/CONVENTIONS.md`.
|
||||
> For Mango.Nop library conventions see `Mango.Nop Libraries/docs/CONVENTIONS.md`.
|
||||
|
||||
## XML Documentation
|
||||
|
||||
`<summary>` — brief, developer-facing, readable in VS IntelliSense tooltip. NO implementation details, NO wire-format / byte-level / perf specifics — those live in `docs/TOPIC/*.md`. Add `<example>` only when usage is non-obvious; otherwise omit.
|
||||
Loading…
Reference in New Issue