@opengsd/gsd-pi 1.2.0-dev.5457a158 → 1.2.0-dev.84c56d87

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.
Files changed (135) hide show
  1. package/dist/resources/.managed-resources-content-hash +1 -1
  2. package/dist/resources/extensions/browser-tools/engine/managed-gsd-browser.js +209 -88
  3. package/dist/resources/extensions/browser-tools/engine/selection.js +73 -5
  4. package/dist/resources/extensions/browser-tools/index.js +69 -12
  5. package/dist/resources/extensions/claude-code-cli/stream-adapter.js +3 -2
  6. package/dist/resources/extensions/gsd/bootstrap/register-extension.js +19 -0
  7. package/dist/resources/extensions/gsd/bootstrap/register-hooks.js +27 -9
  8. package/dist/resources/extensions/gsd/browser-evidence.js +8 -2
  9. package/dist/resources/extensions/gsd/mcp-filter.js +2 -19
  10. package/dist/resources/extensions/gsd/uat-policy.js +2 -1
  11. package/dist/resources/extensions/gsd/unit-registry.js +7 -20
  12. package/dist/resources/extensions/gsd/web-app-uat.js +45 -8
  13. package/dist/resources/extensions/search-the-web/native-search.js +5 -3
  14. package/dist/resources/extensions/shared/browser-contract.js +59 -0
  15. package/dist/resources/extensions/shared/gsd-browser-cli.js +72 -4
  16. package/dist/resources/skills/create-skill/references/executable-code.md +1 -1
  17. package/dist/resources/skills/create-skill/workflows/add-reference.md +8 -3
  18. package/dist/resources/skills/create-skill/workflows/add-script.md +4 -2
  19. package/dist/resources/skills/create-skill/workflows/add-template.md +3 -1
  20. package/dist/resources/skills/create-skill/workflows/add-workflow.md +8 -3
  21. package/dist/resources/skills/create-skill/workflows/upgrade-to-router.md +10 -5
  22. package/dist/resources/skills/create-skill/workflows/verify-skill.md +9 -4
  23. package/dist/resources/skills/spike-wrap-up/SKILL.md +9 -9
  24. package/dist/tsconfig.extensions.tsbuildinfo +1 -1
  25. package/dist/web/standalone/.next/BUILD_ID +1 -1
  26. package/dist/web/standalone/.next/app-path-routes-manifest.json +9 -9
  27. package/dist/web/standalone/.next/build-manifest.json +2 -2
  28. package/dist/web/standalone/.next/prerender-manifest.json +3 -3
  29. package/dist/web/standalone/.next/server/app/_global-error.html +1 -1
  30. package/dist/web/standalone/.next/server/app/_global-error.rsc +1 -1
  31. package/dist/web/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  32. package/dist/web/standalone/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  33. package/dist/web/standalone/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  34. package/dist/web/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  35. package/dist/web/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  36. package/dist/web/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  37. package/dist/web/standalone/.next/server/app/_not-found.html +1 -1
  38. package/dist/web/standalone/.next/server/app/_not-found.rsc +1 -1
  39. package/dist/web/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  40. package/dist/web/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  41. package/dist/web/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
  42. package/dist/web/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  43. package/dist/web/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  44. package/dist/web/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  45. package/dist/web/standalone/.next/server/app/index.html +1 -1
  46. package/dist/web/standalone/.next/server/app/index.rsc +1 -1
  47. package/dist/web/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  48. package/dist/web/standalone/.next/server/app/index.segments/_full.segment.rsc +1 -1
  49. package/dist/web/standalone/.next/server/app/index.segments/_head.segment.rsc +1 -1
  50. package/dist/web/standalone/.next/server/app/index.segments/_index.segment.rsc +1 -1
  51. package/dist/web/standalone/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  52. package/dist/web/standalone/.next/server/app-paths-manifest.json +9 -9
  53. package/dist/web/standalone/.next/server/chunks/8357.js +1 -1
  54. package/dist/web/standalone/.next/server/middleware-build-manifest.js +1 -1
  55. package/dist/web/standalone/.next/server/pages/404.html +1 -1
  56. package/dist/web/standalone/.next/server/pages/500.html +1 -1
  57. package/dist/web/standalone/.next/server/server-reference-manifest.json +1 -1
  58. package/dist/web/standalone/node_modules/node-pty/build/Makefile +1 -1
  59. package/dist/web/standalone/node_modules/postcss/lib/container.js +18 -26
  60. package/dist/web/standalone/node_modules/postcss/lib/css-syntax-error.js +14 -47
  61. package/dist/web/standalone/node_modules/postcss/lib/declaration.js +4 -4
  62. package/dist/web/standalone/node_modules/postcss/lib/fromJSON.js +3 -3
  63. package/dist/web/standalone/node_modules/postcss/lib/input.js +29 -54
  64. package/dist/web/standalone/node_modules/postcss/lib/lazy-result.js +37 -47
  65. package/dist/web/standalone/node_modules/postcss/lib/map-generator.js +9 -26
  66. package/dist/web/standalone/node_modules/postcss/lib/no-work-result.js +55 -57
  67. package/dist/web/standalone/node_modules/postcss/lib/node.js +31 -99
  68. package/dist/web/standalone/node_modules/postcss/lib/parse.js +1 -1
  69. package/dist/web/standalone/node_modules/postcss/lib/parser.js +9 -10
  70. package/dist/web/standalone/node_modules/postcss/lib/postcss.js +12 -12
  71. package/dist/web/standalone/node_modules/postcss/lib/previous-map.js +11 -30
  72. package/dist/web/standalone/node_modules/postcss/lib/processor.js +7 -7
  73. package/dist/web/standalone/node_modules/postcss/lib/result.js +5 -5
  74. package/dist/web/standalone/node_modules/postcss/lib/rule.js +6 -6
  75. package/dist/web/standalone/node_modules/postcss/lib/stringifier.js +28 -69
  76. package/dist/web/standalone/node_modules/postcss/lib/tokenize.js +2 -6
  77. package/dist/web/standalone/node_modules/postcss/package.json +48 -48
  78. package/dist/web/standalone/package.json +1 -1
  79. package/package.json +1 -1
  80. package/packages/cloud-mcp-gateway/package.json +2 -2
  81. package/packages/contracts/package.json +1 -1
  82. package/packages/daemon/package.json +4 -4
  83. package/packages/gsd-agent-core/package.json +5 -5
  84. package/packages/gsd-agent-modes/package.json +7 -7
  85. package/packages/mcp-server/package.json +3 -3
  86. package/packages/native/package.json +1 -1
  87. package/packages/pi-agent-core/package.json +1 -1
  88. package/packages/pi-ai/dist/models.generated.d.ts +66 -178
  89. package/packages/pi-ai/dist/models.generated.d.ts.map +1 -1
  90. package/packages/pi-ai/dist/models.generated.js +116 -204
  91. package/packages/pi-ai/dist/models.generated.js.map +1 -1
  92. package/packages/pi-ai/package.json +1 -1
  93. package/packages/pi-coding-agent/package.json +7 -7
  94. package/packages/pi-tui/dist/tui.d.ts.map +1 -1
  95. package/packages/pi-tui/dist/tui.js +9 -0
  96. package/packages/pi-tui/dist/tui.js.map +1 -1
  97. package/packages/pi-tui/package.json +2 -2
  98. package/packages/rpc-client/package.json +2 -2
  99. package/pkg/package.json +1 -1
  100. package/src/resources/extensions/browser-tools/engine/managed-gsd-browser.ts +265 -98
  101. package/src/resources/extensions/browser-tools/engine/selection.ts +90 -4
  102. package/src/resources/extensions/browser-tools/index.ts +71 -13
  103. package/src/resources/extensions/browser-tools/tests/browser-engine-selection.test.mjs +83 -13
  104. package/src/resources/extensions/browser-tools/tests/managed-gsd-browser-tools.test.mjs +136 -0
  105. package/src/resources/extensions/claude-code-cli/stream-adapter.ts +3 -2
  106. package/src/resources/extensions/gsd/bootstrap/register-extension.ts +24 -0
  107. package/src/resources/extensions/gsd/bootstrap/register-hooks.ts +48 -4
  108. package/src/resources/extensions/gsd/browser-evidence.ts +18 -2
  109. package/src/resources/extensions/gsd/mcp-filter.ts +2 -23
  110. package/src/resources/extensions/gsd/tests/browser-automation-contract-fixture.ts +39 -0
  111. package/src/resources/extensions/gsd/tests/browser-contract.test.ts +44 -0
  112. package/src/resources/extensions/gsd/tests/dispatch-run-uat-browser-tools.test.ts +2 -1
  113. package/src/resources/extensions/gsd/tests/extension-bootstrap-isolation.test.ts +35 -1
  114. package/src/resources/extensions/gsd/tests/integration/auto-worktree-milestone-merge.test.ts +7 -11
  115. package/src/resources/extensions/gsd/tests/integration/auto-worktree.test.ts +20 -58
  116. package/src/resources/extensions/gsd/tests/integration/gsd-integration-fixture.ts +80 -0
  117. package/src/resources/extensions/gsd/tests/token-tool-gating.test.ts +35 -0
  118. package/src/resources/extensions/gsd/tests/uat-policy.test.ts +24 -29
  119. package/src/resources/extensions/gsd/tests/web-app-uat.test.ts +44 -1
  120. package/src/resources/extensions/gsd/uat-policy.ts +2 -1
  121. package/src/resources/extensions/gsd/unit-registry.ts +7 -20
  122. package/src/resources/extensions/gsd/web-app-uat.ts +51 -8
  123. package/src/resources/extensions/search-the-web/native-search.ts +5 -3
  124. package/src/resources/extensions/shared/browser-contract.ts +66 -0
  125. package/src/resources/extensions/shared/gsd-browser-cli.ts +88 -4
  126. package/src/resources/skills/create-skill/references/executable-code.md +1 -1
  127. package/src/resources/skills/create-skill/workflows/add-reference.md +8 -3
  128. package/src/resources/skills/create-skill/workflows/add-script.md +4 -2
  129. package/src/resources/skills/create-skill/workflows/add-template.md +3 -1
  130. package/src/resources/skills/create-skill/workflows/add-workflow.md +8 -3
  131. package/src/resources/skills/create-skill/workflows/upgrade-to-router.md +10 -5
  132. package/src/resources/skills/create-skill/workflows/verify-skill.md +9 -4
  133. package/src/resources/skills/spike-wrap-up/SKILL.md +9 -9
  134. /package/dist/web/standalone/.next/static/{2p9Rv9pQflAxCBbGVI2vb → AOpDeK_gJHU8OZjRo31gQ}/_buildManifest.js +0 -0
  135. /package/dist/web/standalone/.next/static/{2p9Rv9pQflAxCBbGVI2vb → AOpDeK_gJHU8OZjRo31gQ}/_ssgManifest.js +0 -0
