WAP LabsProject atlas

docs/knowledge-graph/vault-wml-3/work-items/wml-301.md

Deck/card context, history, newcontext, inter-card process order, and card/table boundary closure

Generated from canonical repository manifests. Do not edit this note directly.

Relationships

  • contains ← [[sprints/WML-3|WML-3]]
  • context-for ← [[clauses/WAE-CL-WML-LANGUAGE-DELEGATE|WAE-CL-WML-LANGUAGE-DELEGATE]]
  • context-for ← [[clauses/WAE-CL-WML-USER-AGENT-COMPOSITION|WAE-CL-WML-USER-AGENT-COMPOSITION]]
  • context-for ← [[clauses/WAE-CL-WMLSCRIPT-LANGUAGE-DELEGATE|WAE-CL-WMLSCRIPT-LANGUAGE-DELEGATE]]
  • context-for ← [[clauses/WML-CL-CARD-COLLECTION|WML-CL-CARD-COLLECTION]]
  • context-for ← [[clauses/WML-CL-CARD-CONTENT-ORDER|WML-CL-CARD-CONTENT-ORDER]]
  • context-for ← [[clauses/WML-CL-CARD-CONTEXT-ATTRIBUTE|WML-CL-CARD-CONTEXT-ATTRIBUTE]]
  • context-for ← [[clauses/WML-CL-CARD-STRUCTURE|WML-CL-CARD-STRUCTURE]]
  • covers-family → [[source-families/wae|wae]]
  • covers-family → [[source-families/wml|wml]]
  • owned-by → [[owner-layers/browser|browser]]
  • owned-by → [[owner-layers/engine-wasm|engine-wasm]]
  • owned-by → [[owner-layers/qa|qa]]
  • planned-by ← [[clauses/WML-CL-CARD-ID-FRAGMENT|WML-CL-CARD-ID-FRAGMENT]]
  • planned-by ← [[clauses/WML-CL-CARD-TABLE-BOUNDARIES|WML-CL-CARD-TABLE-BOUNDARIES]]
  • planned-by ← [[clauses/WML-CL-CONTEXT-SINGLE-SCOPE|WML-CL-CONTEXT-SINGLE-SCOPE]]
  • planned-by ← [[clauses/WML-CL-CONTEXT-STATE-MEMBERS|WML-CL-CONTEXT-STATE-MEMBERS]]
  • planned-by ← [[clauses/WML-CL-EXTERNAL-NAVIGATION-NEW-CONTEXT|WML-CL-EXTERNAL-NAVIGATION-NEW-CONTEXT]]
  • planned-by ← [[clauses/WML-CL-EXTERNAL-NAVIGATION-OLD-CONTEXT|WML-CL-EXTERNAL-NAVIGATION-OLD-CONTEXT]]
  • planned-by ← [[clauses/WML-CL-GO-FRAGMENT-FALLBACK|WML-CL-GO-FRAGMENT-FALLBACK]]
  • planned-by ← [[clauses/WML-CL-GO-HISTORY-PUSH|WML-CL-GO-HISTORY-PUSH]]
  • planned-by ← [[clauses/WML-CL-HISTORY-DUPLICATE-PUSH|WML-CL-HISTORY-DUPLICATE-PUSH]]
  • planned-by ← [[clauses/WML-CL-HISTORY-ENTRY-FIELDS|WML-CL-HISTORY-ENTRY-FIELDS]]
  • planned-by ← [[clauses/WML-CL-HISTORY-EXCLUDES-CONTENT|WML-CL-HISTORY-EXCLUDES-CONTENT]]
  • planned-by ← [[clauses/WML-CL-HISTORY-STACK-MODEL|WML-CL-HISTORY-STACK-MODEL]]
  • planned-by ← [[clauses/WML-CL-NAVIGATION-REFERENCE-MODEL|WML-CL-NAVIGATION-REFERENCE-MODEL]]
  • planned-by ← [[scr-rows/WML-C-25|WML-C-25]]
  • relates-to → [[legacy-tickets/A5-01|A5-01]]
  • relates-to → [[legacy-tickets/R0-02|R0-02]]
  • relates-to → [[legacy-tickets/R0-03|R0-03]]

Data

{
  "status": "in-progress",
  "ownerLayers": [
    "engine-wasm",
    "browser",
    "qa"
  ],
  "sourceFamilies": [
    "wml",
    "wae"
  ],
  "notes": [
    "The source-audited WML-301 graph boundary now distinguishes 13 direct fixture-backed WML clauses from seven aggregate regression/delegate clauses. The direct set closes history stack order, duplicate access, request-identity fields without card content, browser-context scope/state, independent-navigation context replacement, card-fragment selection/fallback, destination history push/process ordering, and source-required card/table boundaries.",
    "WML-301 consumes WML-302 variable resolution, WML-303 action/BACK ordering, and WML-305 timer ordering as regression evidence without taking over those completed slices. WML-202 newcontext, WML-204 control/vdata commit, and WML-205 atomic failure behavior remain preserved.",
    "WML-304 exclusively owns GET/POST request construction and postfield serialization. Replayable POST history remains an explicit WML-CL-HISTORY-POST-REPLAY baton for Request A2 after A1. WML-301 limits HISTORY-ENTRY-FIELDS evidence to the request identity already handed across the engine/browser boundary. The user agent elects the permitted old-context termination behavior for independent navigation and exposes that choice through a monotonic context epoch.",
    "CARD-TABLE-BOUNDARIES is directly implemented with parser, native, WASM, invalid-structure, cross-card navigation, and executable-story evidence. The four previously implemented card clauses and three broad WAE delegation clauses remain separately labeled aggregate context; the WAE delegates stay not-assessed under WAE-601, so the aggregate WML-301 work item remains in progress without reopening its completed direct history or card/table evidence."
  ],
  "specReferences": [
    "WAP-191_104-WML sections 9.2, 10.1, 10.4, 11.5.2, 12.5, and 12.5.1"
  ],
  "existingTickets": [
    "R0-02",
    "R0-03",
    "A5-01"
  ],
  "outputs": [
    "Deck/card context, history, newcontext, inter-card process order, and card/table boundary closure"
  ],
  "acceptance": [
    "Forward, backward, reload, failure rollback, context reset, and source-required table boundaries match strict ordering and layout across native and WASM adapters."
  ],
  "evidence": [
    "cargo test --manifest-path engine-wasm/engine/Cargo.toml",
    "cargo test --manifest-path browser/src-tauri/Cargo.toml",
    "pnpm --dir browser/frontend test",
    "wasm-pack test --node engine-wasm/engine",
    "pnpm test:story WML-301",
    "node scripts/wap-context-pack.mjs WML-301",
    "pnpm wap-compliance:check",
    "pnpm wap-graph:check"
  ],
  "source": "docs/waves/wap-1.2.1-compliance-program.json"
}