studio-engine 0.40.0 → 0.41.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 +4 -4
- data/CHANGELOG.md +19 -0
- data/Gemfile +6 -0
- data/lib/studio/version.rb +1 -1
- data/studio-engine.gemspec +5 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: d4b5672c89f5dc5feeaf54432eed9992c022a69992c1ff58311b0b85a58a23e9
|
|
4
|
+
data.tar.gz: 3a3489c4d4f8174d0d5facbf53f020505392f78e51f13a96a4c8f95367224608
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: e1d83d1b55f15fb4ecaa74a261b5db8c6cc874ca93166e4323814295caf16724b3bfd65dcda07c27918024ea5db9967e09fe63e0777d48c74c7b8f9c9b21d4ff
|
|
7
|
+
data.tar.gz: 64d9556f766654a143e966d7b8f784c27773acfcf3bd35065f2cc9c24284a2113ab659dfe937ca090ff1030a0225d0ae0780e0e2f509fc6fc8868811d7e65dad
|
data/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,25 @@ The format is [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). This pro
|
|
|
6
6
|
|
|
7
7
|
### Added
|
|
8
8
|
|
|
9
|
+
- **A browser lane — the engine now runs Playwright against its own partials.**
|
|
10
|
+
Measured across 40 merged engine feature units, 12 (30%) add an imperative
|
|
11
|
+
browser program and zero had ever carried browser evidence; the engine was the
|
|
12
|
+
one repo in the ecosystem with no way to observe client-side behavior. A
|
|
13
|
+
Playwright suite (`e2e/`) drives a real Chromium against engine partials
|
|
14
|
+
rendered through the `test/dummy` host, served by `e2e/boot.rb` with real
|
|
15
|
+
compiled Tailwind. Both engine-side defects that motivated the ecosystem's
|
|
16
|
+
browser-evidence gate were reproduced against the new lane and confirmed to turn
|
|
17
|
+
it red: the navbar's paint-time offset jump (sampled per animation frame — the
|
|
18
|
+
header moved 80px one frame after paint, which a single-sample spec reads as
|
|
19
|
+
correct) and the re-stamper swallowed by a phantom element. The lane carries a
|
|
20
|
+
runtime executed-set gate (`bin/e2e-executed-set-check` reads Playwright's own
|
|
21
|
+
report against `config/e2e_lane.yml`) and a static guard
|
|
22
|
+
(`test/lib/e2e_lane_contract_test.rb`) that refuses any edit able to narrow the
|
|
23
|
+
set. It runs as a parallel CI job, so the wall time an engine PR waits is
|
|
24
|
+
unchanged. Chromium-only, with the Intl/timezone blind spot that implies named
|
|
25
|
+
and covered instead by `test/views/at_time_zone_table_test.rb`. Full rationale,
|
|
26
|
+
limits and cost: `docs/E2E_LANE.md`.
|
|
27
|
+
|
|
9
28
|
- **The "at" time stamp — `at_time_tag` + `studio/at_time_script`.** A shared
|
|
10
29
|
primitive for stamping WHEN something happened, on the READER's clock rather
|
|
11
30
|
than the app's: `at 3:53p`, gaining a date only when the stamp is not today and
|
data/Gemfile
CHANGED
|
@@ -23,4 +23,10 @@ group :development, :test do
|
|
|
23
23
|
# engine's ActiveRecord/Railtie surfaces. Not a runtime dependency — the
|
|
24
24
|
# consuming apps bring their own database adapter. Rails 8.1 needs sqlite3 ~> 2.1.
|
|
25
25
|
gem "sqlite3", ">= 2.1"
|
|
26
|
+
|
|
27
|
+
# Puma serves the dummy host for the BROWSER LANE (e2e/boot.rb). The gem ships no
|
|
28
|
+
# config.ru and test/dummy has no bin/rails, so the lane boots Puma::Server around
|
|
29
|
+
# Rails.application directly rather than growing Rails-app scaffolding inside a
|
|
30
|
+
# test fixture. Not a runtime dependency — consuming apps bring their own server.
|
|
31
|
+
gem "puma", ">= 6.0"
|
|
26
32
|
end
|
data/lib/studio/version.rb
CHANGED
data/studio-engine.gemspec
CHANGED
|
@@ -18,7 +18,11 @@ Gem::Specification.new do |spec|
|
|
|
18
18
|
"changelog_uri" => "https://github.com/McRitchie-Studio/studio-engine/blob/main/CHANGELOG.md"
|
|
19
19
|
}
|
|
20
20
|
|
|
21
|
-
|
|
21
|
+
# config/e2e_lane.yml is the BROWSER LANE's contract — a fact about this repo's CI,
|
|
22
|
+
# read by bin/e2e-executed-set-check and test/lib/e2e_lane_contract_test.rb. It is
|
|
23
|
+
# the only thing under config/, and it has no meaning in a consuming app, so it is
|
|
24
|
+
# excluded rather than shipped. (e2e/, bin/ and test/ were never in this list.)
|
|
25
|
+
spec.files = Dir["lib/**/*", "app/**/*", "config/**/*", "db/**/*", "tailwind/**/*", "Gemfile", "studio-engine.gemspec", "README.md", "CHANGELOG.md", "LICENSE"] - ["config/e2e_lane.yml"]
|
|
22
26
|
spec.require_paths = ["lib"]
|
|
23
27
|
|
|
24
28
|
spec.add_dependency "rails", ">= 7.2", "< 8.2"
|