@@ -1,13 +1,13 @@
1
1
  'use strict'
2
2
 
3
- let Document = require('./document')
4
- let LazyResult = require('./lazy-result')
5
3
  let NoWorkResult = require('./no-work-result')
4
+ let LazyResult = require('./lazy-result')
5
+ let Document = require('./document')
6
6
  let Root = require('./root')
7
7
 
8
8
  class Processor {
9
9
  constructor(plugins = []) {
10
- this.version = '8.5.12'
10
+ this.version = '8.4.31'
11
11
  this.plugins = this.normalize(plugins)
12
12
  }
13
13
 
@@ -43,10 +43,10 @@ class Processor {
43
43
 
44
44
  process(css, opts = {}) {
45
45
  if (
46
- !this.plugins.length &&
47
- !opts.parser &&
48
- !opts.stringifier &&
49
- !opts.syntax
46
+ this.plugins.length === 0 &&
47
+ typeof opts.parser === 'undefined' &&
48
+ typeof opts.stringifier === 'undefined' &&
49
+ typeof opts.syntax === 'undefined'
50
50
  ) {
51
51
  return new NoWorkResult(this, css, opts)
52
52
  } else {
@@ -3,16 +3,12 @@
3
3
  let Warning = require('./warning')
4
4
 
5
5
  class Result {
6
- get content() {
7
- return this.css
8
- }
9
-
10
6
  constructor(processor, root, opts) {
11
7
  this.processor = processor
12
8
  this.messages = []
13
9
  this.root = root
14
10
  this.opts = opts
15
- this.css = ''
11
+ this.css = undefined
16
12
  this.map = undefined
17
13
  }
18
14
 
@@ -36,6 +32,10 @@ class Result {
36
32
  warnings() {
37
33
  return this.messages.filter(i => i.type === 'warning')
38
34
  }
35
+
36
+ get content() {
37
+ return this.css
38
+ }
39
39
  }
40
40
 
41
41
  module.exports = Result
@@ -4,6 +4,12 @@ let Container = require('./container')
4
4
  let list = require('./list')
5
5
 
6
6
  class Rule extends Container {
7
+ constructor(defaults) {
8
+ super(defaults)
9
+ this.type = 'rule'
10
+ if (!this.nodes) this.nodes = []
11
+ }
12
+
7
13
  get selectors() {
8
14
  return list.comma(this.selector)
9
15
  }
@@ -13,12 +19,6 @@ class Rule extends Container {
13
19
  let sep = match ? match[0] : ',' + this.raw('between', 'beforeOpen')
14
20
  this.selector = values.join(sep)
15
21
  }
16
-
17
- constructor(defaults) {
18
- super(defaults)
19
- this.type = 'rule'
20
- if (!this.nodes) this.nodes = []
21
- }
22
22
  }
23
23
 
24
24
  module.exports = Rule
@@ -1,17 +1,5 @@
1
1
  'use strict'
2
2
 
3
- // Escapes sequences that could break out of an HTML <style> context.
4
- // Uses CSS unicode escaping (\3c = '<') which is valid CSS and parsed
5
- // correctly by all compliant CSS consumers.
6
- const STYLE_TAG = /(<)(\/?style\b)/gi
7
- const COMMENT_OPEN = /(<)(!--)/g
8
-
9
- function escapeHTMLInCSS(str) {
10
- if (typeof str !== 'string') return str
11
- if (!str.includes('<')) return str
12
- return str.replace(STYLE_TAG, '\\3c $2').replace(COMMENT_OPEN, '\\3c $2')
13
- }
14
-
15
3
  const DEFAULT_RAW = {
16
4
  after: '\n',
17
5
  beforeClose: '\n',
@@ -37,12 +25,11 @@ class Stringifier {
37
25
  }
38
26
 
39
27
  atrule(node, semicolon) {
40
- let raws = node.raws
41
28
  let name = '@' + node.name
42
29
  let params = node.params ? this.rawValue(node, 'params') : ''
43
30
 
44
- if (typeof raws.afterName !== 'undefined') {
45
- name += raws.afterName
31
+ if (typeof node.raws.afterName !== 'undefined') {
32
+ name += node.raws.afterName
46
33
  } else if (params) {
47
34
  name += ' '
48
35
  }
@@ -50,8 +37,8 @@ class Stringifier {
50
37
  if (node.nodes) {
51
38
  this.block(node, name + params)
52
39
  } else {
53
- let end = (raws.between || '') + (semicolon ? ';' : '')
54
- this.builder(escapeHTMLInCSS(name + params + end), node)
40
+ let end = (node.raws.between || '') + (semicolon ? ';' : '')
41
+ this.builder(name + params + end, node)
55
42
  }
56
43
  }
57
44
 
@@ -85,77 +72,53 @@ class Stringifier {
85
72
  }
86
73
 
87
74
  block(node, start) {
88
- let raws = node.raws
89
- let between = typeof raws.between !== 'undefined'
90
- ? raws.between
91
- : this.raw(node, 'between', 'beforeOpen')
92
- this.builder(escapeHTMLInCSS(start + between) + '{', node, 'start')
75
+ let between = this.raw(node, 'between', 'beforeOpen')
76
+ this.builder(start + between + '{', node, 'start')
93
77
 
94
78
  let after
95
79
  if (node.nodes && node.nodes.length) {
96
80
  this.body(node)
97
- after = typeof raws.after !== 'undefined'
98
- ? raws.after
99
- : this.raw(node, 'after')
81
+ after = this.raw(node, 'after')
100
82
  } else {
101
- after = typeof raws.after !== 'undefined'
102
- ? raws.after
103
- : this.raw(node, 'after', 'emptyBody')
83
+ after = this.raw(node, 'after', 'emptyBody')
104
84
  }
105
85
 
106
- if (after) this.builder(escapeHTMLInCSS(after))
86
+ if (after) this.builder(after)
107
87
  this.builder('}', node, 'end')
108
88
  }
109
89
 
110
90
  body(node) {
111
- let nodes = node.nodes
112
- let last = nodes.length - 1
91
+ let last = node.nodes.length - 1
113
92
  while (last > 0) {
114
- if (nodes[last].type !== 'comment') break
93
+ if (node.nodes[last].type !== 'comment') break
115
94
  last -= 1
116
95
  }
117
96
 
118
97
  let semicolon = this.raw(node, 'semicolon')
119
- let isDocument = node.type === 'document'
120
- for (let i = 0; i < nodes.length; i++) {
121
- let child = nodes[i]
122
- let before = child.raws.before
123
- if (typeof before === 'undefined') {
124
- before = this.raw(child, 'before')
125
- }
126
- if (before) this.builder(isDocument ? before : escapeHTMLInCSS(before))
98
+ for (let i = 0; i < node.nodes.length; i++) {
99
+ let child = node.nodes[i]
100
+ let before = this.raw(child, 'before')
101
+ if (before) this.builder(before)
127
102
  this.stringify(child, last !== i || semicolon)
128
103
  }
129
104
  }
130
105
 
131
106
  comment(node) {
132
- let raws = node.raws
133
- let left = typeof raws.left !== 'undefined'
134
- ? raws.left
135
- : this.raw(node, 'left', 'commentLeft')
136
- let right = typeof raws.right !== 'undefined'
137
- ? raws.right
138
- : this.raw(node, 'right', 'commentRight')
139
- this.builder(escapeHTMLInCSS('/*' + left + node.text + right + '*/'), node)
107
+ let left = this.raw(node, 'left', 'commentLeft')
108
+ let right = this.raw(node, 'right', 'commentRight')
109
+ this.builder('/*' + left + node.text + right + '*/', node)
140
110
  }
141
111
 
142
112
  decl(node, semicolon) {
143
- let raws = node.raws
144
- let between = typeof raws.between !== 'undefined'
145
- ? raws.between
146
- : this.raw(node, 'between', 'colon')
147
-
148
- let rawVal = raws.value
149
- let value = rawVal && rawVal.value === node.value ? rawVal.raw : node.value
150
-
151
- let string = node.prop + between + value
113
+ let between = this.raw(node, 'between', 'colon')
114
+ let string = node.prop + between + this.rawValue(node, 'value')
152
115
 
153
116
  if (node.important) {
154
- string += raws.important || ' !important'
117
+ string += node.raws.important || ' !important'
155
118
  }
156
119
 
157
120
  if (semicolon) string += ';'
158
- this.builder(escapeHTMLInCSS(string), node)
121
+ this.builder(string, node)
159
122
  }
160
123
 
161
124
  document(node) {
@@ -191,9 +154,9 @@ class Stringifier {
191
154
 
192
155
  // Detect style by other nodes
193
156
  let root = node.root()
194
- let cache = root.rawCache || (root.rawCache = {})
195
- if (typeof cache[detect] !== 'undefined') {
196
- return cache[detect]
157
+ if (!root.rawCache) root.rawCache = {}
158
+ if (typeof root.rawCache[detect] !== 'undefined') {
159
+ return root.rawCache[detect]
197
160
  }
198
161
 
199
162
  if (detect === 'before' || detect === 'after') {
@@ -212,7 +175,7 @@ class Stringifier {
212
175
 
213
176
  if (typeof value === 'undefined') value = DEFAULT_RAW[detect]
214
177
 
215
- cache[detect] = value
178
+ root.rawCache[detect] = value
216
179
  return value
217
180
  }
218
181
 
@@ -361,17 +324,13 @@ class Stringifier {
361
324
 
362
325
  root(node) {
363
326
  this.body(node)
364
- if (node.raws.after) {
365
- let after = node.raws.after
366
- let isDocument = node.parent && node.parent.type === 'document'
367
- this.builder(isDocument ? after : escapeHTMLInCSS(after))
368
- }
327
+ if (node.raws.after) this.builder(node.raws.after)
369
328
  }
370
329
 
371
330
  rule(node) {
372
331
  this.block(node, this.rawValue(node, 'selector'))
373
332
  if (node.raws.ownSemicolon) {
374
- this.builder(escapeHTMLInCSS(node.raws.ownSemicolon), node, 'end')
333
+ this.builder(node.raws.ownSemicolon, node, 'end')
375
334
  }
376
335
  }
377
336
 
@@ -29,14 +29,13 @@ module.exports = function tokenizer(input, options = {}) {
29
29
  let css = input.css.valueOf()
30
30
  let ignore = options.ignoreErrors
31
31
 
32
- let code, content, escape, next, quote
33
- let currentToken, escaped, escapePos, n, prev
32
+ let code, next, quote, content, escape
33
+ let escaped, escapePos, prev, n, currentToken
34
34
 
35
35
  let length = css.length
36
36
  let pos = 0
37
37
  let buffer = []
38
38
  let returned = []
39
- let lastBadParen = -1
40
39
 
41
40
  function position() {
42
41
  return pos
@@ -128,14 +127,11 @@ module.exports = function tokenizer(input, options = {}) {
128
127
  currentToken = ['brackets', css.slice(pos, next + 1), pos, next]
129
128
 
130
129
  pos = next
131
- } else if (pos <= lastBadParen) {
132
- currentToken = ['(', '(', pos]
133
130
  } else {
134
131
  next = css.indexOf(')', pos + 1)
135
132
  content = css.slice(pos, next + 1)
136
133
 
137
134
  if (next === -1 || RE_BAD_BRACKET.test(content)) {
138
- lastBadParen = next === -1 ? length : next
139
135
  currentToken = ['(', '(', pos]
140
136
  } else {
141
137
  currentToken = ['brackets', content, pos, next]
@@ -1,52 +1,14 @@
1
1
  {
2
2
  "name": "postcss",
3
- "version": "8.5.12",
3
+ "version": "8.4.31",
4
4
  "description": "Tool for transforming styles with JS plugins",
5
- "keywords": [
6
- "css",
7
- "manipulation",
8
- "parser",
9
- "postcss",
10
- "preprocessor",
11
- "rework",
12
- "source map",
13
- "transform",
14
- "transpiler"
15
- ],
16
- "homepage": "https://postcss.org/",
17
- "bugs": {
18
- "url": "https://github.com/postcss/postcss/issues"
19
- },
20
- "license": "MIT",
21
- "author": "Andrey Sitnik <andrey@sitnik.es>",
22
- "repository": "postcss/postcss",
23
- "funding": [
24
- {
25
- "type": "opencollective",
26
- "url": "https://opencollective.com/postcss/"
27
- },
28
- {
29
- "type": "tidelift",
30
- "url": "https://tidelift.com/funding/github/npm/postcss"
31
- },
32
- {
33
- "type": "github",
34
- "url": "https://github.com/sponsors/ai"
35
- }
36
- ],
37
- "main": "./lib/postcss.js",
38
- "browser": {
39
- "./lib/terminal-highlight": false,
40
- "source-map-js": false,
41
- "path": false,
42
- "url": false,
43
- "fs": false
5
+ "engines": {
6
+ "node": "^10 || ^12 || >=14"
44
7
  },
45
- "types": "./lib/postcss.d.ts",
46
8
  "exports": {
47
9
  ".": {
48
- "import": "./lib/postcss.mjs",
49
- "require": "./lib/postcss.js"
10
+ "require": "./lib/postcss.js",
11
+ "import": "./lib/postcss.mjs"
50
12
  },
51
13
  "./lib/at-rule": "./lib/at-rule.js",
52
14
  "./lib/comment": "./lib/comment.js",
@@ -77,12 +39,50 @@
77
39
  "./lib/warning": "./lib/warning.js",
78
40
  "./package.json": "./package.json"
79
41
  },
42
+ "main": "./lib/postcss.js",
43
+ "types": "./lib/postcss.d.ts",
44
+ "keywords": [
45
+ "css",
46
+ "postcss",
47
+ "rework",
48
+ "preprocessor",
49
+ "parser",
50
+ "source map",
51
+ "transform",
52
+ "manipulation",
53
+ "transpiler"
54
+ ],
55
+ "funding": [
56
+ {
57
+ "type": "opencollective",
58
+ "url": "https://opencollective.com/postcss/"
59
+ },
60
+ {
61
+ "type": "tidelift",
62
+ "url": "https://tidelift.com/funding/github/npm/postcss"
63
+ },
64
+ {
65
+ "type": "github",
66
+ "url": "https://github.com/sponsors/ai"
67
+ }
68
+ ],
69
+ "author": "Andrey Sitnik <andrey@sitnik.ru>",
70
+ "license": "MIT",
71
+ "homepage": "https://postcss.org/",
72
+ "repository": "postcss/postcss",
73
+ "bugs": {
74
+ "url": "https://github.com/postcss/postcss/issues"
75
+ },
80
76
  "dependencies": {
81
- "nanoid": "^3.3.11",
82
- "picocolors": "^1.1.1",
83
- "source-map-js": "^1.2.1"
77
+ "nanoid": "^3.3.6",
78
+ "picocolors": "^1.0.0",
79
+ "source-map-js": "^1.0.2"
84
80
  },
85
- "engines": {
86
- "node": "^10 || ^12 || >=14"
81
+ "browser": {
82
+ "./lib/terminal-highlight": false,
83
+ "source-map-js": false,
84
+ "path": false,
85
+ "url": false,
86
+ "fs": false
87
87
  }
88
88
  }
@@ -82,7 +82,7 @@
82
82
  "esbuild": "^0.27.4",
83
83
  "eslint": "^9.38.0",
84
84
  "eslint-config-next": "16.2.4",
85
- "postcss": "8.5.12",
85
+ "postcss": "^8.5.10",
86
86
  "tailwindcss": "^4.2.4",
87
87
  "tw-animate-css": "1.3.3",
88
88
  "typescript": "5.7.3"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opengsd/gsd-pi",
3
- "version": "1.2.0-dev.5457a158",
3
+ "version": "1.2.0-dev.84c56d87",
4
4
  "description": "GSD Pi local-first coding agent",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opengsd/cloud-mcp-gateway",
3
- "version": "1.2.0-dev.5457a158",
3
+ "version": "1.2.0-dev.84c56d87",
4
4
  "description": "Cloud MCP gateway for brokering remote MCP clients to local GSD runtimes",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -29,7 +29,7 @@
29
29
  },
30
30
  "dependencies": {
31
31
  "@modelcontextprotocol/sdk": "^1.27.1",
32
- "@opengsd/mcp-server": "^1.2.0-dev.5457a158",
32
+ "@opengsd/mcp-server": "^1.2.0-dev.84c56d87",
33
33
  "ws": "^8.20.0",
34
34
  "zod": "^4.0.0"
35
35
  },
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opengsd/contracts",
3
- "version": "1.2.0-dev.5457a158",
3
+ "version": "1.2.0-dev.84c56d87",
4
4
  "description": "Shared public contracts for GSD workspace boundaries",
5
5
  "license": "MIT",
6
6
  "gsd": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opengsd/daemon",
3
- "version": "1.2.0-dev.5457a158",
3
+ "version": "1.2.0-dev.84c56d87",
4
4
  "description": "GSD daemon — background process for project monitoring and Discord integration",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -31,9 +31,9 @@
31
31
  },
32
32
  "dependencies": {
33
33
  "@anthropic-ai/sdk": "^0.52.0",
34
- "@opengsd/contracts": "^1.2.0-dev.5457a158",
35
- "@opengsd/mcp-server": "^1.2.0-dev.5457a158",
36
- "@opengsd/rpc-client": "^1.2.0-dev.5457a158",
34
+ "@opengsd/contracts": "^1.2.0-dev.84c56d87",
35
+ "@opengsd/mcp-server": "^1.2.0-dev.84c56d87",
36
+ "@opengsd/rpc-client": "^1.2.0-dev.84c56d87",
37
37
  "discord.js": "^14.25.1",
38
38
  "ws": "^8.20.0",
39
39
  "yaml": "^2.8.0",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gsd/agent-core",
3
- "version": "1.2.0-dev.5457a158",
3
+ "version": "1.2.0-dev.84c56d87",
4
4
  "description": "GSD session orchestration layer on top of @gsd/pi-coding-agent",
5
5
  "type": "module",
6
6
  "gsd": {
@@ -25,9 +25,9 @@
25
25
  "test": "node --import ../../src/resources/extensions/gsd/tests/resolve-ts.mjs --experimental-strip-types --test src/*.test.ts src/**/*.test.ts"
26
26
  },
27
27
  "dependencies": {
28
- "@gsd/native": "^1.2.0-dev.5457a158",
29
- "@gsd/pi-agent-core": "^1.2.0-dev.5457a158",
30
- "@gsd/pi-ai": "^1.2.0-dev.5457a158",
31
- "@gsd/pi-coding-agent": "^1.2.0-dev.5457a158"
28
+ "@gsd/native": "^1.2.0-dev.84c56d87",
29
+ "@gsd/pi-agent-core": "^1.2.0-dev.84c56d87",
30
+ "@gsd/pi-ai": "^1.2.0-dev.84c56d87",
31
+ "@gsd/pi-coding-agent": "^1.2.0-dev.84c56d87"
32
32
  }
33
33
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gsd/agent-modes",
3
- "version": "1.2.0-dev.5457a158",
3
+ "version": "1.2.0-dev.84c56d87",
4
4
  "description": "GSD run modes and CLI layer",
5
5
  "type": "module",
6
6
  "gsd": {
@@ -25,12 +25,12 @@
25
25
  "test": "node --import ../../src/resources/extensions/gsd/tests/resolve-ts.mjs --experimental-strip-types --test src/**/*.test.ts"
26
26
  },
27
27
  "dependencies": {
28
- "@gsd/agent-core": "^1.2.0-dev.5457a158",
29
- "@gsd/pi-agent-core": "^1.2.0-dev.5457a158",
30
- "@gsd/pi-ai": "^1.2.0-dev.5457a158",
31
- "@gsd/pi-coding-agent": "^1.2.0-dev.5457a158",
32
- "@gsd/pi-tui": "^1.2.0-dev.5457a158",
33
- "@opengsd/contracts": "^1.2.0-dev.5457a158",
28
+ "@gsd/agent-core": "^1.2.0-dev.84c56d87",
29
+ "@gsd/pi-agent-core": "^1.2.0-dev.84c56d87",
30
+ "@gsd/pi-ai": "^1.2.0-dev.84c56d87",
31
+ "@gsd/pi-coding-agent": "^1.2.0-dev.84c56d87",
32
+ "@gsd/pi-tui": "^1.2.0-dev.84c56d87",
33
+ "@opengsd/contracts": "^1.2.0-dev.84c56d87",
34
34
  "chalk": "^5.5.0"
35
35
  }
36
36
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opengsd/mcp-server",
3
- "version": "1.2.0-dev.5457a158",
3
+ "version": "1.2.0-dev.84c56d87",
4
4
  "description": "MCP server exposing GSD orchestration tools for compatible clients",
5
5
  "license": "MIT",
6
6
  "gsd": {
@@ -34,8 +34,8 @@
34
34
  "test": "pnpm run build:test && node --test dist/mcp-server.test.js dist/remote-questions.test.js"
35
35
  },
36
36
  "dependencies": {
37
- "@opengsd/contracts": "^1.2.0-dev.5457a158",
38
- "@opengsd/rpc-client": "^1.2.0-dev.5457a158",
37
+ "@opengsd/contracts": "^1.2.0-dev.84c56d87",
38
+ "@opengsd/rpc-client": "^1.2.0-dev.84c56d87",
39
39
  "@modelcontextprotocol/sdk": "^1.27.1",
40
40
  "zod": "^4.0.0"
41
41
  },
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gsd/native",
3
- "version": "1.2.0-dev.5457a158",
3
+ "version": "1.2.0-dev.84c56d87",
4
4
  "description": "Native Rust bindings for GSD — high-performance native modules via N-API",
5
5
  "type": "commonjs",
6
6
  "gsd": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gsd/pi-agent-core",
3
- "version": "1.2.0-dev.5457a158",
3
+ "version": "1.2.0-dev.84c56d87",
4
4
  "description": "General-purpose agent with transport abstraction, state management, and attachment support",
5
5
  "type": "module",
6
6
  "gsd": {