pi-browser-taskbar-rails 0.2.0 → 0.3.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6d94395b639373e05d1db317eb6d2fdaefb0dd304b35097e67c99531cd3ce352
4
- data.tar.gz: 7d8ccd48d500a75a5ff784638cbf102f3051f3f4e26a1f3371347946ff07d251
3
+ metadata.gz: 3b750fd47248574ad45470f4a8065badc28b77edc7cac4efd993eb43754e9693
4
+ data.tar.gz: 9275b69333ffbd5288066e8790b0f7c8a9d867f1a51604bd5ab947560d9ffcad
5
5
  SHA512:
6
- metadata.gz: 55336ed57493a893fe6949e5fe389a27683859d0ef1d9150575000e0e4f7e9ab52a5cc4cac96a6bddf3beffd545a20f6e1370f3ed77de627503dd6a6b252920d
7
- data.tar.gz: abbeaa5c89536c8cf682c9aa80532d7915a23221e424c780c5dadb2d4ea73a48e5b14eaf22368c378b89219b3073a92bf29ab4e9531cf6bf12b7726d052dd13c
6
+ metadata.gz: 60c2ac05c3d068c133899b7aaec1785074f4db9596d008481911a0e9f5de8374b911a9f04421b51139a014f0c1b6a9f60e43437257741e3799887bfbc9205362
7
+ data.tar.gz: dcdd2d838d4511b405b4fb37e733314a64c5d629cb37e5dbe9f253a39975779157bfc35673147f7da08b80f51a83bd28953e181d8781aa07382b40e81ccd933e
data/CHANGELOG.md CHANGED
@@ -1,6 +1,10 @@
1
1
  # Rails adapter changelog
2
2
 
3
- ## 0.2.0 - Unreleased
3
+ ## 0.3.0 - Unreleased
4
+
5
+ - Run Pi with a fixed one-shot policy that acts without a conversational reply channel.
6
+
7
+ ## 0.2.0 - 2026-08-03
4
8
 
5
9
  - Refresh the active Rails page once after observing a successful task completion.
6
10
  - Remove generated `defined?` guards and centralize taskbar activation in the ERB layout helper.
data/README.md CHANGED
@@ -12,7 +12,7 @@ Add the matching product version to the development group:
12
12
 
13
13
  ```ruby
14
14
  group :development do
15
- gem "pi-browser-taskbar-rails", "~> 0.2.0", require: "pi/browser/taskbar/rails"
15
+ gem "pi-browser-taskbar-rails", "~> 0.3.0", require: "pi/browser/taskbar/rails"
16
16
  end
17
17
  ```
18
18
 
@@ -71,8 +71,9 @@ scenarios and stable selectors.
71
71
  ## Diagnosis
72
72
 
73
73
  If the launcher is absent, confirm Rails is in development, the generated route and layout markers
74
- remain intact, and the initializer has not disabled the adapter. If it is unavailable, run `pi
75
- --mode rpc` from the configured project root and inspect only the adapter's safe diagnostics. For
74
+ remain intact, and the initializer has not disabled the adapter. If it is unavailable, run
75
+ `pi --mode rpc --append-system-prompt "one-shot probe"` from the configured project root and inspect
76
+ only the adapter's safe diagnostics. For
76
77
  host, CSRF, source-hint, busy, and cancellation symptoms, use the packaged [troubleshooting guide](docs/troubleshooting.md).
77
78
 
78
79
  ## Updates
@@ -105,6 +106,6 @@ ERB/Turbo example.
105
106
 
106
107
  ## Matching-version contract
107
108
 
108
- This adapter version is `0.2.0`. Use the same product version shown by the Phoenix adapter and the
109
+ This adapter version is `0.3.0`. Use the same product version shown by the Phoenix adapter and the
109
110
  root `VERSION`; the packaged [Conformance Contract](contract/docs/index.md) is the offline normative
110
111
  reference for both adapters.
@@ -41,10 +41,17 @@ Browser requests cannot select or override the executable, `--mode rpc` argument
41
41
  environment, working directory, timeout, protocol bounds, route behavior, or security behavior.
42
42
 
43
43
  Adapters resolve the configured project root to an existing canonical directory and spawn the
