mirror of
https://github.com/MCCTeam/Minecraft-Console-Client
synced 2026-08-15 13:04:36 +00:00
Add structured component test reference to AGENTS.md and integration testing skill
- AGENTS.md: instruct to never generate config files in repo root - SKILL.md: add structured components test mode (section 4) with usage example and script reference
This commit is contained in:
parent
de96462659
commit
28e845d1ca
2 changed files with 28 additions and 1 deletions
|
|
@ -115,7 +115,31 @@ Use this for TPS, movement-cadence, or packet-cadence work:
|
||||||
|
|
||||||
Run them against a real server with a temp config and summarize counts from the captured logs.
|
Run them against a real server with a temp config and summarize counts from the captured logs.
|
||||||
|
|
||||||
### 4. Full inventory regression sweep
|
### 4. Structured components test
|
||||||
|
|
||||||
|
Use this after touching any `StructuredComponents` code (registries, component
|
||||||
|
parsers, subcomponents, codec helpers) to prove every component type in a
|
||||||
|
version parses on the wire without error:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
bash tools/run-structured-components-test.sh 1.21.11
|
||||||
|
```
|
||||||
|
|
||||||
|
Run a single version (fast, ~2 min) or a matrix:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
for v in 1.20.6 1.21 1.21.2 1.21.5 1.21.11 26.1; do
|
||||||
|
bash tools/run-structured-components-test.sh "$v"
|
||||||
|
done
|
||||||
|
```
|
||||||
|
|
||||||
|
The script gives items with every registered component via RCON `/give`, reads
|
||||||
|
them back with `inventory player list`, and asserts no parse errors in the MCC
|
||||||
|
log. Version-gated components (v1212+, v1215+, v12111+, v261) are tested only
|
||||||
|
on the versions that support them. See `SC_Integration_Test_Report.md` for a
|
||||||
|
reference run across all 6 version groups.
|
||||||
|
|
||||||
|
### 5. Full inventory regression sweep
|
||||||
|
|
||||||
Use this when touching inventory snapshots, player/container slot sync, creative inventory, item-slot serialization, packet palettes, game-mode updates, or block-use paths that open containers:
|
Use this when touching inventory snapshots, player/container slot sync, creative inventory, item-slot serialization, packet palettes, game-mode updates, or block-use paths that open containers:
|
||||||
|
|
||||||
|
|
@ -198,6 +222,8 @@ Optionally override the login name with the fourth argument to the config helper
|
||||||
- ordered creative-mode E2E regression scenario
|
- ordered creative-mode E2E regression scenario
|
||||||
- `tools/run-inventory-full-sweep.sh`
|
- `tools/run-inventory-full-sweep.sh`
|
||||||
- full inventory command/API sweep across one or more versions
|
- full inventory command/API sweep across one or more versions
|
||||||
|
- `tools/run-structured-components-test.sh`
|
||||||
|
- exercises every structured component via RCON `/give` across versions 1.20.6-26.1
|
||||||
|
|
||||||
## Evidence Discipline
|
## Evidence Discipline
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -123,3 +123,4 @@ Read `docs/guide/ai-assisted-development.md` before starting development work on
|
||||||
- Don't trust older docs over current code for supported versions or feature gates. When AGENTS.md, skills, and older docs disagree, prefer current code and current tool behavior, then update the stale source.
|
- Don't trust older docs over current code for supported versions or feature gates. When AGENTS.md, skills, and older docs disagree, prefer current code and current tool behavior, then update the stale source.
|
||||||
- Don't hardcode user-facing strings (messages, labels, help text) directly in source code; always use `Translations.*` resources so the text can be localized.
|
- Don't hardcode user-facing strings (messages, labels, help text) directly in source code; always use `Translations.*` resources so the text can be localized.
|
||||||
- Never use "—" ("em dash"), unless specifically being instructed to do so!
|
- Never use "—" ("em dash"), unless specifically being instructed to do so!
|
||||||
|
- Never generate MCC config files (`.ini`) in the repo root. When `dotnet run --project MinecraftClient -- --help` is used to generate a config template, it writes `MinecraftClient.ini` to the current directory. Always run this command from a system temp directory (e.g. `mktemp -d`) or use `prepare_offline_mcc_config.sh` which already handles output routing.
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue