coding-agent-harness 1.0.8 → 1.1.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.
Files changed (232) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/CONTRIBUTING.md +8 -4
  3. package/README.md +12 -2
  4. package/README.zh-CN.md +10 -2
  5. package/SKILL.md +14 -3
  6. package/dist/build-dist.mjs +19 -6
  7. package/dist/check-dist-observation.mjs +57 -29
  8. package/dist/check-harness.mjs +0 -1
  9. package/dist/check-import-graph.mjs +44 -27
  10. package/dist/check-lite-forbidden-surfaces.mjs +121 -0
  11. package/dist/check-no-ts-nocheck.mjs +7 -7
  12. package/dist/check-runtime-emit.mjs +10 -3
  13. package/dist/check-type-boundaries.mjs +51 -9
  14. package/dist/commands/dashboard-command.mjs +52 -14
  15. package/dist/commands/migration-command.mjs +18 -8
  16. package/dist/commands/module-command.mjs +142 -0
  17. package/dist/commands/preset-command.mjs +51 -12
  18. package/dist/commands/registry.mjs +483 -0
  19. package/dist/commands/task-command.mjs +109 -52
  20. package/dist/harness.mjs +6 -304
  21. package/dist/lib/capability-registry.mjs +229 -53
  22. package/dist/lib/check-module-parallel.mjs +1 -6
  23. package/dist/lib/check-profiles.mjs +39 -46
  24. package/dist/lib/check-task-contracts.mjs +6 -4
  25. package/dist/lib/command-registry.mjs +248 -0
  26. package/dist/lib/core-shared.mjs +78 -3
  27. package/dist/lib/dashboard-data.mjs +203 -22
  28. package/dist/lib/dashboard-workbench.mjs +245 -21
  29. package/dist/lib/dashboard-writer.mjs +4 -1
  30. package/dist/lib/git-status-summary.mjs +0 -1
  31. package/dist/lib/governance-index-generator.mjs +7 -5
  32. package/dist/lib/governance-sync.mjs +46 -121
  33. package/dist/lib/governance-table-boundary.mjs +1 -14
  34. package/dist/lib/harness-core.mjs +4 -1
  35. package/dist/lib/harness-paths.mjs +115 -1
  36. package/dist/lib/impact-classifier.mjs +420 -0
  37. package/dist/lib/lesson-maintenance.mjs +1 -2
  38. package/dist/lib/markdown-utils.mjs +50 -1
  39. package/dist/lib/migration-planner.mjs +31 -16
  40. package/dist/lib/migration-support.mjs +5 -4
  41. package/dist/lib/module-registry.mjs +296 -0
  42. package/dist/lib/preset-audit-contracts.mjs +24 -1
  43. package/dist/lib/preset-engine.mjs +67 -29
  44. package/dist/lib/preset-registry.mjs +361 -71
  45. package/dist/lib/preset-runner.mjs +292 -26
  46. package/dist/lib/review-confirm-git-gate.mjs +73 -19
  47. package/dist/lib/status-builder.mjs +23 -8
  48. package/dist/lib/structure-migration.mjs +6 -4
  49. package/dist/lib/subagent-authorization-audit.mjs +8 -2
  50. package/dist/lib/task-archive-eligibility.mjs +65 -0
  51. package/dist/lib/task-audit-metadata.mjs +25 -11
  52. package/dist/lib/task-audit-migration.mjs +21 -14
  53. package/dist/lib/task-discovery-contract.mjs +32 -0
  54. package/dist/lib/task-index.mjs +3 -2
  55. package/dist/lib/task-lesson-candidates.mjs +1 -2
  56. package/dist/lib/task-lesson-sedimentation.mjs +310 -9
  57. package/dist/lib/task-lifecycle/create-task-helpers.mjs +6 -3
  58. package/dist/lib/task-lifecycle/phase-sync.mjs +0 -1
  59. package/dist/lib/task-lifecycle/preset-interop.mjs +16 -0
  60. package/dist/lib/task-lifecycle/review-confirm.mjs +34 -2
  61. package/dist/lib/task-lifecycle/review-gates.mjs +12 -5
  62. package/dist/lib/task-lifecycle/review-submission.mjs +1 -2
  63. package/dist/lib/task-lifecycle/scaffold-provenance.mjs +0 -1
  64. package/dist/lib/task-lifecycle/template-files.mjs +2 -5
  65. package/dist/lib/task-lifecycle.mjs +116 -160
  66. package/dist/lib/task-metadata.mjs +10 -5
  67. package/dist/lib/task-preset-contract-drift.mjs +45 -0
  68. package/dist/lib/task-repository.mjs +192 -0
  69. package/dist/lib/task-review-model.mjs +36 -17
  70. package/dist/lib/task-scanner.mjs +74 -23
  71. package/dist/lib/task-template-materials.mjs +131 -0
  72. package/dist/lib/task-tombstone-commands.mjs +186 -29
  73. package/dist/lib/types/check-profiles.js +1 -0
  74. package/dist/lib/types/impact.js +1 -0
  75. package/dist/lib/types/preset.js +1 -0
  76. package/dist/lib/types/task-lifecycle.js +1 -0
  77. package/dist/lib/types/task-scanner.js +1 -0
  78. package/dist/postinstall.mjs +2 -2
  79. package/dist/run-built-tests.mjs +10 -3
  80. package/docs-release/README.md +1 -0
  81. package/docs-release/architecture/document-contract-kernel/README.md +150 -0
  82. package/docs-release/architecture/document-contract-kernel/products/full-skill-overlay.md +29 -0
  83. package/docs-release/architecture/document-contract-kernel/products/lite-forbidden-surfaces.txt +26 -0
  84. package/docs-release/architecture/document-contract-kernel/products/lite-skill-overlay.md +37 -0
  85. package/docs-release/architecture/overview.md +2 -2
  86. package/docs-release/architecture/overview.zh-CN.md +2 -2
  87. package/docs-release/architecture/system-explainer/01-system-overview.md +11 -7
  88. package/docs-release/architecture/system-explainer/02-module-dependency.md +4 -4
  89. package/docs-release/architecture/system-explainer/03-task-lifecycle.md +17 -12
  90. package/docs-release/architecture/system-explainer/05-data-flow.md +6 -6
  91. package/docs-release/architecture/system-explainer/06-preset-and-migration.md +2 -2
  92. package/docs-release/architecture/system-explainer/README.md +1 -1
  93. package/docs-release/architecture/system-explainer/en-US/01-system-overview.md +12 -8
  94. package/docs-release/architecture/system-explainer/en-US/02-module-dependency.md +5 -5
  95. package/docs-release/architecture/system-explainer/en-US/03-task-lifecycle.md +19 -11
  96. package/docs-release/architecture/system-explainer/en-US/05-data-flow.md +5 -5
  97. package/docs-release/architecture/system-explainer/en-US/06-preset-and-migration.md +2 -2
  98. package/docs-release/architecture/system-explainer/en-US/README.md +1 -1
  99. package/docs-release/guides/agent-installation.en-US.md +4 -6
  100. package/docs-release/guides/agent-installation.md +11 -8
  101. package/docs-release/guides/contributing.md +10 -3
  102. package/docs-release/guides/contributing.zh-CN.md +10 -3
  103. package/docs-release/guides/legacy-migration-agent-prompt.md +1 -1
  104. package/docs-release/guides/legacy-migration-agent-prompt.zh-CN.md +1 -1
  105. package/docs-release/guides/migration-playbook.en-US.md +9 -6
  106. package/docs-release/guides/migration-playbook.md +9 -6
  107. package/docs-release/guides/preset-development.md +68 -2
  108. package/docs-release/guides/task-state-machine.en-US.md +8 -8
  109. package/docs-release/guides/task-state-machine.md +7 -7
  110. package/docs-release/guides/typescript-runtime-migration-closeout.md +17 -13
  111. package/package.json +16 -12
  112. package/postinstall.mjs +37 -0
  113. package/presets/legacy-migration/preset.yaml +5 -5
  114. package/presets/legacy-migration/templates/execution_strategy.append.md +1 -1
  115. package/presets/lesson-sedimentation/preset.yaml +3 -3
  116. package/presets/module/preset.yaml +2 -2
  117. package/presets/module/templates/execution_strategy.append.md +1 -1
  118. package/presets/module/templates/task_plan.append.md +3 -3
  119. package/presets/release-closeout/checks/check-release-package.mjs +6 -1
  120. package/presets/release-closeout/preset.yaml +9 -9
  121. package/presets/release-closeout/scripts/generate-release-package.mjs +387 -25
  122. package/presets/release-closeout/templates/task_plan.append.md +5 -5
  123. package/presets/standard-task/preset.yaml +2 -2
  124. package/references/agents-md-pattern.md +23 -17
  125. package/references/lessons-governance.md +2 -2
  126. package/references/module-parallel-standard.md +3 -6
  127. package/references/ssot-governance.md +2 -2
  128. package/references/taskr-gap-analysis.md +3 -3
  129. package/run-dist.mjs +34 -0
  130. package/skills/preset-creator/SKILL.md +40 -8
  131. package/skills/preset-creator/references/complex-task-skeleton/brief.md +32 -8
  132. package/skills/preset-creator/references/preset-package-skeleton.md +15 -5
  133. package/skills/preset-creator/references/structure-aware-paths.md +112 -0
  134. package/templates/AGENTS.md.template +28 -26
  135. package/templates/architecture/README.md +2 -2
  136. package/templates/architecture/service-catalog.md +2 -2
  137. package/templates/architecture/services/service-template.md +1 -1
  138. package/templates/dashboard/assets/app-src/00-state.js +5 -1
  139. package/templates/dashboard/assets/app-src/10-router.js +7 -0
  140. package/templates/dashboard/assets/app-src/20-overview.js +8 -8
  141. package/templates/dashboard/assets/app-src/30-tasks.js +132 -40
  142. package/templates/dashboard/assets/app-src/32-task-swimlane.js +314 -0
  143. package/templates/dashboard/assets/app-src/35-task-detail.js +35 -5
  144. package/templates/dashboard/assets/app-src/40-modules.js +257 -41
  145. package/templates/dashboard/assets/app-src/45-review.js +127 -1
  146. package/templates/dashboard/assets/app-src/90-bindings.js +185 -2
  147. package/templates/dashboard/assets/app.css +928 -53
  148. package/templates/dashboard/assets/app.css.manifest.json +2 -0
  149. package/templates/dashboard/assets/app.js +1071 -98
  150. package/templates/dashboard/assets/app.manifest.json +1 -0
  151. package/templates/dashboard/assets/css-src/00-foundation.css +12 -6
  152. package/templates/dashboard/assets/css-src/10-panels-flow.css +2 -2
  153. package/templates/dashboard/assets/css-src/30-task-index.css +21 -13
  154. package/templates/dashboard/assets/css-src/31-archive.css +94 -0
  155. package/templates/dashboard/assets/css-src/32-task-swimlane.css +487 -0
  156. package/templates/dashboard/assets/css-src/35-review-workspace.css +78 -0
  157. package/templates/dashboard/assets/css-src/40-detail-modules-migration.css +191 -14
  158. package/templates/dashboard/assets/css-src/50-responsive-overrides.css +23 -0
  159. package/templates/dashboard/assets/i18n.js +166 -2
  160. package/templates/development/README.md +9 -9
  161. package/templates/development/cross-repo-debugging.md +3 -3
  162. package/templates/development/external-context/service-template.md +1 -1
  163. package/templates/development/external-source-packs/README.md +2 -2
  164. package/templates/integrations/README.md +4 -4
  165. package/templates/integrations/api-contract.md +1 -1
  166. package/templates/integrations/event-contract.md +1 -1
  167. package/templates/integrations/third-party/vendor-template.md +1 -1
  168. package/templates/integrations/webhook-contract.md +1 -1
  169. package/templates/ledger/Harness-Ledger.md +1 -1
  170. package/templates/modules/module_brief.md +50 -0
  171. package/templates/modules/module_plan.md +49 -0
  172. package/templates/modules/registry_view.md +9 -0
  173. package/templates/modules/session_prompt_pack.md +55 -0
  174. package/templates/planning/brief.md +32 -8
  175. package/templates/planning/module_brief.md +28 -3
  176. package/templates/planning/module_plan.md +26 -11
  177. package/templates/planning/module_session_prompt.md +11 -2
  178. package/templates/planning/optional/slices/_slice-template/brief.md +28 -0
  179. package/templates/planning/review.md +1 -1
  180. package/templates/planning/visual_map.md +1 -1
  181. package/templates/reference/docs-library-standard.md +7 -7
  182. package/templates/reference/execution-workflow-standard.md +13 -0
  183. package/templates/reference/external-source-intake-standard.md +10 -10
  184. package/templates/reference/repo-governance-standard.md +1 -1
  185. package/templates/reference/review-routing-standard.md +4 -0
  186. package/templates/ssot/Module-Registry.md +4 -38
  187. package/templates/walkthrough/walkthrough-template.md +1 -1
  188. package/templates-zh-CN/AGENTS.md.template +27 -25
  189. package/templates-zh-CN/CLAUDE.md.template +1 -1
  190. package/templates-zh-CN/architecture/README.md +2 -2
  191. package/templates-zh-CN/architecture/service-catalog.md +2 -2
  192. package/templates-zh-CN/architecture/services/service-template.md +1 -1
  193. package/templates-zh-CN/development/README.md +9 -9
  194. package/templates-zh-CN/development/cross-repo-debugging.md +3 -3
  195. package/templates-zh-CN/development/external-context/service-template.md +1 -1
  196. package/templates-zh-CN/development/external-source-packs/README.md +2 -2
  197. package/templates-zh-CN/integrations/README.md +4 -4
  198. package/templates-zh-CN/integrations/api-contract.md +1 -1
  199. package/templates-zh-CN/integrations/event-contract.md +1 -1
  200. package/templates-zh-CN/integrations/third-party/vendor-template.md +1 -1
  201. package/templates-zh-CN/integrations/webhook-contract.md +1 -1
  202. package/templates-zh-CN/ledger/Harness-Ledger.md +1 -1
  203. package/templates-zh-CN/lessons/lesson-arch-process-change.md +1 -1
  204. package/templates-zh-CN/lessons/lesson-new-doc.md +3 -3
  205. package/templates-zh-CN/lessons/lesson-ref-change.md +4 -4
  206. package/templates-zh-CN/modules/module_brief.md +47 -0
  207. package/templates-zh-CN/modules/module_plan.md +48 -0
  208. package/templates-zh-CN/modules/registry_view.md +9 -0
  209. package/templates-zh-CN/modules/session_prompt_pack.md +50 -0
  210. package/templates-zh-CN/planning/INDEX.md +1 -0
  211. package/templates-zh-CN/planning/brief.md +26 -7
  212. package/templates-zh-CN/planning/module_brief.md +24 -2
  213. package/templates-zh-CN/planning/module_plan.md +35 -29
  214. package/templates-zh-CN/planning/module_session_prompt.md +15 -11
  215. package/templates-zh-CN/planning/optional/slices/_slice-template/brief.md +28 -11
  216. package/templates-zh-CN/planning/review.md +1 -1
  217. package/templates-zh-CN/reference/adversarial-review-standard.md +1 -1
  218. package/templates-zh-CN/reference/delivery-operating-model-standard.md +3 -3
  219. package/templates-zh-CN/reference/docs-library-standard.md +27 -27
  220. package/templates-zh-CN/reference/execution-workflow-standard.md +12 -2
  221. package/templates-zh-CN/reference/external-source-intake-standard.md +10 -10
  222. package/templates-zh-CN/reference/harness-ledger-standard.md +3 -3
  223. package/templates-zh-CN/reference/regression-ssot-governance.md +2 -2
  224. package/templates-zh-CN/reference/repo-governance-standard.md +1 -1
  225. package/templates-zh-CN/reference/review-routing-standard.md +3 -0
  226. package/templates-zh-CN/reference/walkthrough-standard.md +2 -2
  227. package/templates-zh-CN/reference/worktree-standard.md +1 -1
  228. package/templates-zh-CN/regression/Cadence-Ledger.md +2 -2
  229. package/templates-zh-CN/ssot/Delivery-SSoT.md +2 -2
  230. package/templates-zh-CN/ssot/Module-Registry.md +5 -44
  231. package/templates-zh-CN/ssot/Regression-SSoT.md +2 -2
  232. package/templates-zh-CN/walkthrough/walkthrough-template.md +4 -4
