@plasius/learning 0.2.16 → 0.2.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +15 -1
- package/dist/index.cjs +286 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +5 -4
- package/dist/index.d.ts +5 -4
- package/dist/index.js +285 -0
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.cts
CHANGED
|
@@ -297,8 +297,8 @@ interface MissionFunctionReferenceV1 {
|
|
|
297
297
|
example: string;
|
|
298
298
|
}
|
|
299
299
|
/**
|
|
300
|
-
* One learner-safe change proposal.
|
|
301
|
-
* authored artifact and always
|
|
300
|
+
* One learner-safe change proposal. A mission may expose a diff for a single
|
|
301
|
+
* authored artifact and always leaves the final accept/reject decision to the
|
|
302
302
|
* learner. Live AI is an optional adapter concern, never a completion input.
|
|
303
303
|
*/
|
|
304
304
|
interface MissionBoundedSuggestionV1 {
|
|
@@ -512,7 +512,8 @@ declare const VIBE_GAME_REMIX_LAB_MISSION_ONE_AUTHORING_V1: MissionAuthoringBund
|
|
|
512
512
|
declare const VIBE_BUG_DETECTIVE_MISSION_ONE_AUTHORING_V1: MissionAuthoringBundleV1;
|
|
513
513
|
/** Goal-led Vibe prototype mission; all idea choices and changes are bounded. */
|
|
514
514
|
declare const VIBE_IDEA_STUDIO_MISSION_ONE_AUTHORING_V1: MissionAuthoringBundleV1;
|
|
515
|
-
/**
|
|
515
|
+
/** Accessible fictional planner mission with a private bounded persistence simulator. */
|
|
516
|
+
declare const ADVENTURE_MISSION_PLANNER_MISSION_ONE_AUTHORING_V1: MissionAuthoringBundleV1;
|
|
516
517
|
declare const ROAD_HOPPER_RALLY_MISSION_ONE_AUTHORING_V1: MissionAuthoringBundleV1;
|
|
517
518
|
|
|
518
519
|
/** Return every catalog issue without throwing, suitable for authoring tools. */
|
|
@@ -520,4 +521,4 @@ declare function validateLearningPath(path: LearningPathVersionV1): LearningVali
|
|
|
520
521
|
/** Fail fast when a path is not safe to publish or consume. */
|
|
521
522
|
declare function assertValidLearningPath(path: LearningPathVersionV1): void;
|
|
522
523
|
|
|
523
|
-
export { type AssessmentCheckResultV1, type AssessmentCriterionV1, type AssessmentDimensionV1, type AssessmentResultV1, type AssessmentRubricV1, type AttemptEvidenceV1, BEACON_BOT_MISSION_ONE_AUTHORING_V1, type BadgeDefinitionV1, type CommercialStateV1, type CourseMaterialAudienceV1, type CourseMaterialKindV1, type CourseMaterialV1, type CourseMaterialsManifestV1, DANCE_ROVER_MISSION_ONE_AUTHORING_V1, type FacilitatorMissionAuthoringV1, type GuardianAiConsentV1, type HardwareItemV1, type HardwareModeV1, type HardwareRequirementManifestV1, type HardwareVerificationStatusV1, JUNIOR_CODER_MISSION_STAGE_ORDER_V1, JUNIOR_CODER_MODULE_PRICE_V1_1, JUNIOR_CODER_ROBOT_RESCUE_PATH_CURRENT, JUNIOR_CODER_ROBOT_RESCUE_PATH_V1, JUNIOR_CODER_ROBOT_RESCUE_PATH_V1_1, type LearnerMissionAuthoringV1, type LearningGoalV1, type LearningModuleVersionV1, type LearningPathVersionV1, type LearningValidationIssueV1, METEOR_SHIELD_MISSION_ONE_AUTHORING_V1, MISSION_AUTHORING_CONTRACT_VERSION_V1, type MissionAccessibilityAlternativeV1, type MissionArtifactKindV1, type MissionArtifactReferenceV1, type MissionAuthoringBundleV1, type MissionAuthoringGoalV1, type MissionAuthoringValidationIssueV1, type MissionBoundedSuggestionV1, type MissionEvidenceKindV1, type MissionEvidenceRequirementV1, type MissionEvidenceRetentionV1, type MissionFunctionParameterV1, type MissionFunctionReferenceV1, type MissionHardwareAcquisitionScopeV1, type MissionHardwareComponentDisclosureV1, type MissionHardwareDisclosureV1, type MissionInteractionModeV1, type MissionInteractionRequirementV1, type MissionPhysicalSafeguardsV1, type MissionReadinessCheckV1, type MissionRewardBindingV1, type MissionSideAdventureV1, type MissionStageCardV1, type MissionStageKindV1, type MissionV1, type ModuleAgentDefinitionV1, type ModuleAgentFeedbackV1, type ModuleAgentRoleV1, type ModuleCategoryV1, type ModuleEntitlementV1, type ModulePricingV1, type ModuleReferencePriceV1, OBSTACLE_EXPLORER_MISSION_ONE_AUTHORING_V1, PADDLE_PULSE_MISSION_ONE_AUTHORING_V1, PIXEL_TRAIL_CHALLENGE_MISSION_ONE_AUTHORING_V1, type PublishedStaticProjectSnapshotV1, RAINBOW_RESCUE_ROVER_MISSION_ONE_AUTHORING_V1, RESCUE_CREW_COMMANDER_MISSION_ONE_AUTHORING_V1, ROAD_HOPPER_RALLY_MISSION_ONE_AUTHORING_V1, ROBOT_MAZE_DASH_MISSION_ONE_AUTHORING_V1, SERVO_CREATURE_MISSION_ONE_AUTHORING_V1, SKYWING_SPRINT_MISSION_ONE_AUTHORING_V1, STAR_DEFENDER_SQUADRON_MISSION_ONE_AUTHORING_V1, type ScoreBandV1, VIBE_BUG_DETECTIVE_MISSION_ONE_AUTHORING_V1, VIBE_GAME_REMIX_LAB_MISSION_ONE_AUTHORING_V1, VIBE_IDEA_STUDIO_MISSION_ONE_AUTHORING_V1, assertValidLearningPath, assertValidMissionAuthoringBundle, calculateAssessment, validateAssessmentRubric, validateLearningPath, validateMissionAuthoringBundle };
|
|
524
|
+
export { ADVENTURE_MISSION_PLANNER_MISSION_ONE_AUTHORING_V1, type AssessmentCheckResultV1, type AssessmentCriterionV1, type AssessmentDimensionV1, type AssessmentResultV1, type AssessmentRubricV1, type AttemptEvidenceV1, BEACON_BOT_MISSION_ONE_AUTHORING_V1, type BadgeDefinitionV1, type CommercialStateV1, type CourseMaterialAudienceV1, type CourseMaterialKindV1, type CourseMaterialV1, type CourseMaterialsManifestV1, DANCE_ROVER_MISSION_ONE_AUTHORING_V1, type FacilitatorMissionAuthoringV1, type GuardianAiConsentV1, type HardwareItemV1, type HardwareModeV1, type HardwareRequirementManifestV1, type HardwareVerificationStatusV1, JUNIOR_CODER_MISSION_STAGE_ORDER_V1, JUNIOR_CODER_MODULE_PRICE_V1_1, JUNIOR_CODER_ROBOT_RESCUE_PATH_CURRENT, JUNIOR_CODER_ROBOT_RESCUE_PATH_V1, JUNIOR_CODER_ROBOT_RESCUE_PATH_V1_1, type LearnerMissionAuthoringV1, type LearningGoalV1, type LearningModuleVersionV1, type LearningPathVersionV1, type LearningValidationIssueV1, METEOR_SHIELD_MISSION_ONE_AUTHORING_V1, MISSION_AUTHORING_CONTRACT_VERSION_V1, type MissionAccessibilityAlternativeV1, type MissionArtifactKindV1, type MissionArtifactReferenceV1, type MissionAuthoringBundleV1, type MissionAuthoringGoalV1, type MissionAuthoringValidationIssueV1, type MissionBoundedSuggestionV1, type MissionEvidenceKindV1, type MissionEvidenceRequirementV1, type MissionEvidenceRetentionV1, type MissionFunctionParameterV1, type MissionFunctionReferenceV1, type MissionHardwareAcquisitionScopeV1, type MissionHardwareComponentDisclosureV1, type MissionHardwareDisclosureV1, type MissionInteractionModeV1, type MissionInteractionRequirementV1, type MissionPhysicalSafeguardsV1, type MissionReadinessCheckV1, type MissionRewardBindingV1, type MissionSideAdventureV1, type MissionStageCardV1, type MissionStageKindV1, type MissionV1, type ModuleAgentDefinitionV1, type ModuleAgentFeedbackV1, type ModuleAgentRoleV1, type ModuleCategoryV1, type ModuleEntitlementV1, type ModulePricingV1, type ModuleReferencePriceV1, OBSTACLE_EXPLORER_MISSION_ONE_AUTHORING_V1, PADDLE_PULSE_MISSION_ONE_AUTHORING_V1, PIXEL_TRAIL_CHALLENGE_MISSION_ONE_AUTHORING_V1, type PublishedStaticProjectSnapshotV1, RAINBOW_RESCUE_ROVER_MISSION_ONE_AUTHORING_V1, RESCUE_CREW_COMMANDER_MISSION_ONE_AUTHORING_V1, ROAD_HOPPER_RALLY_MISSION_ONE_AUTHORING_V1, ROBOT_MAZE_DASH_MISSION_ONE_AUTHORING_V1, SERVO_CREATURE_MISSION_ONE_AUTHORING_V1, SKYWING_SPRINT_MISSION_ONE_AUTHORING_V1, STAR_DEFENDER_SQUADRON_MISSION_ONE_AUTHORING_V1, type ScoreBandV1, VIBE_BUG_DETECTIVE_MISSION_ONE_AUTHORING_V1, VIBE_GAME_REMIX_LAB_MISSION_ONE_AUTHORING_V1, VIBE_IDEA_STUDIO_MISSION_ONE_AUTHORING_V1, assertValidLearningPath, assertValidMissionAuthoringBundle, calculateAssessment, validateAssessmentRubric, validateLearningPath, validateMissionAuthoringBundle };
|
package/dist/index.d.ts
CHANGED
|
@@ -297,8 +297,8 @@ interface MissionFunctionReferenceV1 {
|
|
|
297
297
|
example: string;
|
|
298
298
|
}
|
|
299
299
|
/**
|
|
300
|
-
* One learner-safe change proposal.
|
|
301
|
-
* authored artifact and always
|
|
300
|
+
* One learner-safe change proposal. A mission may expose a diff for a single
|
|
301
|
+
* authored artifact and always leaves the final accept/reject decision to the
|
|
302
302
|
* learner. Live AI is an optional adapter concern, never a completion input.
|
|
303
303
|
*/
|
|
304
304
|
interface MissionBoundedSuggestionV1 {
|
|
@@ -512,7 +512,8 @@ declare const VIBE_GAME_REMIX_LAB_MISSION_ONE_AUTHORING_V1: MissionAuthoringBund
|
|
|
512
512
|
declare const VIBE_BUG_DETECTIVE_MISSION_ONE_AUTHORING_V1: MissionAuthoringBundleV1;
|
|
513
513
|
/** Goal-led Vibe prototype mission; all idea choices and changes are bounded. */
|
|
514
514
|
declare const VIBE_IDEA_STUDIO_MISSION_ONE_AUTHORING_V1: MissionAuthoringBundleV1;
|
|
515
|
-
/**
|
|
515
|
+
/** Accessible fictional planner mission with a private bounded persistence simulator. */
|
|
516
|
+
declare const ADVENTURE_MISSION_PLANNER_MISSION_ONE_AUTHORING_V1: MissionAuthoringBundleV1;
|
|
516
517
|
declare const ROAD_HOPPER_RALLY_MISSION_ONE_AUTHORING_V1: MissionAuthoringBundleV1;
|
|
517
518
|
|
|
518
519
|
/** Return every catalog issue without throwing, suitable for authoring tools. */
|
|
@@ -520,4 +521,4 @@ declare function validateLearningPath(path: LearningPathVersionV1): LearningVali
|
|
|
520
521
|
/** Fail fast when a path is not safe to publish or consume. */
|
|
521
522
|
declare function assertValidLearningPath(path: LearningPathVersionV1): void;
|
|
522
523
|
|
|
523
|
-
export { type AssessmentCheckResultV1, type AssessmentCriterionV1, type AssessmentDimensionV1, type AssessmentResultV1, type AssessmentRubricV1, type AttemptEvidenceV1, BEACON_BOT_MISSION_ONE_AUTHORING_V1, type BadgeDefinitionV1, type CommercialStateV1, type CourseMaterialAudienceV1, type CourseMaterialKindV1, type CourseMaterialV1, type CourseMaterialsManifestV1, DANCE_ROVER_MISSION_ONE_AUTHORING_V1, type FacilitatorMissionAuthoringV1, type GuardianAiConsentV1, type HardwareItemV1, type HardwareModeV1, type HardwareRequirementManifestV1, type HardwareVerificationStatusV1, JUNIOR_CODER_MISSION_STAGE_ORDER_V1, JUNIOR_CODER_MODULE_PRICE_V1_1, JUNIOR_CODER_ROBOT_RESCUE_PATH_CURRENT, JUNIOR_CODER_ROBOT_RESCUE_PATH_V1, JUNIOR_CODER_ROBOT_RESCUE_PATH_V1_1, type LearnerMissionAuthoringV1, type LearningGoalV1, type LearningModuleVersionV1, type LearningPathVersionV1, type LearningValidationIssueV1, METEOR_SHIELD_MISSION_ONE_AUTHORING_V1, MISSION_AUTHORING_CONTRACT_VERSION_V1, type MissionAccessibilityAlternativeV1, type MissionArtifactKindV1, type MissionArtifactReferenceV1, type MissionAuthoringBundleV1, type MissionAuthoringGoalV1, type MissionAuthoringValidationIssueV1, type MissionBoundedSuggestionV1, type MissionEvidenceKindV1, type MissionEvidenceRequirementV1, type MissionEvidenceRetentionV1, type MissionFunctionParameterV1, type MissionFunctionReferenceV1, type MissionHardwareAcquisitionScopeV1, type MissionHardwareComponentDisclosureV1, type MissionHardwareDisclosureV1, type MissionInteractionModeV1, type MissionInteractionRequirementV1, type MissionPhysicalSafeguardsV1, type MissionReadinessCheckV1, type MissionRewardBindingV1, type MissionSideAdventureV1, type MissionStageCardV1, type MissionStageKindV1, type MissionV1, type ModuleAgentDefinitionV1, type ModuleAgentFeedbackV1, type ModuleAgentRoleV1, type ModuleCategoryV1, type ModuleEntitlementV1, type ModulePricingV1, type ModuleReferencePriceV1, OBSTACLE_EXPLORER_MISSION_ONE_AUTHORING_V1, PADDLE_PULSE_MISSION_ONE_AUTHORING_V1, PIXEL_TRAIL_CHALLENGE_MISSION_ONE_AUTHORING_V1, type PublishedStaticProjectSnapshotV1, RAINBOW_RESCUE_ROVER_MISSION_ONE_AUTHORING_V1, RESCUE_CREW_COMMANDER_MISSION_ONE_AUTHORING_V1, ROAD_HOPPER_RALLY_MISSION_ONE_AUTHORING_V1, ROBOT_MAZE_DASH_MISSION_ONE_AUTHORING_V1, SERVO_CREATURE_MISSION_ONE_AUTHORING_V1, SKYWING_SPRINT_MISSION_ONE_AUTHORING_V1, STAR_DEFENDER_SQUADRON_MISSION_ONE_AUTHORING_V1, type ScoreBandV1, VIBE_BUG_DETECTIVE_MISSION_ONE_AUTHORING_V1, VIBE_GAME_REMIX_LAB_MISSION_ONE_AUTHORING_V1, VIBE_IDEA_STUDIO_MISSION_ONE_AUTHORING_V1, assertValidLearningPath, assertValidMissionAuthoringBundle, calculateAssessment, validateAssessmentRubric, validateLearningPath, validateMissionAuthoringBundle };
|
|
524
|
+
export { ADVENTURE_MISSION_PLANNER_MISSION_ONE_AUTHORING_V1, type AssessmentCheckResultV1, type AssessmentCriterionV1, type AssessmentDimensionV1, type AssessmentResultV1, type AssessmentRubricV1, type AttemptEvidenceV1, BEACON_BOT_MISSION_ONE_AUTHORING_V1, type BadgeDefinitionV1, type CommercialStateV1, type CourseMaterialAudienceV1, type CourseMaterialKindV1, type CourseMaterialV1, type CourseMaterialsManifestV1, DANCE_ROVER_MISSION_ONE_AUTHORING_V1, type FacilitatorMissionAuthoringV1, type GuardianAiConsentV1, type HardwareItemV1, type HardwareModeV1, type HardwareRequirementManifestV1, type HardwareVerificationStatusV1, JUNIOR_CODER_MISSION_STAGE_ORDER_V1, JUNIOR_CODER_MODULE_PRICE_V1_1, JUNIOR_CODER_ROBOT_RESCUE_PATH_CURRENT, JUNIOR_CODER_ROBOT_RESCUE_PATH_V1, JUNIOR_CODER_ROBOT_RESCUE_PATH_V1_1, type LearnerMissionAuthoringV1, type LearningGoalV1, type LearningModuleVersionV1, type LearningPathVersionV1, type LearningValidationIssueV1, METEOR_SHIELD_MISSION_ONE_AUTHORING_V1, MISSION_AUTHORING_CONTRACT_VERSION_V1, type MissionAccessibilityAlternativeV1, type MissionArtifactKindV1, type MissionArtifactReferenceV1, type MissionAuthoringBundleV1, type MissionAuthoringGoalV1, type MissionAuthoringValidationIssueV1, type MissionBoundedSuggestionV1, type MissionEvidenceKindV1, type MissionEvidenceRequirementV1, type MissionEvidenceRetentionV1, type MissionFunctionParameterV1, type MissionFunctionReferenceV1, type MissionHardwareAcquisitionScopeV1, type MissionHardwareComponentDisclosureV1, type MissionHardwareDisclosureV1, type MissionInteractionModeV1, type MissionInteractionRequirementV1, type MissionPhysicalSafeguardsV1, type MissionReadinessCheckV1, type MissionRewardBindingV1, type MissionSideAdventureV1, type MissionStageCardV1, type MissionStageKindV1, type MissionV1, type ModuleAgentDefinitionV1, type ModuleAgentFeedbackV1, type ModuleAgentRoleV1, type ModuleCategoryV1, type ModuleEntitlementV1, type ModulePricingV1, type ModuleReferencePriceV1, OBSTACLE_EXPLORER_MISSION_ONE_AUTHORING_V1, PADDLE_PULSE_MISSION_ONE_AUTHORING_V1, PIXEL_TRAIL_CHALLENGE_MISSION_ONE_AUTHORING_V1, type PublishedStaticProjectSnapshotV1, RAINBOW_RESCUE_ROVER_MISSION_ONE_AUTHORING_V1, RESCUE_CREW_COMMANDER_MISSION_ONE_AUTHORING_V1, ROAD_HOPPER_RALLY_MISSION_ONE_AUTHORING_V1, ROBOT_MAZE_DASH_MISSION_ONE_AUTHORING_V1, SERVO_CREATURE_MISSION_ONE_AUTHORING_V1, SKYWING_SPRINT_MISSION_ONE_AUTHORING_V1, STAR_DEFENDER_SQUADRON_MISSION_ONE_AUTHORING_V1, type ScoreBandV1, VIBE_BUG_DETECTIVE_MISSION_ONE_AUTHORING_V1, VIBE_GAME_REMIX_LAB_MISSION_ONE_AUTHORING_V1, VIBE_IDEA_STUDIO_MISSION_ONE_AUTHORING_V1, assertValidLearningPath, assertValidMissionAuthoringBundle, calculateAssessment, validateAssessmentRubric, validateLearningPath, validateMissionAuthoringBundle };
|
package/dist/index.js
CHANGED
|
@@ -5434,6 +5434,290 @@ var VIBE_IDEA_STUDIO_MISSION_ONE_AUTHORING_V1 = {
|
|
|
5434
5434
|
]
|
|
5435
5435
|
}
|
|
5436
5436
|
};
|
|
5437
|
+
var ADVENTURE_MISSION_PLANNER_MISSION_ONE_AUTHORING_V1 = {
|
|
5438
|
+
version: MISSION_AUTHORING_CONTRACT_VERSION_V1,
|
|
5439
|
+
moduleId: "junior-coder.adventure-mission-planner",
|
|
5440
|
+
moduleVersion: "1.1.0",
|
|
5441
|
+
missionId: "adventure-mission-planner-mission-1",
|
|
5442
|
+
learner: {
|
|
5443
|
+
estimatedMinutes: 20,
|
|
5444
|
+
stages: [
|
|
5445
|
+
{
|
|
5446
|
+
kind: "learn",
|
|
5447
|
+
instruction: "Read how semantic headings, labelled mission fields, arrays, state and the five documented functions build an accessible fictional planner.",
|
|
5448
|
+
artifactIds: ["adventure-mission-planner-m1-guide"]
|
|
5449
|
+
},
|
|
5450
|
+
{
|
|
5451
|
+
kind: "predict",
|
|
5452
|
+
instruction: "Predict what will still be available after the private preview restarts when local save is disabled.",
|
|
5453
|
+
artifactIds: ["adventure-mission-planner-m1-test-card"]
|
|
5454
|
+
},
|
|
5455
|
+
{
|
|
5456
|
+
kind: "build",
|
|
5457
|
+
instruction: "Change only the supplied planner settings and keep the fictional mission free of names, contact details and real locations.",
|
|
5458
|
+
artifactIds: ["adventure-mission-planner-m1-code"]
|
|
5459
|
+
},
|
|
5460
|
+
{
|
|
5461
|
+
kind: "run",
|
|
5462
|
+
instruction: "Use the action-icon Run button to render the semantic private planner preview and its text equivalent.",
|
|
5463
|
+
artifactIds: ["adventure-mission-planner-m1-code"]
|
|
5464
|
+
},
|
|
5465
|
+
{
|
|
5466
|
+
kind: "assess",
|
|
5467
|
+
instruction: "Run deterministic structure, validation, array, state, local-save and accessibility checks.",
|
|
5468
|
+
artifactIds: []
|
|
5469
|
+
},
|
|
5470
|
+
{
|
|
5471
|
+
kind: "inspect",
|
|
5472
|
+
instruction: "Compare the observed restart result with the selected persistence goal and highlighted setting.",
|
|
5473
|
+
artifactIds: ["adventure-mission-planner-m1-code"]
|
|
5474
|
+
},
|
|
5475
|
+
{
|
|
5476
|
+
kind: "fix",
|
|
5477
|
+
instruction: "Review and accept or reject the exact local-save change yourself, then rerun every check.",
|
|
5478
|
+
artifactIds: ["adventure-mission-planner-m1-code"]
|
|
5479
|
+
},
|
|
5480
|
+
{
|
|
5481
|
+
kind: "explain",
|
|
5482
|
+
instruction: "Explain how semantic labels, validation and private local save make the planner easier and safer to use.",
|
|
5483
|
+
artifactIds: []
|
|
5484
|
+
},
|
|
5485
|
+
{
|
|
5486
|
+
kind: "reward",
|
|
5487
|
+
instruction: "Collect the evidence-bound planner badge after the score reaches 80 and every privacy and accessibility check passes.",
|
|
5488
|
+
artifactIds: []
|
|
5489
|
+
}
|
|
5490
|
+
],
|
|
5491
|
+
readinessChecks: [
|
|
5492
|
+
{
|
|
5493
|
+
id: "adventure-mission-planner-m1-label-check",
|
|
5494
|
+
prompt: "Find the visible heading, mission title, day and validation message that a screen reader must also announce.",
|
|
5495
|
+
scored: false
|
|
5496
|
+
}
|
|
5497
|
+
],
|
|
5498
|
+
artifacts: [
|
|
5499
|
+
{
|
|
5500
|
+
id: "adventure-mission-planner-m1-code",
|
|
5501
|
+
kind: "starter-code",
|
|
5502
|
+
audience: "learner",
|
|
5503
|
+
solutionBearing: false
|
|
5504
|
+
},
|
|
5505
|
+
{
|
|
5506
|
+
id: "adventure-mission-planner-m1-guide",
|
|
5507
|
+
kind: "starter-assets",
|
|
5508
|
+
audience: "learner",
|
|
5509
|
+
solutionBearing: false
|
|
5510
|
+
},
|
|
5511
|
+
{
|
|
5512
|
+
id: "adventure-mission-planner-m1-test-card",
|
|
5513
|
+
kind: "sample-data",
|
|
5514
|
+
audience: "learner",
|
|
5515
|
+
solutionBearing: false
|
|
5516
|
+
}
|
|
5517
|
+
],
|
|
5518
|
+
goals: [
|
|
5519
|
+
{
|
|
5520
|
+
id: "adventure-mission-planner-m1-starts",
|
|
5521
|
+
statement: "The semantic planner structure, labelled validation message and fictional mission array are valid and start.",
|
|
5522
|
+
visibility: "visible",
|
|
5523
|
+
criterionIds: ["adventure-mission-planner-build"],
|
|
5524
|
+
completionRequired: true,
|
|
5525
|
+
aiRequired: false
|
|
5526
|
+
},
|
|
5527
|
+
{
|
|
5528
|
+
id: "adventure-mission-planner-m1-behaviour",
|
|
5529
|
+
statement: "The planner state contains the supplied fictional mission and its approved private local save survives a simulated restart.",
|
|
5530
|
+
visibility: "visible",
|
|
5531
|
+
criterionIds: [
|
|
5532
|
+
"adventure-mission-planner-goal-one",
|
|
5533
|
+
"adventure-mission-planner-goal-two",
|
|
5534
|
+
"adventure-mission-planner-goal-three"
|
|
5535
|
+
],
|
|
5536
|
+
completionRequired: true,
|
|
5537
|
+
aiRequired: false
|
|
5538
|
+
},
|
|
5539
|
+
{
|
|
5540
|
+
id: "adventure-mission-planner-m1-accessible-private",
|
|
5541
|
+
statement: "The planner keeps an accessible text summary and uses only private simulated local save with no network or personal data.",
|
|
5542
|
+
visibility: "visible",
|
|
5543
|
+
criterionIds: ["adventure-mission-planner-safety"],
|
|
5544
|
+
completionRequired: true,
|
|
5545
|
+
aiRequired: false
|
|
5546
|
+
}
|
|
5547
|
+
],
|
|
5548
|
+
interactions: [
|
|
5549
|
+
{
|
|
5550
|
+
id: "adventure-mission-planner-m1-editor",
|
|
5551
|
+
description: "Edit the documented planner settings.",
|
|
5552
|
+
primaryMode: "text",
|
|
5553
|
+
alternativeIds: []
|
|
5554
|
+
},
|
|
5555
|
+
{
|
|
5556
|
+
id: "adventure-mission-planner-m1-run",
|
|
5557
|
+
description: "Run the private semantic planner preview.",
|
|
5558
|
+
primaryMode: "pointer",
|
|
5559
|
+
alternativeIds: ["adventure-mission-planner-m1-keyboard-run"]
|
|
5560
|
+
},
|
|
5561
|
+
{
|
|
5562
|
+
id: "adventure-mission-planner-m1-review",
|
|
5563
|
+
description: "Read the labelled removed and added local-save lines and choose Accept or Reject.",
|
|
5564
|
+
primaryMode: "text",
|
|
5565
|
+
alternativeIds: []
|
|
5566
|
+
}
|
|
5567
|
+
],
|
|
5568
|
+
accessibilityAlternatives: [
|
|
5569
|
+
{
|
|
5570
|
+
id: "adventure-mission-planner-m1-keyboard-run",
|
|
5571
|
+
modes: ["keyboard", "text", "reduced-motion"],
|
|
5572
|
+
equivalentOutcome: true,
|
|
5573
|
+
description: "Press Enter or Space on the action-icon button and use the same text planner summary without motion or drag."
|
|
5574
|
+
}
|
|
5575
|
+
],
|
|
5576
|
+
evidenceRequirements: [
|
|
5577
|
+
{
|
|
5578
|
+
id: "adventure-mission-planner-m1-assessment",
|
|
5579
|
+
goalIds: [
|
|
5580
|
+
"adventure-mission-planner-m1-starts",
|
|
5581
|
+
"adventure-mission-planner-m1-behaviour",
|
|
5582
|
+
"adventure-mission-planner-m1-accessible-private"
|
|
5583
|
+
],
|
|
5584
|
+
kind: "assessment-result",
|
|
5585
|
+
retention: "entitlement",
|
|
5586
|
+
containsPersonalData: false
|
|
5587
|
+
},
|
|
5588
|
+
{
|
|
5589
|
+
id: "adventure-mission-planner-m1-explanation",
|
|
5590
|
+
goalIds: ["adventure-mission-planner-m1-accessible-private"],
|
|
5591
|
+
kind: "learner-explanation",
|
|
5592
|
+
retention: "attempt",
|
|
5593
|
+
containsPersonalData: false
|
|
5594
|
+
}
|
|
5595
|
+
],
|
|
5596
|
+
sideAdventures: [
|
|
5597
|
+
{
|
|
5598
|
+
id: "adventure-mission-planner-m1-remix",
|
|
5599
|
+
prompt: "Add one supplied fictional mission and describe the validation and accessible summary it needs.",
|
|
5600
|
+
completionRequired: false
|
|
5601
|
+
}
|
|
5602
|
+
],
|
|
5603
|
+
rewardBindings: [
|
|
5604
|
+
{
|
|
5605
|
+
id: "adventure-mission-planner-m1-badge",
|
|
5606
|
+
badgeId: "adventure-mission-planner-mission-complete",
|
|
5607
|
+
goalIds: [
|
|
5608
|
+
"adventure-mission-planner-m1-starts",
|
|
5609
|
+
"adventure-mission-planner-m1-behaviour",
|
|
5610
|
+
"adventure-mission-planner-m1-accessible-private"
|
|
5611
|
+
],
|
|
5612
|
+
deterministic: true,
|
|
5613
|
+
random: false,
|
|
5614
|
+
tokenConvertible: false
|
|
5615
|
+
}
|
|
5616
|
+
],
|
|
5617
|
+
functionReference: [
|
|
5618
|
+
{
|
|
5619
|
+
id: "adventure-mission-planner-function-heading",
|
|
5620
|
+
signature: "setPlannerHeading(heading)",
|
|
5621
|
+
summary: "Chooses one supplied fictional heading for the semantic planner.",
|
|
5622
|
+
parameters: [{ name: "heading", type: "text", description: "Use Moonbase Missions, Forest Rescue Plans or Ocean Quest Board." }],
|
|
5623
|
+
effect: "Updates the visible and screen-reader planner heading in the private preview.",
|
|
5624
|
+
example: 'setPlannerHeading("Moonbase Missions");'
|
|
5625
|
+
},
|
|
5626
|
+
{
|
|
5627
|
+
id: "adventure-mission-planner-function-mission",
|
|
5628
|
+
signature: "addMission(title, day)",
|
|
5629
|
+
summary: "Adds one supplied fictional mission to the in-memory mission array.",
|
|
5630
|
+
parameters: [
|
|
5631
|
+
{ name: "title", type: "text", description: "Use a supplied fictional mission title." },
|
|
5632
|
+
{ name: "day", type: "text", description: "Use Saturday, Sunday or School holiday." }
|
|
5633
|
+
],
|
|
5634
|
+
effect: "Adds one validated fictional item to private preview state without sending a form.",
|
|
5635
|
+
example: 'addMission("Find the moon crystal", "Saturday");'
|
|
5636
|
+
},
|
|
5637
|
+
{
|
|
5638
|
+
id: "adventure-mission-planner-function-validation",
|
|
5639
|
+
signature: "showValidationMessage(message)",
|
|
5640
|
+
summary: "Chooses one supplied child-readable form validation message.",
|
|
5641
|
+
parameters: [{ name: "message", type: "text", description: "Use Choose a day, Add a mission title or Mission ready!" }],
|
|
5642
|
+
effect: "Shows the message visibly and in the accessible text summary.",
|
|
5643
|
+
example: 'showValidationMessage("Mission ready!");'
|
|
5644
|
+
},
|
|
5645
|
+
{
|
|
5646
|
+
id: "adventure-mission-planner-function-save",
|
|
5647
|
+
signature: "enableLocalSave(enabled)",
|
|
5648
|
+
summary: "Turns the private simulated local-save behaviour on or off.",
|
|
5649
|
+
parameters: [{ name: "enabled", type: "Boolean", description: "Use true or false." }],
|
|
5650
|
+
effect: "Controls only the bounded simulated restart; it never writes Plasius or server storage.",
|
|
5651
|
+
example: "enableLocalSave(true);"
|
|
5652
|
+
},
|
|
5653
|
+
{
|
|
5654
|
+
id: "adventure-mission-planner-function-summary",
|
|
5655
|
+
signature: "setAccessibleSummary(enabled)",
|
|
5656
|
+
summary: "Keeps an equivalent text summary beside the visual planner.",
|
|
5657
|
+
parameters: [{ name: "enabled", type: "Boolean", description: "Use true to keep the equivalent summary." }],
|
|
5658
|
+
effect: "Controls the private preview text equivalent used by assistive technology and reduced-motion routes.",
|
|
5659
|
+
example: "setAccessibleSummary(true);"
|
|
5660
|
+
}
|
|
5661
|
+
],
|
|
5662
|
+
boundedSuggestion: {
|
|
5663
|
+
id: "adventure-mission-planner-m1-local-save-diff",
|
|
5664
|
+
source: "authored-fallback",
|
|
5665
|
+
intent: "Make the fictional mission survive the simulated private restart.",
|
|
5666
|
+
constraints: [
|
|
5667
|
+
"Change exactly one documented local-save setting.",
|
|
5668
|
+
"Preserve the supplied semantic heading, fictional mission, validation and accessible summary.",
|
|
5669
|
+
"Do not add network, external scripts, transmitting forms, trackers, personal data or server storage."
|
|
5670
|
+
],
|
|
5671
|
+
permittedArtifactId: "adventure-mission-planner-m1-code",
|
|
5672
|
+
originalSnippet: "enableLocalSave(false);",
|
|
5673
|
+
replacementSnippet: "enableLocalSave(true);",
|
|
5674
|
+
explanationPrompt: "Did the mission survive the simulated restart, and which accessibility and privacy evidence stayed unchanged?",
|
|
5675
|
+
aiOptional: false,
|
|
5676
|
+
learnerApprovalRequired: true,
|
|
5677
|
+
alternatives: ["accept", "reject"]
|
|
5678
|
+
}
|
|
5679
|
+
},
|
|
5680
|
+
facilitator: {
|
|
5681
|
+
artifacts: [
|
|
5682
|
+
{
|
|
5683
|
+
id: "adventure-mission-planner-m1-answer-key",
|
|
5684
|
+
kind: "answer-key",
|
|
5685
|
+
audience: "facilitator",
|
|
5686
|
+
solutionBearing: true
|
|
5687
|
+
},
|
|
5688
|
+
{
|
|
5689
|
+
id: "adventure-mission-planner-m1-protected-tests",
|
|
5690
|
+
kind: "protected-test",
|
|
5691
|
+
audience: "facilitator",
|
|
5692
|
+
solutionBearing: true
|
|
5693
|
+
},
|
|
5694
|
+
{
|
|
5695
|
+
id: "adventure-mission-planner-m1-safety-notes",
|
|
5696
|
+
kind: "facilitator-note",
|
|
5697
|
+
audience: "facilitator",
|
|
5698
|
+
solutionBearing: true
|
|
5699
|
+
}
|
|
5700
|
+
],
|
|
5701
|
+
protectedGoals: [
|
|
5702
|
+
{
|
|
5703
|
+
id: "adventure-mission-planner-m1-protected-boundary",
|
|
5704
|
+
statement: "The planner rejects arbitrary text, personal data, scripts, network calls, transmitting forms, tracking and persistence outside the bounded simulator.",
|
|
5705
|
+
visibility: "protected",
|
|
5706
|
+
criterionIds: [
|
|
5707
|
+
"adventure-mission-planner-edge-one",
|
|
5708
|
+
"adventure-mission-planner-edge-two"
|
|
5709
|
+
],
|
|
5710
|
+
completionRequired: false,
|
|
5711
|
+
aiRequired: false
|
|
5712
|
+
}
|
|
5713
|
+
],
|
|
5714
|
+
prompts: [
|
|
5715
|
+
"Ask the learner to name the semantic heading, validation message and text-equivalent evidence before discussing local save.",
|
|
5716
|
+
"Use only fictional supplied content; redirect names, contacts and real locations to the safe cards.",
|
|
5717
|
+
"Reject must preserve source, and provider failure must never block the deterministic authored path."
|
|
5718
|
+
]
|
|
5719
|
+
}
|
|
5720
|
+
};
|
|
5437
5721
|
var ROAD_HOPPER_RALLY_MISSION_ONE_AUTHORING_V1 = {
|
|
5438
5722
|
version: MISSION_AUTHORING_CONTRACT_VERSION_V1,
|
|
5439
5723
|
moduleId: "junior-coder.road-hopper-rally",
|
|
@@ -5782,6 +6066,7 @@ function assertValidLearningPath(path) {
|
|
|
5782
6066
|
${summary}`);
|
|
5783
6067
|
}
|
|
5784
6068
|
export {
|
|
6069
|
+
ADVENTURE_MISSION_PLANNER_MISSION_ONE_AUTHORING_V1,
|
|
5785
6070
|
BEACON_BOT_MISSION_ONE_AUTHORING_V1,
|
|
5786
6071
|
DANCE_ROVER_MISSION_ONE_AUTHORING_V1,
|
|
5787
6072
|
JUNIOR_CODER_MISSION_STAGE_ORDER_V1,
|