Update to Exam Practice Routine
Snapshot Nov 2, 2026 · 06:11 UTC · version 1.0.4
Package or technical metadata updated
Package or technical metadata updated
Observed in package metadata. These changes alone do not establish a new customer-facing feature.
Up to 10 plugins free · no card required.
All fields and original values.
These are saved file metadata. Open a changed file to read its text edits.
Package file
Oct 24, 2026 · 13:51 UTC
Not present
Nov 2, 2026 · 06:11 UTC
{"sha256":"875903ae80ba099e92a567bd441f7115930475c69c50b86410cfaaed94ca6650","size":501}
Package file
Oct 24, 2026 · 13:51 UTC
Not present
Nov 2, 2026 · 06:11 UTC
{"sha256":"91093d01cd5a110a62cbc174710372f5602132b5344a08e9fc4385588fc3c828","size":501}
Package file
Oct 24, 2026 · 13:51 UTC
Not present
Nov 2, 2026 · 06:11 UTC
{"sha256":"bf92e0c79225b225563f9e4672c12b9bbe01154348ba8e7481a421bdbd85fa93","size":392}
Package file
Oct 24, 2026 · 13:51 UTC
d6d805cb7f6a16c6a13cd4aa1661b0c538b1c51fb0bef2ca5a13fcf132acebd7
Nov 2, 2026 · 06:11 UTC
2b2a996029e46a767337b74669dbfe5292d362d71947ad85e16eb6d1136ce6b5
Compare saved observations
Download comparison JSONChanged files
Choose a file to see its text changes. Binary or large files show metadata only.
plugin.json
− removed · + added
--- before +++ after @@ -1,8 +1,8 @@ { "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json", "name": "duopore-public-exam-practice-routine", - "version": "1.0.1", - "description": "Fits whole user-chosen attempt-and-review blocks into explicit study-date minute budgets before a supplied exam date. Uses your priorities and repeat counts, keeps review time separate, and reports unplanned repetitions. It does not predict grades or mastery. Uses only adult user-controlled facts; review the result. No external lookup, storage or sending.", + "version": "1.0.4", + "description": "Build an exam practice plan that leaves time to check your answers.", "author": { "name": "DUOPORE VENTURES PTE. LTD.", "email": "ch.kae88@gmail.com", @@ -10,6 +10,7 @@ }, "homepage": "https://duopore-public-tools.ch-kae88.workers.dev/tools/exam-practice-routine", "keywords": [ + "fit exam practice into time", "exam practice routine", "routines and focus", "worksheet", @@ -19,24 +20,27 @@ "com.openai": { "interface": { "displayName": "Exam Practice Routine", - "shortDescription": "Exam Practice Routine", - "longDescription": "Fits whole user-chosen attempt-and-review blocks into explicit study-date minute budgets before a supplied exam date. Uses your priorities and repeat counts, keeps review time separate, and reports unplanned repetitions. It does not predict grades or mastery. Uses only adult user-controlled facts; review the result. No external lookup, storage or sending. Uses explicitly supplied structured inputs. Server computations are transient; the standalone website computes locally in your browser. Review the output before exporting it. No persistent account records, external source retrieval, sending, transactions or paid model calls. CSV/JSON review and export are available on the standalone website. MCP requests are capped at 128 KiB and computed responses at 256 KiB; individual field and record limits also apply.", + "shortDescription": "Fit exam practice into time", + "longDescription": "Build an exam practice plan that leaves time to check your answers. Enter study dates, available minutes, task priorities and how many practice-and-review rounds you want. See whole rounds that fit and those still unplanned. For adults planning their own study. The app keeps answer review time separate and does not predict grades or mastery.", "developerName": "DUOPORE VENTURES PTE. LTD.", "category": "Productivity", "capabilities": [ - "Prepare exam practice routine" + "Fit exam practice into time" ], "websiteURL": "https://duopore-public-tools.ch-kae88.workers.dev/tools/exam-practice-routine", "supportURL": "https://duopore-public-tools.ch-kae88.workers.dev/support", "privacyPolicyURL": "https://duopore-public-tools.ch-kae88.workers.dev/privacy", "termsOfServiceURL": "https://duopore-public-tools.ch-kae88.workers.dev/terms", "defaultPrompt": [ - "Help me prepare a exam practice routine.", - "Review my inputs for exam practice routine." + "Fit these practice questions and review rounds into my study dates.", + "How many complete practice-and-review blocks fit before my exam?" ], - "brandColor": "#246BB4", - "composerIcon": "./assets/icon.svg", - "logo": "./assets/logo.svg" + "brandColor": "#8D1B7A", + "composerIcon": "./assets/brand4-composer.svg", + "logo": "./assets/brand4-logo.svg", + "brandColorDark": "#EA7BD7", + "composerIconDark": "./assets/brand4-composer-dark.svg", + "logoDark": "./assets/brand4-logo.svg" }, "review": { "test_cases": { @@ -95,7 +99,7 @@ "demo_recording_url": "https://duopore-review-evidence.ch-kae88.workers.dev/duopore-exam-practice-routine/" }, "publication": { - "release_notes": "Initial public review candidate. Five recorded positive endpoint cases and malformed-input guards accompany the review walkthrough. The evidence page clearly separates API checks from native ChatGPT evaluation. No public approval or publication is claimed." + "release_notes": "Clear benefit-first descriptions and original bold geometric branding with light/dark icon variants. App behavior, privacy, connections and review evidence unchanged." }, "apps": "./.app.json" }
Full technical diff · 5 changed fields
added /files/assets~1brand4-composer-dark.svg
Field was absent
{
"sha256": "875903ae80ba099e92a567bd441f7115930475c69c50b86410cfaaed94ca6650",
"size": 501
}added /files/assets~1brand4-composer.svg
Field was absent
{
"sha256": "91093d01cd5a110a62cbc174710372f5602132b5344a08e9fc4385588fc3c828",
"size": 501
}added /files/assets~1brand4-logo.svg
Field was absent
{
"sha256": "bf92e0c79225b225563f9e4672c12b9bbe01154348ba8e7481a421bdbd85fa93",
"size": 392
}changed /files/plugin.json/sha256
"d6d805cb7f6a16c6a13cd4aa1661b0c538b1c51fb0bef2ca5a13fcf132acebd7"
"2b2a996029e46a767337b74669dbfe5292d362d71947ad85e16eb6d1136ce6b5"
changed /files/plugin.json/size
12382
11782
Full snapshot data
{
"files": {
".app.json": {
"sha256": "6c220e2f14fa07cbdf5e28e88dee488574affb17b1a54c58c4f49298cd1dfc44",
"size": 121
},
"EXAMPLE.json": {
"sha256": "011d43ff9cd620c63640a8aae380c11087d7009312b317fd9960269968848ecf",
"size": 1632
},
"PUBLICATION-STATUS.md": {
"sha256": "7be3cc2abaece4f19ab8d77d639174820af16984594e5358adc8d13ce45d404a",
"size": 130
},
"README.md": {
"sha256": "98c7b34c8888de50c5ae479057cd4f4d9aec3bdfd5a6d804c3cbff09b1fbe943",
"size": 1490
},
"RELEASE-NOTES.md": {
"sha256": "2f939bff13a2bcfcfa9d8a4bedb3204f175d23261f29afbedb583a53d5cdbdd5",
"size": 317
},
"REVIEW-EVIDENCE.md": {
"sha256": "51d9823be6c2bc4328ab924fc6f630237d028cef5b1005ba6afa0ff2c3e0f2e1",
"size": 483
},
"assets/brand4-composer-dark.svg": {
"sha256": "875903ae80ba099e92a567bd441f7115930475c69c50b86410cfaaed94ca6650",
"size": 501
},
"assets/brand4-composer.svg": {
"sha256": "91093d01cd5a110a62cbc174710372f5602132b5344a08e9fc4385588fc3c828",
"size": 501
},
"assets/brand4-logo.svg": {
"sha256": "bf92e0c79225b225563f9e4672c12b9bbe01154348ba8e7481a421bdbd85fa93",
"size": 392
},
"assets/icon.svg": {
"sha256": "08f4219b16958e57313d18d907ea721733b200c6f33e4a8947ce93373d15ffe0",
"size": 366
},
"assets/logo.svg": {
"sha256": "08f4219b16958e57313d18d907ea721733b200c6f33e4a8947ce93373d15ffe0",
"size": 366
},
"mcp.json": {
"sha256": "9cd7b6d88dc42ad514c3064e4299f82aadc85302fb7b1e83a4e90ddabc1470a4",
"size": 391
},
"plugin.json": {
"sha256": "2b2a996029e46a767337b74669dbfe5292d362d71947ad85e16eb6d1136ce6b5",
"size": 11782
}
}
}SHA-256 of public snapshot: 3e4d7f6ee1611e3c5a208cdaa914c14e1b07a47325a492ee6666ecfb2f818737