@@ -3,6 +3,7 @@
3
3
  "app-src/10-router.js",
4
4
  "app-src/20-overview.js",
5
5
  "app-src/30-tasks.js",
6
+ "app-src/32-task-swimlane.js",
6
7
  "app-src/35-task-detail.js",
7
8
  "app-src/40-modules.js",
8
9
  "app-src/45-review.js",
@@ -32,6 +32,12 @@
32
32
  /* Typography Scale */
33
33
  --font-sans: "Plus Jakarta Sans", ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
34
34
  --font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
35
+
36
+ /* Dashboard Density */
37
+ --dashboard-page-gap: 8px;
38
+ --dashboard-panel-gap: 8px;
39
+ --dashboard-card-padding: 12px;
40
+ --dashboard-compact-row-height: 32px;
35
41
  }
36
42
 
37
43
  [data-theme="dark"] {
@@ -137,7 +143,7 @@ button, input, select {
137
143
  .visibility-shell {
138
144
  width: 100%;
139
145
  max-width: 100%;
140
- padding: 40px clamp(16px, 3vw, 48px) 80px;
146
+ padding: 32px clamp(14px, 3vw, 44px) 64px;
141
147
  box-sizing: border-box;
142
148
  }
143
149
 
@@ -147,7 +153,7 @@ button, input, select {
147
153
  justify-content: space-between;
148
154
  align-items: center;
149
155
  gap: 24px;
150
- margin-bottom: 32px;
156
+ margin-bottom: 24px;
151
157
  }
152
158
 
153
159
  .hero-copy h1 {
@@ -222,15 +228,15 @@ button, input, select {
222
228
 
223
229
  .stack {
224
230
  display: grid;
225
- gap: 24px;
231
+ gap: var(--dashboard-page-gap);
226
232
  }
227
233
 
228
234
  /* Cockpit Two-Column Layout Grid */
229
235
  .dashboard-grid {
230
236
  display: grid;
231
237
  grid-template-columns: 1fr;
232
- gap: 24px;
233
- margin-top: 16px;
238
+ gap: var(--dashboard-page-gap);
239
+ margin-top: 10px;
234
240
  }
235
241
 
236
242
  .dashboard-main,
@@ -249,7 +255,7 @@ button, input, select {
249
255
  .status-card-group {
250
256
  display: flex;
251
257
  flex-direction: column;
252
- gap: 16px;
258
+ gap: var(--dashboard-page-gap);
253
259
  }
254
260
 
255
261
  .metrics-grid {
@@ -2,9 +2,9 @@
2
2
  .section-head {
3
3
  display: flex;
4
4
  justify-content: space-between;
5
- gap: 18px;
5
+ gap: var(--dashboard-panel-gap);
6
6
  align-items: center;
7
- margin-bottom: 16px;
7
+ margin-bottom: var(--dashboard-panel-gap);
8
8
  min-width: 0;
9
9
  }
10
10
 
@@ -2,8 +2,8 @@
2
2
  .tasks-grid {
3
3
  display: grid;
4
4
  grid-template-columns: 1fr;
5
- gap: 24px;
6
- margin-top: 16px;
5
+ gap: var(--dashboard-page-gap);
6
+ margin-top: 10px;
7
7
  }
8
8
 
9
9
  @media (min-width: 1024px) {
@@ -22,11 +22,11 @@
22
22
  background: var(--paper);
23
23
  border: 1px solid var(--line);
24
24
  border-radius: 12px;
25
- padding: 20px;
25
+ padding: var(--dashboard-card-padding);
26
26
  box-shadow: var(--shadow);
27
27
  display: flex;
28
28
  flex-direction: column;
29
- gap: 16px;
29
+ gap: var(--dashboard-panel-gap);
30
30
  transition: box-shadow 0.25s;
31
31
  }
32
32
 
@@ -249,14 +249,14 @@
249
249
  .task-stats-bar {
250
250
  display: flex;
251
251
  flex-wrap: wrap;
252
- gap: 12px;
252
+ gap: 10px;
253
253
  align-items: center;
254
- padding: 16px 20px;
254
+ padding: 12px 16px;
255
255
  background: var(--paper);
256
256
  border: 1px solid var(--line);
257
257
  border-radius: 12px;
258
258
  box-shadow: var(--shadow);
259
- margin-bottom: 24px;
259
+ margin-bottom: var(--dashboard-page-gap);
260
260
  backdrop-filter: blur(10px);
261
261
  }
262
262
 
@@ -265,7 +265,7 @@
265
265
  flex-direction: column;
266
266
  align-items: center;
267
267
  gap: 4px;
268
- padding: 8px 16px;
268
+ padding: 7px 14px;
269
269
  border-radius: 8px;
270
270
  background: var(--paper-2);
271
271
  min-width: 64px;
@@ -278,9 +278,9 @@
278
278
  }
279
279
 
280
280
  .stat-chip .stat-value {
281
- font-size: 20px;
281
+ font-size: 18px;
282
282
  font-weight: 800;
283
- color: var(--ink);
283
+ color: var(--stat-color, var(--ink));
284
284
  line-height: 1;
285
285
  }
286
286
 
@@ -341,7 +341,7 @@
341
341
  border-radius: 12px;
342
342
  overflow: hidden;
343
343
  border: 1px solid var(--line);
344
- margin-top: 16px;
344
+ margin-top: var(--dashboard-panel-gap);
345
345
  }
346
346
 
347
347
  /* Table Header for Task List */
@@ -466,8 +466,8 @@
466
466
  .task-card-grid {
467
467
  display: grid;
468
468
  grid-template-columns: 1fr;
469
- gap: 16px;
470
- margin-top: 16px;
469
+ gap: var(--dashboard-panel-gap);
470
+ margin-top: var(--dashboard-panel-gap);
471
471
  }
472
472
 
473
473
  @media (min-width: 640px) {
@@ -570,6 +570,14 @@
570
570
  gap: 4px;
571
571
  }
572
572
 
573
+ .task-card .meta-lifecycle {
574
+ overflow: hidden;
575
+ text-overflow: ellipsis;
576
+ white-space: nowrap;
577
+ max-width: 100%;
578
+ color: var(--muted);
579
+ }
580
+
573
581
  .task-card .card-progress {
574
582
  display: flex;
575
583
  align-items: center;
@@ -0,0 +1,94 @@
1
+ .archive-view {
2
+ margin-top: 16px;
3
+ }
4
+
5
+ .archive-summary-grid {
6
+ display: grid;
7
+ grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
8
+ gap: 12px;
9
+ margin-top: 16px;
10
+ }
11
+
12
+ .archive-group {
13
+ background: var(--paper);
14
+ border: 1px solid var(--line);
15
+ border-radius: 12px;
16
+ box-shadow: var(--shadow);
17
+ padding: 20px;
18
+ }
19
+
20
+ .archive-task-list {
21
+ display: grid;
22
+ gap: 12px;
23
+ }
24
+
25
+ .archive-task-row {
26
+ display: grid;
27
+ grid-template-columns: minmax(0, 1fr);
28
+ gap: 14px;
29
+ padding: 16px;
30
+ border: 1px solid var(--line);
31
+ border-radius: 10px;
32
+ background: var(--bg);
33
+ }
34
+
35
+ .archive-task-main {
36
+ min-width: 0;
37
+ display: grid;
38
+ gap: 6px;
39
+ }
40
+
41
+ .archive-task-main a {
42
+ color: var(--ink);
43
+ font-weight: 800;
44
+ text-decoration: none;
45
+ }
46
+
47
+ .archive-task-main span,
48
+ .archive-task-main p {
49
+ margin: 0;
50
+ color: var(--muted);
51
+ font-size: 12px;
52
+ line-height: 1.45;
53
+ overflow-wrap: anywhere;
54
+ }
55
+
56
+ .archive-meta-grid {
57
+ display: grid;
58
+ grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr));
59
+ gap: 10px;
60
+ margin: 0;
61
+ }
62
+
63
+ .archive-meta-grid div {
64
+ min-width: 0;
65
+ display: grid;
66
+ gap: 4px;
67
+ padding: 10px;
68
+ border: 1px solid var(--line);
69
+ border-radius: 8px;
70
+ background: var(--paper);
71
+ }
72
+
73
+ .archive-meta-grid dt {
74
+ color: var(--muted);
75
+ font-size: 10px;
76
+ font-weight: 800;
77
+ letter-spacing: 0.04em;
78
+ text-transform: uppercase;
79
+ }
80
+
81
+ .archive-meta-grid dd {
82
+ margin: 0;
83
+ color: var(--ink);
84
+ font-size: 12px;
85
+ font-weight: 700;
86
+ overflow-wrap: anywhere;
87
+ }
88
+
89
+ @media (min-width: 980px) {
90
+ .archive-task-row {
91
+ grid-template-columns: minmax(240px, 0.8fr) minmax(0, 1.2fr);
92
+ align-items: start;
93
+ }
94
+ }