Commit Graph

  • 39e6e2f9e4 docs(settings): track E shipped — CLAUDE.md sections 18-20, README, changelog with the live COM smoke record Umut CANandClaude Opus 5 2026-09-22 13:38:14 +03:00
  • 18c7c69da6 fix(task-25): page_setup_truth and settings_pdf_mediabox_a3 move the sheet to ANSI B before proving A3 Umut CANandClaude Opus 5 2026-09-22 13:27:17 +03:00
  • c2942d3c94 bench: matrix v4 adds page_setup_truth; correctness suite grows to 32 with three settings checks (A/B vs v1.5.1: 26 -> 32 / 32) Umut CANandClaude Opus 5 2026-09-22 13:07:31 +03:00
  • 02dbb133b5 feat(settings): live COM smoke on AutoCAD 2026 builds the five .dwt twins and records the run Umut CANandClaude Opus 5 2026-09-22 13:07:31 +03:00
  • b54271f4ac fix(com): four live defects the settings smoke measured on AutoCAD 2026 — rejected calls after a document switch, typelib spelling of color/Lineweight, narrowed layer-state dictionary, layer 0 Freeze put Umut CANandClaude Opus 5 2026-09-22 13:07:31 +03:00
  • 0514f8f15d chore(templates): rebuild the five bundled DXFs on the merged tree (styles via dimstyle_create/textstyle_create, iso_a1_arch annotation scale 1:50) Umut CANandClaude Opus 5 2026-09-22 12:40:47 +03:00
  • d072df9fd4 fix(task-24a): apply_standard decides each unit write on a read taken after the dimension style switch Umut CANandClaude Opus 5 2026-09-22 12:37:33 +03:00
  • f7528b2fa5 fix(com): every system variable is read and written on the ActiveX document, not the Application Umut CANandClaude Opus 5 2026-09-22 12:25:11 +03:00
  • 70afd57831 feat(server): settings pack — 22 environment tools behind TOOL_PACKS, lean grows to 55, three groups, golden set +10 Umut CANandClaude Opus 5 2026-09-22 11:35:00 +03:00
  • 90c1194f7f merge: track-e group V Umut CANandClaude Opus 5 2026-09-22 11:18:03 +03:00
  • 8e05b5e8eb merge: track-e group P Umut CANandClaude Opus 5 2026-09-22 11:14:02 +03:00
  • 3278586c6e merge: track-e group C Umut CANandClaude Opus 5 2026-09-22 11:12:15 +03:00
  • 0a581a8da3 merge: track-e group S Umut CANandClaude Opus 5 2026-09-22 11:10:22 +03:00
  • 6b3477081c merge: track-e group H Umut CANandClaude Opus 5 2026-09-22 11:10:17 +03:00
  • d313da783a docs(analysis): Track A review backlog — every minor finding with a disposition Umut CANandClaude Opus 5 2026-09-22 11:08:04 +03:00
  • efcc8bbba1 fix(task-7): crossings test the exact arc, so a line through a jump's apex counts Umut CANandClaude Opus 5 2026-09-22 11:06:04 +03:00
  • d3ef7b45a2 feat(discovery): style golden queries; dimstyle/textstyle set_current and drawing_apply_standard join the lean profile Umut CANandClaude Opus 5 2026-09-22 10:51:21 +03:00
  • 9cb4bee587 fix(pid): existing line payloads are read tolerantly and crossings follow arcs, not chords Umut CANandClaude Opus 5 2026-09-21 23:05:54 +03:00
  • a5d166f365 feat(styles): drawing_apply_standard — ISO or ANSI styles, units and layers in one idempotent call Umut CANandClaude Opus 5 2026-09-21 22:49:12 +03:00
  • b458923e19 feat(templates): drawing_template_save on both engines — dwt_write is a declared capability Umut CANandClaude Opus 5 2026-09-21 22:48:31 +03:00
  • cfb5d5082c fix(task-6): the reader no longer hands a signal line the neighbouring pipe's label Umut CANandClaude Opus 5 2026-09-21 22:44:35 +03:00
  • 021a4eb43d fix(task-11): dimensions_using_style is one filtered selection set, not a per-entity COM walk Umut CANandClaude Opus 5 2026-09-21 22:39:08 +03:00
  • 17f7228fd6 fix(task-19): a .dxf template really reaches the live seat; the fallback dimvars land on Standard Umut CANandClaude Opus 5 2026-09-21 22:31:44 +03:00
  • 3c0babfef1 fix(pid): signal lines carry no fabricated number; a bubble exits towards the first waypoint Umut CANandClaude Opus 5 2026-09-21 22:24:03 +03:00
  • 03a5067d83 fix(task-11): live text styles write TrueType by typeface, refuse missing fonts and arrowhead blocks before any write, un-narrow the dimension walker Umut CANandClaude Opus 5 2026-09-21 22:17:30 +03:00
  • dda11755cf fix(task-16): custom keys follow AutoCAD's simple case compare, and on COM AutoCAD routes the write Umut CANandClaude Opus 5 2026-09-21 22:04:22 +03:00
  • a76d9e08a3 feat(templates): five bundled templates built by the server's own tools; drawing_new(template=name) Umut CANandClaude Opus 5 2026-09-21 22:03:41 +03:00
  • 86c5d6ad65 fix(task-18): the headless Model plot is doc.modelspace(), not the current tab Umut CANandClaude Opus 5 2026-09-21 21:47:05 +03:00
  • 2e101b95e2 fix(task-5): a rollback that fails after a cancellation no longer kills the session, and the COM rollback goes back to an UNDO Mark instead of prompting Umut CANandClaude Opus 5 2026-09-21 21:46:08 +03:00
  • a60f801205 feat(server): SECTION 18 styles — dimstyle/textstyle/mleaderstyle tools with DIMSTYLE/STYLE/MLEADERSTYLE aliases Umut CANandClaude Opus 5 2026-09-21 21:44:02 +03:00
  • 4fe2d963c0 fix(task-16): custom keys mirror AutoCAD's full AddCustomInfo rule, deletes are exempt, keys match case-insensitively Umut CANandClaude Opus 5 2026-09-21 21:37:44 +03:00
  • f6951e2597 fix(task-18): the COM plot is foreground, by layout name, and confirmed on disk; plot_style_list reads PrinterStyleSheetPath Umut CANandClaude Opus 5 2026-09-21 21:36:07 +03:00
  • 2052915f34 fix(task-23): user_select reports the picked point in WCS — GetEntity answers in the current UCS, so translate acUCS→acWorld before returning Umut CANandClaude Opus 5 2026-09-21 21:34:26 +03:00
  • 266b6fb838 fix(task-10): un-narrow the ACAD_MLEADERSTYLE dictionary route so mleaderstyle_list/create work on the live engine Umut CANandClaude Opus 5 2026-09-21 18:54:43 +03:00
  • 2b9791fbcd fix(task-16): custom properties refuse pre-R2004 headlessly, line breaks, and AutoCAD's invalid keys before any write Umut CANandClaude Opus 5 2026-09-21 18:45:02 +03:00
  • f25421709f feat(pagesetup): SECTION 19 — page_setup_list/apply, plot_style_list, batch_plot with /MediaBox read-back Umut CANandClaude Opus 5 2026-09-21 18:39:34 +03:00
  • b83a74e969 feat(environment): system_launch, preference whitelist and operator prompts on COM; declared refusals headlessly Umut CANandClaude Opus 5 2026-09-21 18:34:09 +03:00
  • 32821c6410 fix(task-5): pid_from_spec shields its rollback so a real client cancellation rolls the sheet back on both engines Umut CANandClaude Opus 5 2026-09-21 17:01:17 +03:00
  • 10a7372ce7 feat(settings): drawing_properties_get/set — SummaryInfo on COM, custom properties on both engines Umut CANandClaude Opus 5 2026-09-21 16:59:19 +03:00
  • 54bbf72312 fix(task-17): an inch sheet's fit reports paper units per drawing unit, not the mm ratio times 25.4 Umut CANandClaude Opus 5 2026-09-21 16:55:05 +03:00
  • e204f227b4 fix(task-10): $DIMBLK header carries the canonical arrowhead name; MLeaderStyle is authored on COM through the ACAD_MLEADERSTYLE dictionary Umut CANandClaude Opus 5 2026-09-21 16:48:20 +03:00
  • c7dd72410a fix(task-22): live named views read and restore the display (VIEWCTR/VIEWSIZE, ZOOM Window), UCS sysvars come from the document, and a frozen current layer is thawed before restore makes it current Umut CANandClaude Opus 5 2026-09-21 16:48:19 +03:00
  • ac1fba80b7 fix(pid): pid_from_spec refuses non-finite numbers by path and rolls back on any interruption Umut CANandClaude Opus 5 2026-09-18 10:51:45 +03:00
  • a51c1b6e14 fix(task-2): a moved multi-line attribute keeps one placement and its whole value on the headless engine Umut CANandClaude Opus 5 2026-09-18 10:12:56 +03:00
  • bbc9aeeb63 fix(task-21): registry identity is the file (st_dev/st_ino), not its spelling — a hard link, junction or case variant reloads instead of registering twice Umut CANandClaude Opus 5 2026-09-18 10:08:12 +03:00
  • b464bcdaf5 fix(task-4): block_define dedupes requested layers case-insensitively so one layer in two spellings is created and reported once Umut CANandClaude Opus 5 2026-09-18 00:23:16 +03:00
  • 375c9f4c70 fix(blocks): block_define refuses a non-finite base point and a missing layer unless create_layers Umut CANandClaude Opus 5 2026-09-18 00:11:38 +03:00
  • 7f79497928 fix(blocks): attribute values are validated before any write; null/bool/objects refused by tag Umut CANandClaude Opus 5 2026-09-17 23:59:17 +03:00
  • 31daac022f fix(task-21): layout_create, layout_set_current and viewport_create mark the headless document dirty — the close refusal and the saved row now see them, and each gets an undo step Umut CANandClaude Opus 5 2026-09-17 23:37:21 +03:00
  • b753a12bb6 fix(task-2): find_replace rewrites every surface of a multi-line attribute; COM explode propagates a failing read and undoes a failed burst Umut CANandClaude Opus 5 2026-09-17 23:32:56 +03:00
  • b1c93cdd2a fix(task-21): the applied ISO layer set is per document — it follows document_activate on ezdxf and is cleared on every document switch on both engines Umut CANandClaude Opus 5 2026-09-17 23:17:39 +03:00
  • aeb27c252b fix(task-17): the headless page setup writes the scale AutoCAD plots by, and reads the code 75 AutoCAD writes Umut CANandClaude Opus 5 2026-09-17 15:29:47 +03:00
  • 5f33613460 fix(task-2): COM burst MTEXT anchors after the attachment; headless multi-line attribute values persist below R2018 Umut CANandClaude Opus 5 2026-09-17 15:24:44 +03:00
  • 75c13196b9 fix(task-15): angle sysvars are radians on both engines; OSMODE is registry-saved and refused headlessly Umut CANandClaude Opus 5 2026-09-17 15:20:02 +03:00
  • 64cec37cc7 fix(task-22): ucs_list decides "world" from the frame, not the empty name — an unnamed UCS is its own current row Umut CANandClaude Opus 5 2026-09-17 15:10:00 +03:00
  • e7dafb85ab fix(task-2): headless block_set_attributes rewrites the embedded MTEXT; block_explode refuses members ezdxf would silently drop Umut CANandClaude Opus 5 2026-09-17 15:02:44 +03:00
  • f2386a9fdd fix(task-17): a rotated sheet's margins turn with it, and a paper-units move is named in changed and warnings Umut CANandClaude Opus 5 2026-09-17 14:58:17 +03:00
  • 125a8ed3b8 feat(settings): SYSVAR_CATALOG + system_variable_describe; system_set_variable refuses out-of-range values Umut CANandClaude Opus 5 2026-09-17 14:56:25 +03:00
  • 4d246b17b8 fix(task-9): DIMDSEP refuses control characters and code points above the 16-bit DXF group Umut CANandClaude Opus 5 2026-09-17 14:52:57 +03:00
  • 6cb7a13c66 fix(task-2): block_explode bursts multi-line attributes as MTEXT and refuses xrefs and MINSERTs on both engines Umut CANandClaude Opus 5 2026-09-17 10:16:26 +03:00
  • f3ff703144 fix(task-14): refuse CANNOSCALE on an R12 file headlessly instead of losing it at save Umut CANandClaude Opus 5 2026-09-17 10:14:05 +03:00
  • 4bf686e943 fix(task-22): headless named views are written as plan views and restore carries the orientation Umut CANandClaude Opus 5 2026-09-17 10:09:14 +03:00
  • 4a6591843f fix(task-17): the headless sheet export plots at the layout's scale and plot area, and reports both Umut CANandClaude Opus 5 2026-09-17 10:01:49 +03:00
  • 2ee18727cd fix(task-10): user dimstyles survive DXF round trips, purge keeps style references, Restore writes every DIM* variable Umut CANandClaude Opus 5 2026-09-17 10:00:17 +03:00
  • b12fa854c1 fix(task-2): block_explode writes Normal as a VARIANT and keeps constant attributes as TEXT Umut CANandClaude Opus 5 2026-09-17 09:52:58 +03:00
  • 909bc47e5e fix(task-14): seed AutoCAD's default scale list before adding an annotation scale headlessly Umut CANandClaude Opus 5 2026-09-17 09:49:38 +03:00
  • 33604c4408 fix(task-14): read and write system variables on the ActiveX document, not the Application Umut CANandClaude Opus 5 2026-09-17 09:49:25 +03:00
  • dcc8f07bf4 feat(environment): portable layer states, named views and UCS on both engines Umut CANandClaude Opus 5 2026-09-17 09:47:39 +03:00
  • 376dc812a5 fix(task-17): COM page setup reads mm as mm, 1:5 takes the custom route, and a refused apply puts the media back Umut CANandClaude Opus 5 2026-09-17 09:42:13 +03:00
  • cc3bd4876b feat(styles): dimension, text and multileader styles on both engines; $DIMSTYLE/$TEXTSTYLE reach new entities headlessly Umut CANandClaude Opus 5 2026-09-17 09:39:16 +03:00
  • 415de73137 fix(task-2): COM block_explode carries the ATTRIB frame and style onto the TEXT Umut CANandClaude Opus 5 2026-09-16 22:01:08 +03:00
  • 20ca39d28a fix(task-17): a layout plot never writes CenterPlot, and a refused COM write unwinds every landed one Umut CANandClaude Opus 5 2026-09-16 21:55:14 +03:00
  • 2e2cd2773d fix(task-9): signed DIMTP/DIMTM, read-side arrowhead spelling, and the Task 10 handshake Umut CANandClaude Opus 5 2026-09-16 21:52:01 +03:00
  • 2805697d16 fix(task-21): registry identity is normcase(abspath) everywhere — a case variant reloads instead of registering twice, resolves instead of being refused, and drawing_close(save) checks the file it writes Umut CANandClaude Opus 5 2026-09-16 21:51:16 +03:00
  • df2ab91900 fix(task-14): return the plain point list from COM system_set_variable, not the VARIANT Umut CANandClaude Opus 5 2026-09-16 21:48:09 +03:00
  • 13851a3d20 fix(task-2): block_explode keeps the ATTRIB frame and writes into the owner layout Umut CANandClaude Opus 5 2026-09-16 21:43:08 +03:00
  • aeab950d2d fix(task-21): one registry entry per file — save/save_as refuse a path another document holds; resolver refuses a shared path instead of guessing Umut CANandClaude Opus 5 2026-09-16 21:36:44 +03:00
  • 827719fdd0 fix(task-9): finite text-style numbers, one symbol-name rule, canonical DIMBLK arrowheads Umut CANandClaude Opus 5 2026-09-16 21:33:05 +03:00
  • e8e7e3c524 fix(task-14): match ACAD_SCALELIST entries by their group-300 name, not the dictionary key Umut CANandClaude Opus 5 2026-09-16 21:31:13 +03:00
  • 70f18efb4b fix(task-17): rotated sheets (plot_rotation 1/3) render the whole page instead of a 0.707-scaled, clipped window Umut CANandClaude Opus 5 2026-09-16 21:30:52 +03:00
  • 19610b8f05 fix(blocks): block_explode keeps attribute text as TEXT (BURST rule) on both engines Umut CANandClaude Opus 5 2026-09-16 21:26:27 +03:00
  • 174fb8010c feat(environment): multi-document on both engines — ezdxf document registry, document_list/activate/close, drawing_close folded in Umut CANandClaude Opus 5 2026-09-16 21:20:21 +03:00
  • df39b21f2e feat(settings): drawing_settings gains limits, grid/snap, ortho/polar, psltscale, annotation scale, unit formats and current styles Umut CANandClaude Opus 5 2026-09-16 21:14:31 +03:00
  • f46fda10cb feat(pagesetup): page_setup_list/apply on both engines — the PDF's own /MediaBox is the evidence Umut CANandClaude Opus 5 2026-09-16 21:13:48 +03:00
  • b9510bf377 fix(blocks): entity_create_block_ref refuses an undefined or layout block before writing, on both engines Umut CANandClaude Opus 5 2026-09-16 21:13:44 +03:00
  • 54fac471a9 feat(standards): ISO-25 and ANSI dimension, text and leader style presets as pinned data Umut CANandClaude Opus 5 2026-09-16 21:11:26 +03:00
  • 49fc6ac6a5 docs(plan): demote the embedded Track A backlog headings so task lookup by '### Task N:' is unambiguous Umut CANandClaude Opus 5 2026-09-16 21:07:42 +03:00
  • 4bd651b159 docs: Track E (settings and environment) implementation plan — 26 TDD tasks in five worktree groups Umut CANandClaude Opus 5 2026-09-16 21:07:26 +03:00
  • ab258d1383 docs: Track E (settings and environment) design spec Umut CANandClaude Opus 5 2026-09-16 15:22:01 +03:00
  • 2be5e4180d docs(pid): track A shipped — CLAUDE.md, README, changelog with the live COM smoke record Umut CANandClaude Opus 5 2026-09-16 13:34:06 +03:00
  • 8d9c444b76 bench: matrix v4 adds pid_roundtrip; correctness suite grows to 29 with three P&ID checks Umut CANandClaude Opus 5 2026-09-16 13:06:52 +03:00
  • e911a3a8fb feat(server): TOOL_PACKS — advertise only the vertical packs a client uses Umut CANandClaude Opus 5 2026-09-16 12:55:38 +03:00
  • 42154e025b fix(task-19): the contact-sheet test fails when the symbols are missing Umut CANandClaude Opus 5 2026-09-16 12:42:54 +03:00
  • c441609254 feat(pid): pid_tag_parse, catalogue and ISA-5.1 resources, prompt rewritten onto the tools Umut CANandClaude Opus 5 2026-09-16 12:29:04 +03:00
  • d80ae17411 feat(pid): pid_from_spec — a whole P&ID in one transaction, graph and critique returned Umut CANandClaude Opus 5 2026-09-16 12:10:14 +03:00
  • 6aded6bbf0 fix(task-16): hints only name ports pid_line_draw accepts; signal_unknown is judged as a signal line Umut CANandClaude Opus 5 2026-09-16 12:01:37 +03:00
  • 3c4fbf6c42 fix(task-16): a P&ID line ending on an unknown_block is dangling — a 0.3 guess suppresses no finding either Umut CANandClaude Opus 5 2026-09-16 11:51:22 +03:00
  • 715c8efca4 fix(task-16): P&ID focuses score evidence, never a 0.3 touch guess or an inferred port kind Umut CANandClaude Opus 5 2026-09-16 11:35:35 +03:00
  • b4c1423c8e feat(pid): six P&ID critique focuses join drawing_finalize; plan/preflight flag a P&ID intent on the wrong layer set Umut CANandClaude Opus 5 2026-09-16 11:17:55 +03:00
  • 346eac4ac6 fix(task-15): instrument connected_to follows junction ends and never names its own wire Umut CANandClaude Opus 5 2026-09-16 11:02:11 +03:00