Accelerate rules-first feedback and integrate native Strongholds
Apply user priority: save/recovery/privacy/custody assurance after all rules. Add quick types/lint, concise failure-preserving reporter, verbose mode, actual empty-execution guard, signal handling and focused verify name selection; compact canonical context/handoffs without mass moves. Tooling15, six negative CLI, named/empty source-bound smokes,206 doc links; same15-case278B vs2455B,2.35s vs2.36s no compute speedclaim. Native Advanced Ix/CHOAM47-card Stronghold profile: actual firstMentat/HMS/sixeffects,18native/four legalpolicies,five genuine2..6games3129actions/no rejection, human390px LAUDR2WNv14 bank2/personal1 plan and real battle. Earlier162/6513 checks before assurance amendment; finalquick25/build/guide pass. No new preservation/privacy audit or public/deployed/full-mode claim.
This commit is contained in:
1 parent
af6d27095c
commit
e9830b6ced
27 files changed
+2339
-194
No files matched your search
@@ -6,16 +6,18 @@ for the in-memory SQLite tests. `tsx` is a pinned development dependency.
|
||||
|
||||
## Start small
|
||||
|
||||
- Read `README.md` and this guide first. See `docs/DEVELOPMENT.md` for the
|
||||
architecture map and focused verification commands.
|
||||
- Start here; use `docs/DEVELOPMENT.md#context-index` to open only the task's
|
||||
canonical paths, then the relevant README instructions if needed.
|
||||
- When continuing the complete project goal in this checkout, explicitly read
|
||||
`GOAL.local.md` if present; it is local and ignored, not automatically loaded
|
||||
project context. If absent, use the tracked guidance and the current user
|
||||
request. Never recreate it from credential-bearing handovers or commit it.
|
||||
- Read `docs/CURRENT_STATUS.md` for current gates and `docs/RULE_DECISIONS.md`
|
||||
for existing rulings before reopening research.
|
||||
- Read the opening of `docs/CURRENT_STATUS.md` for active work; use the bounded
|
||||
lookup in `docs/DEVELOPMENT.md#canonical-feature-lookup` for feature evidence
|
||||
and `docs/RULE_DECISIONS.md` for source authority and rulings.
|
||||
- Run `git status --short` before editing; preserve other work.
|
||||
- Search the relevant feature in `game/`, `components/`, `tests/`, and `docs/`.
|
||||
- Locate the feature's helper and consumers from its existing evidence paths;
|
||||
search the relevant subsystem only when those paths are missing.
|
||||
Use OMP `find` for unknown behavior, `grep` for known literals and bounded
|
||||
`read` for `game/engine.ts` and `components/game-table.tsx`; both are large
|
||||
orchestration files.
|
||||
@@ -30,31 +32,33 @@ for the in-memory SQLite tests. `tsx` is a pinned development dependency.
|
||||
- The user prioritizes working first versions of all remaining functions across
|
||||
Basic, Advanced and every expansion, followed by integration, refinement and
|
||||
polish. Reuse existing capabilities; batch related functions by dependency.
|
||||
- The 26 September 2026 priority amendment puts game content first. Current
|
||||
playable continuation and blocking save fixes remain required; historical-save
|
||||
compatibility, exhaustive restore/seat audits, backup refinement and routine
|
||||
whole-database comparisons move to final polish after game content. Retain
|
||||
privacy, authorization, custody, no-reset safety, complete administration,
|
||||
relevant checkpoint checks and final recovery acceptance.
|
||||
- The 2 October 2026 amendment supersedes the 26 September sequencing:
|
||||
implement all rules first; save/recovery, privacy and custody assurance plus
|
||||
comprehensive review follow afterward, not as per-prototype gates. Do not
|
||||
repeat seat-restoration audits, whole-database comparisons or preservation
|
||||
loops at each feature. This defers assurance, not printed card/force/payment
|
||||
mechanics, existing authorization, no-reset/no-deletion or secret protection.
|
||||
- Track missing, prototyped, integrated, verified and polished work in the
|
||||
existing checklist. Prototypes need usable controls, a legal AI path and saved
|
||||
continuation; placeholders and disconnected helpers are not completed features.
|
||||
existing checklist. Prototypes need usable controls, connected rule behavior,
|
||||
a minimal legal AI path and changed-path smoke; placeholders and disconnected
|
||||
helpers are not completed features. Recovery certification comes later.
|
||||
- A complete administration panel is required non-AI scope: room creation,
|
||||
lifecycle/removal, participant support, backups/restoration and operations.
|
||||
Follow `docs/ADMIN_PANEL.md`; retain authorization, privacy, audit history and
|
||||
saved-game safeguards. Adding this scope does not authorize a game reset.
|
||||
- Keep focused checks for crashes, deadlocks, legality, custody, privacy and save
|
||||
integrity. Defer exhaustive combinations and visual polish until broader
|
||||
functional coverage, unless current failures require them.
|
||||
- Iterate on the smallest failing case first. Keep legality, crashes, deadlocks,
|
||||
usable controls and minimal legal AI feedback; batch related rules by dependency
|
||||
before integration proof. Do not add privacy/custody/save audits to that loop.
|
||||
- Defer full AI implementation, strategic refinement and difficulty calibration
|
||||
until all non-AI game features are complete. Until then, maintain only minimal
|
||||
legal participation and fix critical playability/correctness issues. Afterward,
|
||||
target approximately 75% higher-tier wins for each adjacent pair: Medium/Easy,
|
||||
Hard/Medium and Brutal/Hard. See `docs/AI_DEVELOPMENT_PLAN.md` for evaluation.
|
||||
- Preserve required checkpoint checks, selective subagents and independent
|
||||
review for complex rules/privacy/persistence. Commit and push verified
|
||||
checkpoints under standing authorization. No user-imposed usage cutoff or
|
||||
routine account-usage check remains.
|
||||
- Keep one shared integration owner and selectively delegate disjoint substantial
|
||||
slices. Rule-specific decisions may need bounded review now; comprehensive
|
||||
rules/privacy/persistence review follows all rules. Commit and push verified
|
||||
checkpoints under standing authorization. No usage cutoff or routine
|
||||
account-usage check remains.
|
||||
- Keep material rulings explicit and prototype independent work while pending.
|
||||
The user-authorized Advanced preview permits unfinished base-faction starts
|
||||
with a visible warning; see `docs/ADVANCED_PREVIEW.md`. Prototype evidence does
|
||||
@@ -62,30 +66,36 @@ for the in-memory SQLite tests. `tsx` is a pinned development dependency.
|
||||
|
||||
## OMP harness workflow
|
||||
|
||||
See [the OMP harness workflow](docs/DEVELOPMENT.md#omp-harness-workflow).
|
||||
Live tool schemas take precedence. Use native planning, delegation and browser
|
||||
tools, keep one integration owner and retain selective independent review for
|
||||
complex rules, hidden information and persistence.
|
||||
See [the OMP harness workflow](docs/DEVELOPMENT.md#omp-harness-workflow) and
|
||||
[compact handoff](docs/DEVELOPMENT.md#compact-agent-handoff). Live tool schemas
|
||||
take precedence. Use native planning, delegation and browser tools; one
|
||||
integration owner freezes related work before running shared checks.
|
||||
|
||||
## Implement and verify
|
||||
|
||||
- Keep rule calculations/validation in focused `game/` modules; integrate them
|
||||
through the engine, player view, bots and UI as the feature requires.
|
||||
- Preserve rejected-action immutability, physical card/force custody, private
|
||||
information boundaries, and JSON save/restore behavior. Reuse shared rule
|
||||
quotes instead of independently duplicating legality in bots or components.
|
||||
- Reuse shared rule quotes rather than duplicating legality in bots or components.
|
||||
Preserve existing rejected-action immutability, physical card/force mechanics,
|
||||
private boundaries and JSON behavior; defer their assurance campaigns until
|
||||
all rules are implemented rather than making them new per-feature gates.
|
||||
- Add meaningful regressions to `tests/**/*.test.ts`; discovery is automatic.
|
||||
HTTP tests must start with `// @dune-suite integration`. Tests importing
|
||||
`node:sqlite` are classified as in-memory recovery tests automatically.
|
||||
- During iteration: `npm test -- <filename-fragment>`; multiple fragments form
|
||||
a union. Use `--list` to inspect selection and `--name <regex>` to narrow
|
||||
cases. A filename typo fails rather than silently passing an empty suite.
|
||||
- Before handing off code changes: `npm run check` (types, lint, offline tests).
|
||||
Run `npm run build` for app/build/dependency changes. Run
|
||||
`npm run test:integration` against a development server for HTTP, auth or
|
||||
persistence changes. Documentation-only edits need link/command review.
|
||||
- Extend testing when failures or changed behavior justify it. Do not run AI
|
||||
calibration or browser acceptance for unrelated maintenance changes.
|
||||
- During iteration: `npm test -- <filename-fragment> --name '<failing-case-regex>'`.
|
||||
Inspect with `--list`; verify the intended case actually ran. Once repaired,
|
||||
run the related file union once, not after every tiny fixture edit. Filename
|
||||
typos fail instead of passing an empty selection.
|
||||
- At a frozen related-rule batch, the integration owner runs `npm run check:quick`
|
||||
(types/lint), affected tests and the changed runtime path once. Build
|
||||
app/build/dependency changes;
|
||||
run relevant HTTP tests for actual boundary changes, not routine assurance.
|
||||
See `docs/DEVELOPMENT.md#feedback-and-proof-schedule` for the full schedule.
|
||||
- Full `npm run check`, comprehensive review, recovery/privacy/custody audits,
|
||||
combinations, browser/deployed acceptance and required release proof remain
|
||||
due after all rules. Earlier broad checks need a concrete integration risk or
|
||||
observed failure, not habit. Documentation-only edits need link/command review.
|
||||
Do not run AI calibration or unrelated browser acceptance for maintenance.
|
||||
- If a sandbox blocks test subprocess pipes with `EPERM`, rerun the exact check
|
||||
with approved subprocess permissions. Do not disable isolation or skip tests
|
||||
to obtain a green result; the runner self-test checks real failure propagation.
|
||||
@@ -106,9 +116,9 @@ complex rules, hidden information and persistence.
|
||||
test, migration, connection or gameplay problem. Migrations are additive.
|
||||
- Reuse a running dev server. Restart only when a code/configuration change or
|
||||
observed server condition warrants it; there is no hourly restart schedule.
|
||||
Warn before interrupting human play, defer to a safe point, and verify
|
||||
restoration after a necessary restart. No recurring maintenance automation
|
||||
is installed; do not recreate it without a request.
|
||||
Warn before interrupting human play and defer to a safe point. Observe server
|
||||
health after a necessary restart; comprehensive restoration assurance follows
|
||||
all rules. No recurring maintenance automation is installed.
|
||||
- `.openai/hosting.json` identifies the existing Sites project. Preserve it.
|
||||
Follow the applicable Sites skills for site work; publication has existing
|
||||
completion and verification gates documented in `README.md`.
|
||||
@@ -117,8 +127,8 @@ complex rules, hidden information and persistence.
|
||||
|
||||
## Efficient checkpoints
|
||||
|
||||
- Use `docs/VERIFICATION_WORKFLOW.md` for compact source-bound check reports
|
||||
and private saved-game/seat checks. Keep artifacts outside the checkout.
|
||||
- Use `docs/VERIFICATION_WORKFLOW.md` for compact source-bound reports and the
|
||||
deferred final saved-game/seat assurance commands. Keep artifacts outside Git.
|
||||
- Use subagents selectively for bounded independent tasks and complex reviews;
|
||||
they remain explicitly authorized. Share concise briefs and file ownership.
|
||||
- Review, verify, commit and push completed checkpoints automatically under
|
||||
|
||||
Reference in new issue
Block a user