ROADMAP — h5pkit Question Bank Registry and Documented Extensions¶
Initiative: INIT-H5PKIT-001
Repository: github.com/grokify/h5pkit
Stay inside H5P where H5P has an answer; extend only where it does not, and
document each extension so other tools can use it. The extensions and the
registry release first, as v0.6.0, and Likert scoring as v0.7.0; the content
types and the editor follow in a later release. Phase 4 is independent of Phases 1 to 3. Commits implementing an item carry
Refs: RMI-H5PKIT-<NNN>.
Phase 1 — Extensions¶
Theme: A documented, namespaced metadata block
- [x]
RMI-H5PKIT-001Rename the extension namespace fromh5pGotoh5pkit - [x]
RMI-H5PKIT-002AdddifficultyScore,skills(SkillRef{Taxonomy, ID}), andstandards(StandardRef{Framework, Code}) with validation wired intoQuestionSet.Validate - Depends on:
RMI-H5PKIT-001 - [x]
RMI-H5PKIT-003Extensions guide: every field, the relative-difficulty rule, the rename, and guidance for other tools - Depends on:
RMI-H5PKIT-002
Phase 2 — Registry¶
Theme: Banks, immutable versions, lineage, and a store boundary
- [x]
RMI-H5PKIT-004registrytypes:Bank,BankVersion,License,Lineage,Status,Relation,ListFilter - Depends on:
RMI-H5PKIT-002 - [x]
RMI-H5PKIT-005Storeinterface,MemoryStore, and theregistrytestconformance suite - Depends on:
RMI-H5PKIT-004 - [x]
RMI-H5PKIT-006Versioning rules: draft editing, publish freezes and computes skill and standards unions,ErrImmutable, new version from existing, fork with lineage and descendants lookup - Depends on:
RMI-H5PKIT-005 - [x]
RMI-H5PKIT-007Interop: export a version toQuestionSetand.h5p; import an.h5pquestion set to a draft version preserving extensions - Depends on:
RMI-H5PKIT-006
Phase 3 — Documentation and First Release¶
Theme: Ship the extensions and the registry
- [x]
RMI-H5PKIT-012Question-banks guide, standards reference, published roadmap update, Go directive bump, changelog, tag v0.6.0, record the release - Depends on:
RMI-H5PKIT-003 - Depends on:
RMI-H5PKIT-007
Phase 4 — Content Types¶
Theme: Native H5P types instead of invented formats
- [ ]
RMI-H5PKIT-008H5P.TrueFalseandH5P.Blanks: typed params, semantics, validation, builder methods - [ ]
RMI-H5PKIT-009H5P.SingleChoiceSetandH5P.Essay: typed params, semantics, validation, builder methods - Depends on:
RMI-H5PKIT-008 - [ ]
RMI-H5PKIT-010H5P.DragTextandH5P.DragQuestionfor ordering and matching: typed params, semantics, validation, builder methods - Depends on:
RMI-H5PKIT-008
Phase 5 — Editor and Next Release¶
Theme: The metadata in the editor, and the content types shipped
- [ ]
RMI-H5PKIT-011TypeScript editor metadata section for difficulty score, skills, and standards on theh5pkitblock - Depends on:
RMI-H5PKIT-002 - [ ]
RMI-H5PKIT-013Content-types and editor guides, changelog, tag the next minor release, record the release - Depends on:
RMI-H5PKIT-009 - Depends on:
RMI-H5PKIT-010 - Depends on:
RMI-H5PKIT-011 - Depends on:
RMI-H5PKIT-012
Phase 6 — Likert Scoring¶
Theme: Scored scales on standard H5P.MultiChoice
- [x]
RMI-H5PKIT-014Make the MultiChoice behaviour fields that default to true*bool, so an explicit false is written - [x]
RMI-H5PKIT-015scoringon theh5pkitblock:likertmethod, scale, and reverse flag, with validation - Depends on:
RMI-H5PKIT-002 - [x]
RMI-H5PKIT-016Likert overlay onH5P.MultiChoice: params builder,AddLikertQuestion, Likert validation inQuestionSet.Validate, andScoreLikert - Depends on:
RMI-H5PKIT-014 - Depends on:
RMI-H5PKIT-015 - [x]
RMI-H5PKIT-017Likert section in the extensions guide - Depends on:
RMI-H5PKIT-016 - [x]
RMI-H5PKIT-018Changelog and release notes, tag v0.7.0 with Likert scoring, record the release - Depends on:
RMI-H5PKIT-017