You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs(spec): rename affex-spec.md to .adoc and convert to AsciiDoc
Estate rule: docs/ files use .adoc extension; .md is reserved for files
GitHub community-health rules special-case by name (CONTRIBUTING.md,
CODE_OF_CONDUCT.md, SECURITY.md, CHANGELOG.md, README.md). General specs
must be .adoc.
This commit:
- git mv docs/specs/affex-spec.md -> docs/specs/affex-spec.adoc
- Converts Markdown headings (#, ##, ###, ####) to AsciiDoc (=, ==, ===, ====)
- Converts Markdown pipe tables to AsciiDoc [cols=...] |=== blocks
- Converts code fences to AsciiDoc [source,json] ---- listing blocks
- Converts emphasis (bold, italic) to AsciiDoc (* and _ markers)
- Adds standard AffineScript-spec preamble (SPDX, :toc:, :source-highlighter:)
- Updates internal §9 reference to point at the new .adoc filename
Refs #84.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
if manifest is stale) to CI for estates that adopt multi-face conventions.
210
216
211
-
---
217
+
== 7. What this is NOT
212
218
213
-
## 7. What this is NOT
214
-
215
-
- Not a compiler concern. The compiler lowers all faces independently.
216
-
- Not an AffineScript↔non-AffineScript FFI layer. See `extern fn` for that.
217
-
- Not required for single-face estates. A project using only `canonical` has no
219
+
* Not a compiler concern. The compiler lowers all faces independently.
220
+
* Not an AffineScript↔non-AffineScript FFI layer. See `extern fn` for that.
221
+
* Not required for single-face estates. A project using only `canonical` has no
218
222
need for a `.affex` file.
219
223
220
-
---
221
-
222
-
## 8. Open questions (pre-implementation)
223
-
224
-
-[ ] Should `affinescript affex generate` be a separate binary or a subcommand of the main `affinescript` CLI?
225
-
-[ ] Face names in the manifest should match exactly the values in `lib/face.ml`'s `face` type. Confirm the canonical string identifiers: `canonical`, `python`, `js`, `pseudocode`, `lucid`, `cafe`.
226
-
-[ ] Should `head` rendering use the compiler's pretty-printer or store the raw source span? Raw source span is simpler and always correct; pretty-printed form is more useful when the source face differs from the reader face.
227
-
-[ ] Staleness detection: `source_hash` over all `.affine` files in the package is coarse. Consider per-file hashes to support incremental regeneration.
228
-
-[ ] Override syntax: embedding overrides inside the JSON file is workable but verbose. An alternative is a sidecar `.affex.overrides` file.
224
+
== 8. Open questions (pre-implementation)
229
225
230
-
---
226
+
* [ ] Should `affinescript affex generate` be a separate binary or a subcommand of the main `affinescript` CLI?
227
+
* [ ] Face names in the manifest should match exactly the values in `lib/face.ml`'s `face` type. Confirm the canonical string identifiers: `canonical`, `python`, `js`, `pseudocode`, `lucid`, `cafe`.
228
+
* [ ] Should `head` rendering use the compiler's pretty-printer or store the raw source span? Raw source span is simpler and always correct; pretty-printed form is more useful when the source face differs from the reader face.
229
+
* [ ] Staleness detection: `source_hash` over all `.affine` files in the package is coarse. Consider per-file hashes to support incremental regeneration.
230
+
* [ ] Override syntax: embedding overrides inside the JSON file is workable but verbose. An alternative is a sidecar `.affex.overrides` file.
231
231
232
-
##9. Satisfaction criteria for closing #84
232
+
== 9. Satisfaction criteria for closing #84
233
233
234
234
This issue closes when Claude and the user explicitly agree, in a recorded
235
235
exchange on this issue, that the following are satisfied:
236
236
237
-
1. This spec (or a revised version) is merged into `docs/specs/affex-spec.md`.
238
-
2. The file format schema (§4) is agreed to be correct and complete.
239
-
3. The tooling surface (§5) matches the CLI and LSP integration plan.
240
-
4. At least one of the open questions in §8 has a recorded resolution (or is
241
-
explicitly deferred with a rationale).
237
+
. This spec (or a revised version) is merged into `docs/specs/affex-spec.adoc`.
238
+
. The file format schema (§4) is agreed to be correct and complete.
239
+
. The tooling surface (§5) matches the CLI and LSP integration plan.
240
+
. At least one of the open questions in §8 has a recorded resolution (or is
241
+
explicitly deferred with a rationale).
242
242
243
-
*The presence of a PR, a draft, or a partial implementation does not satisfy
243
+
_The presence of a PR, a draft, or a partial implementation does not satisfy
244
244
these criteria alone — explicit mutual agreement in a comment on issue #84 is
0 commit comments