Problem: the hexagonal refactor churns the backend tree for nine more phases; the UI delivery stack (web/ SPA, cmd/desktop Wails wrapper, compose/web image) must move to its own repo first so doc/layout rewrites land once on a backend-only tree. Change: - New repo git.hubris.network/dtoro/oikos-web (v0.33.0): web/, desktop/ (updateURL repointed to oikos-web releases), compose/, own CI (web + desktop jobs), own deploy script (CI-green gate, TOCTOU guard, version-tagged images, prune-to-3), own webhook receiver on :9798 + launchd unit, own compose project publishing the same 8091:80. - Cutover executed on mac-mini in order: oikos stack's web service stopped+removed, oikos-web project brought up on 8091; outer Caddy untouched (targets the published port) — serving + Authentik flow + /wails 404 quirk verified post-cutover. - Stripped from oikos: web/, cmd/desktop/, compose/web/, desktop CI workflow, ci.yml web job, Makefile ui/desktop/desktop-package/install targets, the compose web service, oikos-web from deploy.sh's fallback prune list; wails + go-keyring dropped from go.mod, vendor synced. - README / CONTRIBUTING / AGENTS.md / .agents dev+operations docs now point at the new repo; mbse + mascot design docs carry a path note. Risk: production SPA serving depends on the new pipeline now; rollback is versioned-image re-up of the old web service from a pre-split checkout (port 8091). Desktop builds installed before the split still check dtoro/oikos releases — one manual reinstall, noted in the oikos-web release notes. Verification: go vet, make test (race), make generate-check, golangci (no new findings; baseline down 400→365); post-cutover curls — localhost:8091 200, /wails/runtime.js 404, outer Caddy 302 Authentik.
68 lines
4.4 KiB
TypeScript
68 lines
4.4 KiB
TypeScript
import type { Location } from './token.js';
|
|
export interface ParserError extends Location {
|
|
code: ERR;
|
|
}
|
|
export type ParserErrorHandler = (error: ParserError) => void;
|
|
export declare enum ERR {
|
|
controlCharacterInInputStream = "control-character-in-input-stream",
|
|
noncharacterInInputStream = "noncharacter-in-input-stream",
|
|
surrogateInInputStream = "surrogate-in-input-stream",
|
|
nonVoidHtmlElementStartTagWithTrailingSolidus = "non-void-html-element-start-tag-with-trailing-solidus",
|
|
endTagWithAttributes = "end-tag-with-attributes",
|
|
endTagWithTrailingSolidus = "end-tag-with-trailing-solidus",
|
|
unexpectedSolidusInTag = "unexpected-solidus-in-tag",
|
|
unexpectedNullCharacter = "unexpected-null-character",
|
|
unexpectedQuestionMarkInsteadOfTagName = "unexpected-question-mark-instead-of-tag-name",
|
|
invalidFirstCharacterOfTagName = "invalid-first-character-of-tag-name",
|
|
unexpectedEqualsSignBeforeAttributeName = "unexpected-equals-sign-before-attribute-name",
|
|
missingEndTagName = "missing-end-tag-name",
|
|
unexpectedCharacterInAttributeName = "unexpected-character-in-attribute-name",
|
|
unknownNamedCharacterReference = "unknown-named-character-reference",
|
|
missingSemicolonAfterCharacterReference = "missing-semicolon-after-character-reference",
|
|
unexpectedCharacterAfterDoctypeSystemIdentifier = "unexpected-character-after-doctype-system-identifier",
|
|
unexpectedCharacterInUnquotedAttributeValue = "unexpected-character-in-unquoted-attribute-value",
|
|
eofBeforeTagName = "eof-before-tag-name",
|
|
eofInTag = "eof-in-tag",
|
|
missingAttributeValue = "missing-attribute-value",
|
|
missingWhitespaceBetweenAttributes = "missing-whitespace-between-attributes",
|
|
missingWhitespaceAfterDoctypePublicKeyword = "missing-whitespace-after-doctype-public-keyword",
|
|
missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers = "missing-whitespace-between-doctype-public-and-system-identifiers",
|
|
missingWhitespaceAfterDoctypeSystemKeyword = "missing-whitespace-after-doctype-system-keyword",
|
|
missingQuoteBeforeDoctypePublicIdentifier = "missing-quote-before-doctype-public-identifier",
|
|
missingQuoteBeforeDoctypeSystemIdentifier = "missing-quote-before-doctype-system-identifier",
|
|
missingDoctypePublicIdentifier = "missing-doctype-public-identifier",
|
|
missingDoctypeSystemIdentifier = "missing-doctype-system-identifier",
|
|
abruptDoctypePublicIdentifier = "abrupt-doctype-public-identifier",
|
|
abruptDoctypeSystemIdentifier = "abrupt-doctype-system-identifier",
|
|
cdataInHtmlContent = "cdata-in-html-content",
|
|
incorrectlyOpenedComment = "incorrectly-opened-comment",
|
|
eofInScriptHtmlCommentLikeText = "eof-in-script-html-comment-like-text",
|
|
eofInDoctype = "eof-in-doctype",
|
|
nestedComment = "nested-comment",
|
|
abruptClosingOfEmptyComment = "abrupt-closing-of-empty-comment",
|
|
eofInComment = "eof-in-comment",
|
|
incorrectlyClosedComment = "incorrectly-closed-comment",
|
|
eofInCdata = "eof-in-cdata",
|
|
absenceOfDigitsInNumericCharacterReference = "absence-of-digits-in-numeric-character-reference",
|
|
nullCharacterReference = "null-character-reference",
|
|
surrogateCharacterReference = "surrogate-character-reference",
|
|
characterReferenceOutsideUnicodeRange = "character-reference-outside-unicode-range",
|
|
controlCharacterReference = "control-character-reference",
|
|
noncharacterCharacterReference = "noncharacter-character-reference",
|
|
missingWhitespaceBeforeDoctypeName = "missing-whitespace-before-doctype-name",
|
|
missingDoctypeName = "missing-doctype-name",
|
|
invalidCharacterSequenceAfterDoctypeName = "invalid-character-sequence-after-doctype-name",
|
|
duplicateAttribute = "duplicate-attribute",
|
|
nonConformingDoctype = "non-conforming-doctype",
|
|
missingDoctype = "missing-doctype",
|
|
misplacedDoctype = "misplaced-doctype",
|
|
endTagWithoutMatchingOpenElement = "end-tag-without-matching-open-element",
|
|
closingOfElementWithOpenChildElements = "closing-of-element-with-open-child-elements",
|
|
disallowedContentInNoscriptInHead = "disallowed-content-in-noscript-in-head",
|
|
openElementsLeftAfterEof = "open-elements-left-after-eof",
|
|
abandonedHeadElementChild = "abandoned-head-element-child",
|
|
misplacedStartTagForHeadElement = "misplaced-start-tag-for-head-element",
|
|
nestedNoscriptInHead = "nested-noscript-in-head",
|
|
eofInElementThatCanContainOnlyText = "eof-in-element-that-can-contain-only-text"
|
|
}
|