@mutmutco/pi-plugin 4.5.150 → 4.5.152

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mutmutco/pi-plugin",
3
- "version": "4.5.150",
3
+ "version": "4.5.152",
4
4
  "description": "MMI workflow skills and org gates delivery.",
5
5
  "author": {
6
6
  "name": "MMI Future",
@@ -8,4 +8,4 @@ Before the first CI/deploy, an org admin must grant this repo **Read** on `@mutm
8
8
 
9
9
  The server exposes `/health` and `/module.js`. Register the module's bundle URL, id, name and capabilities with MM-Work following the GUIDE. The seed deliberately exposes no authenticated product API yet.
10
10
 
11
- `gate` installs and checks the backend and module. `screens / screens` follows MM-PM's non-blocking PR/push/tag shape, using MM-Work's reusable runner with `run: false` (browser audits are not merge gates). Configure scheduled/on-demand screen audits separately when the product has screens to audit.
11
+ `gate` installs and checks the backend and module. Product repos carry no screenshot or browser tests (owner ruling 2026-10-15, MM-Work#5388).
@@ -3,7 +3,7 @@
3
3
  "version": "0.1.0",
4
4
  "private": true,
5
5
  "type": "module",
6
- "description": "MM-Work module screens",
6
+ "description": "MM-Work module",
7
7
  "scripts": {
8
8
  "lint": "mmwork-check-ui src",
9
9
  "build": "vite build",
@@ -1 +0,0 @@
1
- { "result": { "items": [{ "id": "sample", "name": "Sample brief" }] } }
@@ -1,170 +0,0 @@
1
- {
2
- "module": {
3
- "id": "{{REPO_SLUG}}",
4
- "name": "{{REPO_NAME}}",
5
- "glyph": "grid",
6
- "tone": "blue",
7
- "description": "Offline module screen check",
8
- "sections": [
9
- {
10
- "label": "Home",
11
- "path": "/"
12
- },
13
- {
14
- "label": "Details",
15
- "path": "/details"
16
- }
17
- ],
18
- "help": {
19
- "home": {
20
- "name": "Example home",
21
- "howTos": [
22
- {
23
- "id": "recent",
24
- "title": "See recent files",
25
- "intro": "The module counts the files you opened lately in Google Drive.",
26
- "steps": [
27
- {
28
- "title": "Connect Drive",
29
- "text": "Connect your Google account in Files to see your recent files.",
30
- "scene": "connect"
31
- },
32
- {
33
- "title": "Come back here",
34
- "text": "The overview shows how many recent files MM-Work found."
35
- }
36
- ]
37
- },
38
- {
39
- "id": "details",
40
- "title": "Open the details page",
41
- "steps": [
42
- {
43
- "title": "Press Open a page inside the module",
44
- "text": "It is under the overview. Details is also in the section row.",
45
- "scene": "screen"
46
- },
47
- {
48
- "title": "Go back",
49
- "text": "Press Home in the section row."
50
- }
51
- ]
52
- }
53
- ],
54
- "faq": [
55
- {
56
- "id": "drive",
57
- "question": "Where are my files?",
58
- "answer": "Recent files come from your connected Google Drive."
59
- },
60
- {
61
- "id": "job",
62
- "question": "What is the Review files job?",
63
- "answer": "A job your admin can give you. The overview says whether you hold it."
64
- },
65
- {
66
- "id": "access",
67
- "question": "Does this module get my Google password?",
68
- "answer": "No. It asks MM-Work for your files, and MM-Work uses the access you granted it."
69
- }
70
- ],
71
- "tour": [
72
- {
73
- "anchor": "example-intro",
74
- "title": "What this is",
75
- "text": "A module's own screen, drawn with MM-Work's design system."
76
- },
77
- {
78
- "anchor": "example-overview",
79
- "title": "Your overview",
80
- "text": "See your workspace and recent Drive files here."
81
- },
82
- {
83
- "anchor": "example-actions",
84
- "title": "Where to go next",
85
- "text": "Open the details page, or go to Files."
86
- }
87
- ]
88
- }
89
- },
90
- "privacy": [
91
- {
92
- "class": "company-visible",
93
- "what": {
94
- "en": "The example reads recent Google Drive file metadata through MM-Work after the person connects Files.",
95
- "tr": "Örnek modül, kişi Files bağlantısını kurduktan sonra MM-Work üzerinden son Google Drive dosyalarının meta verilerini okur."
96
- },
97
- "who": {
98
- "en": "The signed-in person sees the count on this example screen; no file content is saved by the example.",
99
- "tr": "Oturum açmış kişi örnek ekranda sayıyı görür; örnek modül dosya içeriğini kaydetmez."
100
- },
101
- "evidence": [
102
- "repo:MM-Work:examples/example-module/src/module.jsx"
103
- ]
104
- }
105
- ]
106
- },
107
- "screens": [
108
- {
109
- "name": "home",
110
- "path": "/m/example",
111
- "jobs": [
112
- "files.review"
113
- ],
114
- "routes": {
115
- "POST /api/actions/files.list": "files.json"
116
- }
117
- },
118
- {
119
- "name": "open details journey",
120
- "path": "/m/example",
121
- "steps": [
122
- {
123
- "assert": {
124
- "selector": "[data-tour=example-actions] button",
125
- "count": 2
126
- }
127
- },
128
- {
129
- "click": "[data-tour=example-actions] button:first-child"
130
- },
131
- {
132
- "assert": {
133
- "url": "/m/example/details"
134
- }
135
- }
136
- ],
137
- "routes": {
138
- "POST /api/actions/files.list": "files.json"
139
- }
140
- },
141
- {
142
- "name": "details",
143
- "path": "/m/example/details",
144
- "routes": {
145
- "POST /api/actions/files.list": "files.json"
146
- }
147
- },
148
- {
149
- "name": "loading",
150
- "path": "/m/example",
151
- "query": "state=loading",
152
- "routes": {
153
- "POST /api/actions/files.list": "pending"
154
- }
155
- },
156
- {
157
- "name": "error",
158
- "path": "/m/example",
159
- "query": "state=error",
160
- "routes": {
161
- "POST /api/actions/files.list": {
162
- "status": 500,
163
- "body": {
164
- "error": "offline failure"
165
- }
166
- }
167
- }
168
- }
169
- ]
170
- }
@@ -1,63 +0,0 @@
1
- name: screens
2
- # A required check (#250): it runs wherever gate runs, so no PR into development, rc or main and no train tag
3
- # waits on a context that never reports.
4
- on:
5
- pull_request:
6
- merge_group:
7
- types: [checks_requested]
8
- push:
9
- branches: {{GATE_PUSH_BRANCHES_YAML}}
10
- tags: ['v*']
11
- # Cancel superseded runs per PR, or per branch for pushes (MMI-Hub#7515, #3001; as MM-Strategy#415).
12
- concurrency:
13
- group: screens-${{ github.event.pull_request.number || (github.event_name == 'push' && github.sha) || github.ref }}
14
- cancel-in-progress: true
15
- permissions:
16
- contents: read
17
- packages: read
18
- pull-requests: read
19
- jobs:
20
- # Owner ruling (#474, 6 Oct 2026): browser checks block nothing, releases included. Every PR, push and tag
21
- # reports this required context without a browser audit (run: false); screens-sweep.yml audits nightly and
22
- # on demand (issue-on-red). A development push still reports
23
- # the required "screens / screens" on the SHA, which the dev deploy needs (MMI-Hub dev-auto-deploy).
24
- changes:
25
- runs-on: [self-hosted, linux, x64, mmi-live]
26
- outputs:
27
- run: ${{ steps.pick.outputs.run }}
28
- full: ${{ steps.pick.outputs.full }}
29
- steps:
30
- - id: pick
31
- env:
32
- GH_TOKEN: ${{ github.token }}
33
- EVENT: ${{ github.event_name }}
34
- BASE: ${{ github.base_ref }}
35
- REF: ${{ github.ref_name }}
36
- REF_TYPE: ${{ github.ref_type }}
37
- PR: ${{ github.event.pull_request.number }}
38
- REPO: ${{ github.repository }}
39
- run: |
40
- set -euo pipefail
41
- # #474: no browser audit on any PR, push or tag; screens-sweep.yml runs it nightly.
42
- run=false; full=false
43
- echo "run=$run full=$full"
44
- { echo "run=$run"; echo "full=$full"; } >> "$GITHUB_OUTPUT"
45
- screens:
46
- needs: changes
47
- # Fail closed (MMI-Hub, 6 Oct): a SKIPPED required check counts as passing, so this job runs even when
48
- # `changes` failed, and a missing answer means the full audit, never a skip.
49
- if: ${{ !cancelled() }}
50
- uses: mutmutco/MM-Work/.github/workflows/module-screens.yml@development
51
- with:
52
- run: ${{ needs.changes.outputs.run != 'false' }}
53
- audit-sizes: ${{ needs.changes.outputs.full != 'false' && '["phone","768","1024","1280"]' || '["phone"]' }}
54
- # Pinned to the shell built from the kit this module ships (ds-v0.71.42): the runner MM-Work
55
- # published with that kit; bump with the kit.
56
- # 0.1.55+ checks MM-Work #1575: selectedStyle, pageBackground, noJump (#418).
57
- screens-version: '0.1.113'
58
- working-directory: 'module'
59
- build-command: 'npm run build'
60
- bundle-path: 'dist/module.js'
61
- fixtures-path: 'screens/screens.json'
62
- # Every screen in English and Turkish (#369): Turkish words run longer, so they get their own audit.
63
- languages: 'en,tr'