overleaf-codex 0.1.0-rc.4 → 0.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.
package/README.md CHANGED
@@ -6,7 +6,7 @@
6
6
 
7
7
  [![CI](https://github.com/umiskky/overleaf-codex/actions/workflows/ci.yml/badge.svg)](https://github.com/umiskky/overleaf-codex/actions/workflows/ci.yml)
8
8
  [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
9
- [![Status](https://img.shields.io/badge/status-v1--rc--local--gates-blue.svg)](#current-status)
9
+ [![Status](https://img.shields.io/badge/status-v1--stable--released-green.svg)](#current-status)
10
10
 
11
11
  `overleaf-codex` provides the `olcx` CLI for writing LaTeX papers locally while
12
12
  using a bound Overleaf project for remote compilation.
@@ -84,9 +84,9 @@ Overleaf passwords.
84
84
 
85
85
  ## Current Status
86
86
 
87
- v1 is a release candidate. Local gates are tracked in
88
- [docs/release-notes-v1.md](docs/release-notes-v1.md); stable release remains
89
- blocked until a sanitized disposable real Overleaf E2E pass is recorded.
87
+ v1 is released as `0.1.0`. Release gates, stable approval, and the sanitized
88
+ disposable real Overleaf E2E artifact are tracked in
89
+ [docs/release-notes-v1.md](docs/release-notes-v1.md).
90
90
 
91
91
  The implemented command surface is:
92
92
 
@@ -150,7 +150,7 @@ command to run next.
150
150
  - [docs/troubleshooting.md](docs/troubleshooting.md) lists diagnosis commands.
151
151
  - [docs/npm-packaging.md](docs/npm-packaging.md) explains package contents.
152
152
  - [docs/release-gates.md](docs/release-gates.md) explains release checks.
153
- - [docs/release-notes-v1.md](docs/release-notes-v1.md) records the v1 RC status, release notes, known limitations, and stable-release approval rule.
153
+ - [docs/release-notes-v1.md](docs/release-notes-v1.md) records the v1 release status, release notes, known limitations, and stable-release approval.
154
154
 
155
155
  See the [minimal example paper](examples/minimal-paper/README.md) for a
156
156
  sanitized project layout with `.olcx/config.json`, an auth-file shape example,
package/docs/compile.md CHANGED
@@ -33,9 +33,15 @@ olcx compile --disable-fast-fallback
33
33
  olcx compile --fast-fallback-timeout 60000
34
34
  ```
35
35
 
36
- When fallback produces the PDF, command output includes `Status:
37
- fallback-success` and `Fallback: fast/draft`. Treat that PDF as a recovery
38
- artifact, not a full normal compile result.
36
+ When fallback produces the PDF, command output includes:
37
+
38
+ ```text
39
+ Status:
40
+ fallback-success
41
+ Fallback: fast/draft
42
+ ```
43
+
44
+ Treat that PDF as a recovery artifact, not a full normal compile result.
39
45
 
40
46
  If both modes fail, inspect the compile output, fix the LaTeX source locally or
41
47
  on Overleaf, run `olcx sync --dry-run`, and compile again.
@@ -1,8 +1,11 @@
1
1
  # v1 Release Notes
2
2
 
3
- Release candidate status: Local release-candidate gates passed; stable release remains blocked until sanitized disposable real Overleaf E2E is recorded.
3
+ Release candidate status: RC cycle completed; stable v0.1.0 is approved after
4
+ local gates and sanitized disposable real Overleaf E2E verification.
4
5
 
5
- Stable release decision: Not approved for stable release until a sanitized disposable real Overleaf E2E pass is recorded.
6
+ Stable release decision: Approved for stable release
7
+
8
+ Sanitized real E2E artifact: gh-release://umiskky/overleaf-codex/v0.1.0/sanitized-real-e2e.md
6
9
 
7
10
  `olcx` is not an official Overleaf project and is not an official `olcli` project. It is not affiliated with, endorsed by, or maintained by Overleaf or `olcli`.
8
11
 
@@ -21,7 +24,7 @@ Stable release decision: Not approved for stable release until a sanitized dispo
21
24
 
22
25
  ## Final Gate Checklist
23
26
 
24
- These gates must pass before an RC can be considered locally verified:
27
+ These gates passed before stable v0.1.0 approval:
25
28
 
26
29
  ```bash
27
30
  npm run build
@@ -32,66 +35,50 @@ npm audit --audit-level=high
32
35
  npm pack --dry-run --json --ignore-scripts
33
36
  npm run prepublish:check
34
37
  npm run dev -- --help
38
+ npm run e2e:real
35
39
  ```
36
40
 
37
- `npm pack --dry-run --json --ignore-scripts` must match the `package.json` `files` allowlist and must not include local auth, local or secret JSON, environment files, `tmp/`, tests, scripts, generated PDFs, logs, `node_modules/`, or real E2E output.
41
+ `npm pack --dry-run --json --ignore-scripts` must match the `package.json`
42
+ `files` allowlist and must not include local auth, local or secret JSON,
43
+ environment files, `tmp/`, tests, scripts, generated PDFs, logs,
44
+ `node_modules/`, or real E2E output.
38
45
 
39
46
  ## npm Publishing Status
40
47
 
41
- Stable npm publish is blocked. The repository contains
42
- `.github/workflows/npm-publish.yml` for GitHub Actions Trusted Publishing through
43
- the protected `npm-publish` environment, but the current v1 notes do not approve
44
- a stable npm release.
48
+ Stable npm publishing is approved for v0.1.0. The repository contains
49
+ `.github/workflows/npm-publish.yml` for GitHub Actions Trusted Publishing
50
+ through the protected `npm-publish` environment.
45
51
 
46
52
  Release tags must match `package.json`:
47
53
 
48
54
  - `vX.Y.Z-rc.1` style prerelease versions must use GitHub prereleases and npm
49
55
  dist-tag `next`.
50
56
  - `vX.Y.Z` stable versions must use non-prerelease GitHub releases and npm
51
- dist-tag `latest` only after stable approval.
52
-
53
- Sanitized real E2E artifact: not recorded for this release candidate. This line
54
- is a placeholder for the future sanitized artifact reference and is not evidence
55
- of a completed real E2E run.
56
-
57
- Future stable approval must replace the placeholder with this concrete format:
58
-
59
- ```text
60
- Sanitized real E2E artifact: gh-release://umiskky/overleaf-codex/vX.Y.Z/sanitized-real-e2e.md
61
- ```
62
-
63
- The forced skip smoke is allowed but is not a stable substitute. It only proves
64
- the CI command is safely disabled for agent-safe release-candidate checks.
57
+ dist-tag `latest` after stable approval.
65
58
 
66
- ## Real Overleaf E2E Policy
59
+ ## Real Overleaf E2E Record
67
60
 
68
- The default release-candidate verification runs only the forced skip smoke:
69
-
70
- ```bash
71
- OLCX_E2E_IGNORE_LOCAL_ENV=1 OLCX_E2E_ENABLE_REAL=0 npm run test:e2e:real
72
- ```
73
-
74
- This command must not read `.env.e2e.local` and must not contact Overleaf.
75
-
76
- A stable release requires a separate disposable real Overleaf E2E pass. The recorded artifact must be sanitized and must state:
61
+ The stable release artifact states:
77
62
 
78
63
  - the command completed successfully against a disposable project;
79
- - no raw cookie, session value, account label, private project id, or private paper content is recorded;
80
- - the artifact path is a sanitized handoff or release-management artifact, not a packaged npm file.
64
+ - No raw cookie, session value, account label, private project id, or private paper content is recorded.
65
+ - the artifact path is a sanitized release-management artifact, not a packaged npm file.
81
66
 
82
67
  No raw real-E2E credentials, project IDs, cookies, or private paper contents may be committed.
83
68
 
69
+ The forced skip smoke is allowed but is not a stable substitute. It only proves
70
+ the CI command is safely disabled for agent-safe checks.
71
+
84
72
  ## Known limitations
85
73
 
86
74
  - Overleaf access depends on Overleaf private interfaces and may break when Overleaf changes its web or compile behavior.
87
75
  - Authentication uses a session cookie or environment-provided token-like value; v1 must not store Overleaf passwords.
88
76
  - JSON output mode is reserved for a future release.
89
77
  - v1 is a CLI release. A VS Code extension is intentionally out of scope.
90
- - Real E2E is gated because it needs disposable Overleaf credentials and a disposable Overleaf project.
78
+ - Real E2E requires disposable Overleaf credentials and a disposable Overleaf project.
91
79
 
92
80
  ## Post-v1 roadmap
93
81
 
94
- - Add a stable release process after sanitized disposable real E2E is recorded.
95
82
  - Improve structured output for automation.
96
83
  - Expand compatibility coverage as Overleaf behavior changes.
97
84
  - Consider a VS Code extension only after the CLI workflow is stable.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "overleaf-codex",
3
- "version": "0.1.0-rc.4",
3
+ "version": "0.1.0",
4
4
  "description": "Local Git, VS Code, and Codex workflow bridge for Overleaf-backed LaTeX compilation.",
5
5
  "type": "module",
6
6
  "repository": {