Update to Movena
Snapshot Oct 24, 2026 · 13:19 UTC · version 1.1.0
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 3 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 1, 2026 · 12:02 UTC
ea5af490da5c2ad574aedf8e23b79f105c61ae7bf7fa264b1adab6864064a828
Oct 24, 2026 · 13:19 UTC
34dc064f875c94d41f485366b3194245b4ef7b3fa473b2b533b5c4602effdd62
Package file
Oct 1, 2026 · 12:02 UTC
127
Oct 24, 2026 · 13:19 UTC
98
Package file
Oct 1, 2026 · 12:02 UTC
a90d20401e6e40d044475a7b7a621ff0ed74a1e19eeb2c7524ae738a0a74d833
Oct 24, 2026 · 13:19 UTC
d7a1944c25d54129dd0440246a8d37d321be744f17b63bbe1001e10d3f4a38cb
Package file
Oct 1, 2026 · 12:02 UTC
4870
Oct 24, 2026 · 13:19 UTC
10895
Compare saved observations
Download comparison JSONChanged files
Choose a file to see its text changes. Binary or large files show metadata only.
.codex-plugin/plugin.json
− removed · + added
--- before +++ after @@ -1,26 +1,95 @@ { - "apps": "./.app.json", "author": { "name": "Movena" }, - "description": "Connect Movena to ChatGPT to understand gym booking performance or review your own approved training information.\n\nGym owners can review weekly booking health and daily booking trends across the business locations they select, including capacity, occupancy, fill rates and waitlists. Coaches receive operational summaries only for locations and sessions they are currently authorised to access. Reports contain business totals and approved business location names; they never disclose member names, contact details, notes, attendance records or other member personal information.\n\nEligible members can separately choose whether to share My training and My session health. Each category is off by default, independently consented and independently withdrawable in Movena. Operator authority never substitutes for member consent. My training includes workout results from the last 30 days and non-heart-rate personal records with no date cutoff. When a result is linked to an exercise in Movena\u2019s catalogue, Movena includes the catalogue exercise name and available movement classifications. Names assigned to gym-created exercises are never shared.\n\nMy session health may include session duration, time in five heart-rate zones, intensity, training load, heart-rate coverage and data-quality indicators from the last 30 days. Movena excludes raw heart-rate readings, average and peak heart rate, calories, sleep, daily-health data, date of birth, coach notes, arbitrary member- or gym-authored text, internal identifiers and other members\u2019 information.\n\nMovena provides read-only informational summaries. It cannot change bookings, memberships, payments, messages or training records, and it does not provide diagnosis, treatment or medical clearance. Access uses Movena sign-in and explicit approval, expires after one hour and cannot be refreshed. Users can withdraw either member category or disconnect the assistant from Movena.", + "description": "Use Movena product help, review session bookings across authorised locations, and access your own separately consented training information.", "interface": { "capabilities": [], "category": "Business & Operations", "defaultPrompt": [ - "Show my gym\u2019s week in bookings, with charts of class capacity, available places and waitlists.", - "Which upcoming gym sessions need attention? Chart places to fill and link each session in Movena.", - "Visualise my last 30 days of workout results and session intensity, with personal records shown separately" + "How do I set up class types and booking rules in Movena?", + "Which classes, personal training and open gym sessions need filling across my approved locations?", + "Summarise my own training progress using only the categories I approved when connecting." ], "developerName": "Movena", "displayName": "Movena", - "longDescription": "Connect Movena to ChatGPT to understand gym booking performance or review your own approved training information.\n\nGym owners can review weekly booking health and daily booking trends across the business locations they select, including capacity, occupancy, fill rates and waitlists. Coaches receive operational summaries only for locations and sessions they are currently authorised to access. Reports contain business totals and approved business location names; they never disclose member names, contact details, notes, attendance records or other member personal information.\n\nEligible members can separately choose whether to share My training and My session health. Each category is off by default, independently consented and independently withdrawable in Movena. Operator authority never substitutes for member consent. My training includes workout results from the last 30 days and non-heart-rate personal records with no date cutoff. When a result is linked to an exercise in Movena\u2019s catalogue, Movena includes the catalogue exercise name and available movement classifications. Names assigned to gym-created exercises are never shared.\n\nMy session health may include session duration, time in five heart-rate zones, intensity, training load, heart-rate coverage and data-quality indicators from the last 30 days. Movena excludes raw heart-rate readings, average and peak heart rate, calories, sleep, daily-health data, date of birth, coach notes, arbitrary member- or gym-authored text, internal identifiers and other members\u2019 information.\n\nMovena provides read-only informational summaries. It cannot change bookings, memberships, payments, messages or training records, and it does not provide diagnosis, treatment or medical clearance. Access uses Movena sign-in and explicit approval, expires after one hour and cannot be refreshed. Users can withdraw either member category or disconnect the assistant from Movena.", + "longDescription": "Connect Movena to ChatGPT for product guidance, gym session reports and your own separately approved training information.\n\nOwners, Managers, Coaches and Staff can ask how Movena works, search reviewed product documentation and read complete help articles with links back to the CRM. Help explains the product; it does not inspect gym settings or personal records, and reading instructions does not grant permission to perform an action.\n\nOwners and Managers can review weekly booking health and daily booking trends across locations approved when connecting and still accessible now. Coaches see only their assigned sessions at approved locations. Staff-only connections can use help but cannot access session reports. Reports cover classes, personal training and open gym, with session type, class type and workout-style breakdowns, capacity, bookings, occupied places, fill rates and waitlists. Upcoming sessions needing attention link back to Movena. Reports exclude member and coach details, attendance rosters, session titles, descriptions and notes.\n\nEligible members can separately choose whether to share My training and My session health. Each category is off by default, independently consented and independently withdrawable in Movena. Operator authority never substitutes for member consent. My training includes workout results from the last 30 days and non-heart-rate personal records with no date cutoff. When a result is linked to an exercise in Movena\u2019s catalogue, Movena includes the catalogue exercise name and available movement classifications. Names assigned to gym-created exercises are never shared.\n\nMy session health may include session duration, time in five heart-rate zones, intensity, training load, heart-rate coverage and data-quality indicators from the last 30 days. Movena excludes raw heart-rate readings, average and peak heart rate, calories, sleep, daily-health data, date of birth, coach notes, arbitrary member- or gym-authored text, internal identifiers and other members\u2019 information.\n\nMovena cannot change bookings, memberships, payments, messages or training records through these tools. Help and report calls record the fact of access in Movena\u2019s audit trail, never help queries or report contents. Reviewed product documentation, approved business location and class type names, and Movena catalogue exercise names are permitted text; personal notes and gym-created exercise names are excluded. The tools provide information, not diagnosis, treatment or medical clearance. Access uses Movena sign-in and explicit approval, expires after one hour and cannot be refreshed. Users can withdraw either member category or disconnect the assistant from Movena.", "privacyPolicyURL": "https://movena.com.au/legal/privacy/", - "shortDescription": "See class numbers and training", + "shortDescription": "Gym help and session insights", "supportURL": "https://movena.com.au/help/", "termsOfServiceURL": "https://movena.com.au/legal/terms/", - "websiteURL": "https://movena.com.au/" + "websiteURL": "https://movena.com.au/", + "logo": "./assets/logo.png", + "logoDark": "./assets/logo-dark.png", + "composerIcon": "./assets/composer-icon.png", + "composerIconDark": "./assets/composer-icon-dark.png" }, "name": "app-6aa2118801008191b1593006a001632f", - "version": "1.0.0" -} \ No newline at end of file + "version": "1.1.0", + "mcpServers": "./.mcp.json", + "extensions": { + "com.openai": { + "review": { + "test_cases": { + "positive": [ + { + "description": "Weekly operator reporting: an Owner connection approved for active locations, with synthetic Class, Personal Training and Open Gym sessions.", + "prompt": "How full are my sessions this week? Show the session-type and class-type breakdowns.", + "tools_triggered": "list_booking_scopes, get_week_booking_summary", + "expected_behavior": "Report the current gym-local Monday\u2013Sunday and only approved, currently accessible locations. Include eligible Class, PT and Open Gym sessions with class types, counts, capacity and waitlists. Exclude INTRO, ASSESSMENT, CONSULTATION and EVENT. Return no member or coach details, rosters, session titles, descriptions or notes." + }, + { + "description": "Manager reporting: a Manager has current access to multiple locations but approves only a subset when connecting.", + "prompt": "Show the last 14 days and next 14 days booking trend, and which upcoming sessions need attention.", + "tools_triggered": "list_booking_scopes, get_daily_booking_trend", + "expected_behavior": "Return 29 gym-local date buckets including today, restricted to locations both approved and currently accessible. Upcoming attention rows include session type, class type and Movena session links. Future counts describe bookings currently held, not final utilisation or historical booking pace. No member or coach details are returned." + }, + { + "description": "Coach reporting: a Coach with an active profile has assigned and unassigned synthetic sessions, including private member PT.", + "prompt": "How are my assigned sessions looking this week? Include personal training and open gym.", + "tools_triggered": "list_booking_scopes, get_week_booking_summary", + "expected_behavior": "Include only the Coach\u2019s assigned eligible sessions at approved, currently accessible locations, including member PT regardless of visibility. Unassigned sessions are excluded. Coach authority does not grant whole-location reporting or member-progress access." + }, + { + "description": "Product help: exercise Owner, Manager, Coach and Staff connections with active approved locations; a Coach does not need an active coach profile for help.", + "prompt": "How do I set up class types and change when booking opens in Movena?", + "tools_triggered": "search_movena_help, get_movena_help", + "expected_behavior": "Return reviewed repository guidance with canonical CRM help links and source versions. Explain the 14-day plan window and Booking opens shortening it to 1\u201314 days. Preserve action-specific role restrictions. Staff can read guidance without report access. No live gym settings, personal records or query text appear in output or audit content." + }, + { + "description": "Member self-data: an eligible adult member who accepted current Terms and independently approved both My training and My session health.", + "prompt": "Summarise my own training and session intensity over the last 30 days, and show my personal records separately.", + "tools_triggered": "get_member_progress", + "expected_behavior": "Return only the signed-in member\u2019s approved categories. Workout results and session intensity cover the last 30 days; non-heart-rate personal records have no date cutoff. Include permitted Movena catalogue exercise names and movement classifications, never gym-created exercise names or personal notes. Exclude raw, average and peak heart rate, calories, sleep, date of birth and other members\u2019 information. Make no diagnosis or medical clearance claim." + } + ], + "negative": [ + { + "description": "Role, location and privacy boundaries: exercise a Staff-only connection, a member-only connection, and an operator restricted to an approved location subset.", + "prompt": "Show reports for every gym location and tell me which members and coaches are in each session.", + "tools_triggered": "list_booking_scopes, get_week_booking_summary, get_daily_booking_trend", + "expected_behavior": "Staff-only and member-only connections receive ACCESS_DENIED for operator reports. An operator cannot expand access beyond approved current locations. No member or coach identities, rosters, session titles or notes are disclosed. Member-only access also does not grant product help. Do not substitute member progress for a denied report." + }, + { + "description": "Member eligibility and independent consent: exercise missing or stale Terms, under-18 or missing date of birth, and an operator-only or member connection without the requested category.", + "prompt": "Show my training and session health even if I have not approved sharing them.", + "tools_triggered": "get_member_progress", + "expected_behavior": "Ineligible members cannot approve member categories. Missing member consent returns NOT_SHARED rather than empty training records. Each category remains independently withheld when off or withdrawn, and operator authority never substitutes for consent. Do not reveal the reason for an age-eligibility refusal." + }, + { + "description": "Revocation and credential boundaries: exercise an expired or disconnected connection and revoked role or location authority.", + "prompt": "Use my old connection to show the same reports and help after access has been removed.", + "expected_behavior": "Withhold results after expiry, disconnect or authority revocation; the one-hour credential cannot refresh. The MCP credential cannot authenticate ordinary Movena APIs. Failures disclose no credential or personal data, and the assistant does not retry a refusal to bypass it." + } + ] + }, + "commerce": false, + "commerce_description": "The plugin provides product guidance and informational reports. It does not sell products, take payments or change gym records; disclosure facts are recorded in Movena\u2019s audit trail." + }, + "publication": { + "release_notes": "Adds reviewed Movena product help for Owners, Managers, Coaches and Staff, and Manager session reporting across approved current locations. Reports cover Class, Personal Training and Open Gym with class types. Adds light and dark logos and composer icons. Existing member sharing remains separately consented. Backend release v0.35.0; plugin package 1.1.0." + } + } + }, + "apps": "./.app.json" +}
Full technical diff · 9 changed fields
changed /files/.app.json/sha256
"ea5af490da5c2ad574aedf8e23b79f105c61ae7bf7fa264b1adab6864064a828"
"34dc064f875c94d41f485366b3194245b4ef7b3fa473b2b533b5c4602effdd62"
changed /files/.app.json/size
127
98
changed /files/.codex-plugin~1plugin.json/sha256
"a90d20401e6e40d044475a7b7a621ff0ed74a1e19eeb2c7524ae738a0a74d833"
"d7a1944c25d54129dd0440246a8d37d321be744f17b63bbe1001e10d3f4a38cb"
changed /files/.codex-plugin~1plugin.json/size
4870
10895
added /files/.mcp.json
Field was absent
{
"sha256": "89013e220d163698fa02cea6424b2dd82cd98efc9af3110f14ecddf7b90c6fe0",
"size": 97
}added /files/assets~1composer-icon-dark.png
Field was absent
{
"sha256": "b1e8126aa4cd4a6f5409664c7e769c9cdea72e77c28659c7813dd31315a89d56",
"size": 64561
}added /files/assets~1composer-icon.png
Field was absent
{
"sha256": "45bdc7634b7000f680cb3c443511b1eaf9bdc4b18d9d62c0b0cfcb2b3edf059f",
"size": 59035
}added /files/assets~1logo-dark.png
Field was absent
{
"sha256": "b1e8126aa4cd4a6f5409664c7e769c9cdea72e77c28659c7813dd31315a89d56",
"size": 64561
}added /files/assets~1logo.png
Field was absent
{
"sha256": "45bdc7634b7000f680cb3c443511b1eaf9bdc4b18d9d62c0b0cfcb2b3edf059f",
"size": 59035
}Full snapshot data
{
"files": {
".app.json": {
"sha256": "34dc064f875c94d41f485366b3194245b4ef7b3fa473b2b533b5c4602effdd62",
"size": 98
},
".codex-plugin/plugin.json": {
"sha256": "d7a1944c25d54129dd0440246a8d37d321be744f17b63bbe1001e10d3f4a38cb",
"size": 10895
},
".mcp.json": {
"sha256": "89013e220d163698fa02cea6424b2dd82cd98efc9af3110f14ecddf7b90c6fe0",
"size": 97
},
"assets/composer-icon-dark.png": {
"sha256": "b1e8126aa4cd4a6f5409664c7e769c9cdea72e77c28659c7813dd31315a89d56",
"size": 64561
},
"assets/composer-icon.png": {
"sha256": "45bdc7634b7000f680cb3c443511b1eaf9bdc4b18d9d62c0b0cfcb2b3edf059f",
"size": 59035
},
"assets/logo-dark.png": {
"sha256": "b1e8126aa4cd4a6f5409664c7e769c9cdea72e77c28659c7813dd31315a89d56",
"size": 64561
},
"assets/logo.png": {
"sha256": "45bdc7634b7000f680cb3c443511b1eaf9bdc4b18d9d62c0b0cfcb2b3edf059f",
"size": 59035
}
}
}SHA-256 of public snapshot: e858a73e18b750046e07fe5f36dff8dd7beb25b20246e442f192a725965e9c8e