{"schema":"subjectnest-year2maths1314-map-quantity-desk-written-contract-v1","name":"Map and Quantity Desk","status":"WRITTEN proposal only; helper, Source, vectors and audio are not generated here.","practical_job":"Record a useful paper-scene route or whole-quantity guide; see a manually chosen model without obtaining an automatic route, sum, ordering answer or grade.","fields":[{"id":"job","label":"My useful job","initial":"","Unicode_codepoint_limit":1200,"native_UTF16_maxlength":2400},{"id":"source_known","label":"Known source words","initial":"","Unicode_codepoint_limit":1200,"native_UTF16_maxlength":2400},{"id":"goal","label":"What my reader needs","initial":"","Unicode_codepoint_limit":1200,"native_UTF16_maxlength":2400},{"id":"model","label":"My model","initial":"","Unicode_codepoint_limit":1200,"native_UTF16_maxlength":2400},{"id":"method","label":"My steps","initial":"","Unicode_codepoint_limit":1200,"native_UTF16_maxlength":2400},{"id":"result","label":"My result","initial":"","Unicode_codepoint_limit":1200,"native_UTF16_maxlength":2400},{"id":"check","label":"My check","initial":"","Unicode_codepoint_limit":1200,"native_UTF16_maxlength":2400}],"views":{"source":["job","source_known","goal"],"plan":["model","method"],"check":["result","check"],"all":["job","source_known","goal","model","method","result","check"]},"initial":"All seven text fields genuinely empty. No source chosen; no model mode/source answers selected; all manual markers/tokens in their trays; both version slots empty. Static paper/source disclosures work without script.","source_help":"Twenty complete ordinary neutral source disclosures, initially closed, same page, with full known source/legend/quantity words and no worked answers or rubric. Native summary/details remains useful without script. Close returns focus to the prior currently visible field and exact range. Named helper Close must only close that disclosure.","map_model":{"markers":["map-marker-01","map-marker-02","map-marker-03","map-marker-04","map-marker-05","map-marker-06","map-marker-07","map-marker-08","map-marker-09","map-marker-10","map-marker-11","map-marker-12","map-marker-13","map-marker-14","map-marker-15","map-marker-16","map-marker-17","map-marker-18","map-marker-19","map-marker-20"],"places":"tray or one of the actual chosen source grid cells, maximum 5 columnsA: E and 5 rows 1:5. No marker is moved from the tray automatically.","drawing":"Show every manually active named marker at its chosen labelled cell and in a complete accessible location list. Source rows/columns/open/closed labels are known source information. Never draw a guessed route, computed endpoint, blocked-cell success or real-world distance.","manual_move":"Choose one marker and one actual source cell/tray, then Move. Same-cell repeated positions are allowed and keep their separate marker identities; identity numbers indicate a manual record order only. Marker count is not a move count. Refuse out-of-source cells without changing words/model/ranges/slots.","source_change":"A new source sets known grid dimensions/legend only. It does not place markers at a start/target or copy any route/model answer."},"quantity_model":{"hundred_tokens":["hundred-01","hundred-02","hundred-03","hundred-04","hundred-05","hundred-06","hundred-07","hundred-08","hundred-09","hundred-10"],"ten_tokens":["ten-01","ten-02","ten-03","ten-04","ten-05","ten-06","ten-07","ten-08","ten-09","ten-10","ten-11","ten-12","ten-13","ten-14","ten-15","ten-16","ten-17","ten-18","ten-19","ten-20"],"one_tokens":["one-01","one-02","one-03","one-04","one-05","one-06","one-07","one-08","one-09","one-10","one-11","one-12","one-13","one-14","one-15","one-16","one-17","one-18","one-19","one-20"],"places":["tray","my grouping"],"fixed_values":"Each named hundred token represents 100 units, ten token 10 units, one token 1 unit. The legend teaches equal value, not equal physical area or actual bundled stock. No computed total or accepted target appears.","drawing":"Only the learner’s deliberately chosen active tokens appear in My grouping, separated by their fixed 100/10/1 labels with complete named accessible records. Source numerals may be read in the whole source disclosure, but do not autoactivate matching tokens.","manual_move":"Choose one of 50 named tokens and tray/My grouping; Move changes exactly that token. Ten hundreds can show the stated 1000 boundary;20 tens permit selected nonstandard regroupings. Models beyond a target are not automatically corrected or graded.","no_automatic_exchange":"A child must move all chosen tokens for a regrouping; no exchange button silently computes an equivalent model. Paper bundles/cards have the same explicit fixed-value legend."},"complete_record":"Source identity and its entire known words/parameters, all seven literal strings, view/visible field, actual UTF16 ranges/direction for every field, chosen map/quantity model mode, all 20 marker locations and 50 token locations. Selected marker/token/target control and any active source-help state are included for deliberate restoration. No implementation keys in child comparison.","mode_choice":"Changing model mode with any current text or active manual work asks explicit Keep/Cancel versus Change. Cancellation/ Escape retain allwords/ranges/source/locations/versions and return the initiating control. Confirmation changes only the intended mode; both model records remain attached and visible through labelled complete comparison. A source replacement separately confirms clearing current work/model while retaining both kept versions.","two_versions":"Keep Version 1/2 only on a deliberate press. Empty slot stores the whole record. Occupied slot asks before replacing; Cancel/Escape retain exact prior versions/current/ranges. Compare requires two slots and displays their chosen labels, full source/whole 7 strings/all 20+50 states and fixed unit legends in understandable child wording; source/word layout does not expose rawJSON. Opens at its title/top on every opening with accessible heading focus. Close/Escape return Compare. Restore asks before replacing nonempty current work; full source/view/model/words/ranges restore, focus goes to the saved actual visible field after DOM range and engine-range synchronization.","clear":"Clear my current work asks confirmation. Cancel/Escape retain exact current/slots/ranges and initiating focus. Confirm clears current sevenfields/currentmodel only, retains source identity and both kept versions, and returns the Clearcontrol. Any separate slot-clear or whole-reset must have its own explicit consent. No version is silently overwritten.","limits":"In successful mode count 1200Unicode codepoints per field (combining marks count separately). A complete edit over 1200 is rejected, restoring the prior complete literal string and exact UTF16 selection/direction; never truncate. Native maxlength 2400UTF16 is a different bound. Literal Arabic/emoji/newlines/markup render as text, not executedHTML. No eval, network, AI, autograding, storage, clipboard, exportedstudentdata or autoplay.","fallback":"Without script, or after early or late initialization failure, all seven native fields and complete native source disclosures/paper remain available. Script actions stay hidden/disabled. Installed input, selection, range, count, status and engine operations remain inert unless initialization fully completes. Keep complete within-native 2400UTF16 words and selections even when they exceed 1200 codepoints. All guide/counter/catch wording must qualify the unavailable helper limit. Test all seven Desk andall eight×four own fields in the six required ASCII/Unicode families, plus successful complete-edit rejection and prior-range retention.","held_own":"Every held own page has its four matching empty fields and an initially closed native same-page full neutral source. Successful 1200-codepoint rejection, native 2400UTF16 and failure-mode inertness match those fields. Staff criteria, worked possibilities and next-teaching models stay out of labels, help, HTML/SVG descriptions and own prompts. Exact supplied helper claims are neutral input, not preset responses.","staff_handoff":"Each ofeightstaffcases links its exact neutral source, separate own 4 response page, matched V13–20SVG, matched whole text/HTMLalternative and every four complete NEXT pages. Ordinary Desk paper is a separate clearly named route. Learner own/source routes do not link staff answers.","paper_equivalence":"A whole known source attachment plus 7 labelled empty fields,20 manually labelled mapmarkers andfixed 100/10/1 cards, and two whole chosen-version attachments with allwords/source/model labels. All marking/moving/keeping/comparing/restoring/clearing is manual, one job at a time. Speech/sign/AAC/exactscribe/tactilelabels equivalent; no digital participation necessary.","keyboard":"Labels/native focus order, visible focus, source summaryEnter/Space open/close, textarrows/selection untouched. Script-only pending confirmations contain only explicitly labelled choices; Tab/ShiftTab cycle while open, Escape cancels and returns invokingcontrol. Comparisondialog has a real title, starts top, full readable two records, Close/Escape returnCompare; never globalKeyboardtrap.","verification_before_sourceacceptance":"Check actual literal reconstruction/current and solefresh Source, rights, paper and installed code. Exercise all 70 named manual identities, mode/source/view/version/selection/consent/failure callbacks. Inspect every whole rendered plane, full alternative and genuine blank. Different whole Source/art critique and Root actual native use remain separate mandatory gates; syntax/fixtures do not establish Browser success.","grant":"Original proposed implementation specification CC BY4.0; future original source codeApache 2 with fullnotice."}
