qss 0.1.1 → 0.1.2

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 (5) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +7 -0
  3. data/README.md +1 -1
  4. data/lib/qss/version.rb +1 -1
  5. metadata +14 -6
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 66150ff6d5d7310f9fcdff3e694f321c3dce50ae18503caccd2a0792e4cce86a
4
- data.tar.gz: 74f4ce6e564e503a967c85f5629e4d474813d45b2c0cc54dbe7ae7ed011aba2e
3
+ metadata.gz: 8ede42a34241c427ed061678140580661f4dbb494ded598e312e64e34fdcf211
4
+ data.tar.gz: 813b25c7cf09e631881a0c410d3625dd43f556aa709c165be4fdc33a0d2ce73d
5
5
  SHA512:
6
- metadata.gz: 1cdb64154903050a037a49e30587269f3113350d35288c313c12861b1bcba106811e2d263d96a7cab490ef57268f96bf4d7c96a0868670eaa4a68a17365c3622
7
- data.tar.gz: 0c19536b299d641009e3560372b8784bf7de5e6d7a10006a26640e818601253dbcd187b82919689354033ac93b1e72c88b80488686a15953fe5debfc7bb78d31
6
+ metadata.gz: 134099b4edc02e6fec980a1b5aff0b9e23e776c7e848d1ec156c6e7c6b88b724c4b219c7fffff2fc8d4a498beb185c2062be2bd01582b68a17ee4f093ada00b3
7
+ data.tar.gz: c0c7cfa4e64b5cd476234cb421544f4ef038b90f6d37b9ed22a6d4ca18a2d16df6d0a2b2379819ae2f4fc83adb3b70d7760da7309d09c7b94c17d369b684be99
data/CHANGELOG.md CHANGED
@@ -5,6 +5,13 @@ versions follow [Semantic Versioning](https://semver.org/) (before 1.0, minor ve
5
5
 
6
6
  ## [Unreleased]
7
7
 
8
+ ## [0.1.2] - 2026-10-05
9
+
10
+ ### Changed
11
+ - Gem metadata only, no code changes: the summary and description now explain why QSS exists (agents and flex/grid
12
+ layout, addressable structure, static auditing and its limits, the origin in Parapet), and the gem links to
13
+ `docs/DESIGN_HISTORY.md` as its documentation. The rubygems.org page reads these from the latest release.
14
+
8
15
  ## [0.1.1] - 2026-10-05
9
16
 
10
17
  ### Fixed
data/README.md CHANGED
@@ -6,7 +6,7 @@ thousandth of the canvas width, computed by CSS alone. QSS ships compiled CSS, i
6
6
  JavaScript engine, and two **auditors** that check views against QSS's rules. It includes a Rails engine for the
7
7
  asset pipeline; the auditors and configuration also work in plain Ruby.
8
8
 
9
- > **Status: 0.1.0, early.** QSS was extracted from the Parapet project (a Rails development tool),
9
+ > **Status: 0.1.x, early.** QSS was extracted from the Parapet project (a Rails development tool),
10
10
  > which is its first consumer. Expect names and APIs to change before 1.0. See [CHANGELOG.md](CHANGELOG.md).
11
11
  > Why QSS is designed this way: [docs/DESIGN_HISTORY.md](docs/DESIGN_HISTORY.md).
12
12
 
data/lib/qss/version.rb CHANGED
@@ -3,7 +3,7 @@
3
3
  module QSS
4
4
  # The gem's version. QSS::VERSION is the usual spelling; QSS::Version::STRING the same value.
5
5
  module Version
6
- STRING = "0.1.1"
6
+ STRING = "0.1.2"
7
7
  end
8
8
 
9
9
  VERSION = Version::STRING
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: qss
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kraig Fairhurst
@@ -93,10 +93,16 @@ dependencies:
93
93
  - - ">="
94
94
  - !ruby/object:Gem::Version
95
95
  version: '0'
96
- description: QSS sizes and places layout on a 1000-unit canvas grid (1 qnt = canvas
97
- width / 1000, pure CSS), ships compiled and SCSS sources, and audits views for rule
98
- violations. Includes a Rails engine for the asset pipeline; the auditors also run
99
- without Rails.
96
+ description: |-
97
+ AI coding agents struggle with CSS. Asked to move a sidebar 10px, an agent edits a margin, then an order, then a flex-basis, and something else moves. It then reports the change as done while the page is broken. Flex and grid have no single "left" property, so the agent has to guess which one to touch.
98
+
99
+ QSS makes layout addressable. Every structural value is an explicit, single-purpose quantity on a 1000-unit canvas grid (1 qnt = canvas width / 1000, computed in pure CSS), so each edit has one target and the same numbers hold at any screen size. Frames sit flat on one canvas, isolate their layout, and overlays portal to the document root.
100
+
101
+ QSS also audits what can be checked statically. Two auditors flag violations such as !important, inline layout styles, undeclared sizes and raw viewport units. RED marks a rule violation and ORANGE a judgment call. Static checks can't prove a page renders, so QSS includes a render check for the compiled CSS alone, and its design history is explicit that only a real browser is real proof.
102
+
103
+ QSS was extracted from Parapet, a Rails development tool, which was its first consumer. Its early custom parser was a bug farm, and an invented syntax costs agents more than it buys. Structure moved to plain CSS custom properties; bracket values remain for content such as spacing and sizes. What was tried and dropped is in docs/DESIGN_HISTORY.md.
104
+
105
+ Status: 0.1.x. Expect names and APIs to change before 1.0.
100
106
  email:
101
107
  - kmfairhurst@gmail.com
102
108
  executables:
@@ -132,6 +138,7 @@ metadata:
132
138
  source_code_uri: https://bitbucket.org/kmf2/qss
133
139
  bug_tracker_uri: https://bitbucket.org/kmf2/qss/issues
134
140
  changelog_uri: https://bitbucket.org/kmf2/qss/src/main/CHANGELOG.md
141
+ documentation_uri: https://bitbucket.org/kmf2/qss/src/main/docs/DESIGN_HISTORY.md
135
142
  allowed_push_host: https://rubygems.org
136
143
  rubygems_mfa_required: 'true'
137
144
  rdoc_options: []
@@ -150,5 +157,6 @@ required_rubygems_version: !ruby/object:Gem::Requirement
150
157
  requirements: []
151
158
  rubygems_version: 4.0.13
152
159
  specification_version: 4
153
- summary: 'Quantized Spatial Styling: an agent-aware CSS layout framework, with auditors'
160
+ summary: 'Quantized Spatial Styling: CSS layout that AI agents can read, edit and
161
+ check from source'
154
162
  test_files: []