44
- configured executable directly, without a shell, as `executable --mode rpc` in that directory. Pi
45
- inherits the development server environment unchanged. A missing or non-executable command produces
46
- only the sanitized unavailable session state; the optional adapter failure does not prevent either
47
- host application from booting.
44
+ configured executable directly, without a shell, as `executable --mode rpc
45
+ --append-system-prompt <one-shot policy>` in that directory. The fixed policy says:
46
+
47
+ ```text
48
+ You are handling a one-shot browser task with no reply channel. Complete the user's request autonomously without asking follow-up questions. Inspect the repository and use the supplied browser context. Resolve missing details with conservative assumptions. Act directly on implementation requests, but preserve explicit planning and read-only constraints. Do not repeat a failed approach unchanged. If safe completion is impossible, stop and report the exact blocker.
49
+ ```
50
+
51
+ This addition preserves Pi's normal project-root context, tools, skills, model, and settings while
52
+ making the non-conversational execution boundary explicit. Pi inherits the development server
53
+ environment unchanged. A missing or non-executable command produces only the sanitized unavailable
54
+ session state; the optional adapter failure does not prevent either host application from booting.
48
55
 
49
56
  ## Remote development access and diagnostics
50
57
 
@@ -13,7 +13,8 @@ and supervise its generated integration immediately before the endpoint.
13
13
 
14
14
  ## Launcher says Unavailable
15
15
 
16
- From the configured project root, confirm the configured executable can start as `pi --mode rpc`.
16
+ From the configured project root, confirm the configured executable can start as
17
+ `pi --mode rpc --append-system-prompt "one-shot probe"`.
17
18
  Restart or recompile after correcting startup-fixed configuration. A missing executable is expected
18
19
  to leave the host application running while the taskbar remains unavailable.
19
20
 
@@ -1276,7 +1276,7 @@ function hint(status, references = []) {
1276
1276
  contractVersion: 1,
1277
1277
  contextProvider,
1278
1278
  framework: "rails",
1279
- productVersion: "0.2.0",
1279
+ productVersion: "0.3.0",
1280
1280
  refreshOnCompletion: true,
1281
1281
  });
1282
1282
 
@@ -1284,7 +1284,7 @@ function hint(status, references = []) {
1284
1284
  contractVersion: 1,
1285
1285
  framework: "rails",
1286
1286
  mount: client.mount,
1287
- productVersion: "0.2.0",
1287
+ productVersion: "0.3.0",
1288
1288
  });
1289
1289
 
1290
1290
  const bootstrap = globalThis.document?.querySelector?.("[data-pi-browser-taskbar-bootstrap]");
@@ -24,6 +24,7 @@ module Pi
24
24
  DEFAULT_TERMINATION_TIMEOUT = 1
25
25
  DEFAULT_RESTART_ATTEMPTS = 3
26
26
  DEFAULT_RESTART_DELAY = 0.1
27
+ ONE_SHOT_SYSTEM_PROMPT = "You are handling a one-shot browser task with no reply channel. Complete the user's request autonomously without asking follow-up questions. Inspect the repository and use the supplied browser context. Resolve missing details with conservative assumptions. Act directly on implementation requests, but preserve explicit planning and read-only constraints. Do not repeat a failed approach unchanged. If safe completion is impossible, stop and report the exact blocker.".freeze
27
28
 
28
29
  class Unavailable < StandardError; end
29
30
 
@@ -229,7 +230,8 @@ module Pi
229
230
 
230
231
  @restart_attempts += 1
231
232
  @stdin, @stdout, @stderr, @wait_thread = Open3.popen3(
232
- @executable, "--mode", "rpc", chdir: @project_root, pgroup: true
233
+ @executable, "--mode", "rpc", "--append-system-prompt", ONE_SHOT_SYSTEM_PROMPT,
234
+ chdir: @project_root, pgroup: true
233
235
  )
234
236
  stdout = @stdout
235
237
  stderr = @stderr
@@ -4,7 +4,7 @@ module Pi
4
4
  module Browser
5
5
  module Taskbar
6
6
  module Rails
7
- VERSION = "0.2.0"
7
+ VERSION = "0.3.0"
8
8
  end
9
9
  end
10
10
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pi-browser-taskbar-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dave Lens
@@ -60,8 +60,8 @@ licenses:
60
60
  - MIT
61
61
  metadata:
62
62
  homepage_uri: https://github.com/davelens/pi-browser-taskbar
63
- source_code_uri: https://github.com/davelens/pi-browser-taskbar/tree/v0.2.0
64
- changelog_uri: https://github.com/davelens/pi-browser-taskbar/blob/v0.2.0/packages/rails/CHANGELOG.md
63
+ source_code_uri: https://github.com/davelens/pi-browser-taskbar/tree/v0.3.0
64
+ changelog_uri: https://github.com/davelens/pi-browser-taskbar/blob/v0.3.0/packages/rails/CHANGELOG.md
65
65
  post_install_message:
66
66
  rdoc_options: []
67
67
  require_paths: